选择合适的模型
选模型是三个输入的函数:你的内存预算、你的用例、你的质量底线。基准只影响第三个;前两个是算术。优化任何一个而忽略其余,就是人们如何最终得到一个基准漂亮、却干不了周二实际任务的模型。
三个输入
- 预算——GPU 的显存、Apple Silicon 的统一内存。经验法则:Q4_K_M 权重 ≈ 每十亿参数 0.6 GB,再加 KV 缓存和开销——完整方法在 显存计算。
- 用例——模型每天必须做什么;下文分解。
- 质量底线——低于它输出对你就是废物的水平。写作伙伴比输出必须能编译的代码生成器更能容忍泔水。
预算也封顶上下文:小卡上的超大上下文计划只是把 KV 缓存压力换成权重质量。一切都在交换。
算例,16 GB GPU → OS 抽成后 ~13.5 GB 可用:带充裕上下文的 14B Q4_K_M(~8.5 GB 权重),或带超大上下文的 8B Q6_K(~6.6 GB)。都装得下;用例决定选谁。
从用例出发
- 通用聊天与写作——中等尺寸 instruct(8–14B 级)Q5–Q6 覆盖多数人。过了那档,风格偏好比基准分更重要。
- 编程助手——偏爱强编码血统(Qwen Coder、DeepSeek-Coder 后裔)并保持长上下文:价值在于带着仓库上下文补全文件中段。真实代码也比聊天更早惩罚更糙的量化。
- 长文档——验证宣称的上下文是可用的上下文。许多 "128k" 模型对前后关注良好、把中间搅成糊。先测再信;见下面协议。
- 韩语 / 多语种——Qwen 第一、Gemma 第二。两者都体面地处理韩语;英语优先家族在语法和敬语上露出裂缝。细节在 模型家族。
- 重推理工作——偏爱推理调优检查点(Qwen3 思考模式、R1 蒸馏);它们在数学和规划上用延迟换正确性,而量化对它们伤害更大——保持高量化。
- 廉价批量抽取——带 结构化输出 的小 instruct(1.5–3B)以每文档数倍的成本优势胜过大模型。别把 8B 花在正则形状的工作上。
- 智能体与工具使用——真正的要求是指令遵循和格式纪律,不是原始智商。实践中意味着 ≥7–9B 级、能负担则更高:一个格式错误的工具调用能毁掉整条链。见 智能体。
不上当地读基准
| 信号 | 测什么 | 陷阱 |
|---|---|---|
| LMArena Elo | 头对头人类偏好投票 | 风格偏差——更长、排版更好、更自信的回答无论对错都赢得投票 |
| MMLU / GPQA | 多选知识 / 硬科学 | 顶部接近饱和;预训练污染抬高数字 |
| HumanEval 及朋友 | 固定问题上的代码生成 | 老题目集数年前泄入训练数据;偏爱新鲜题目集(LiveCodeBench 式) |
| 厂商自报分数 | 厂商自己的评估运行 | 多中选一采样、樱桃挑选的提示词、调过的系统提示词 |
| 微调作者的图表 | 某微调的卖点 | 小评估过拟合——调到一个数字动为止、报告不带方差 |
保持诚实的习惯:偏爱同一评价工具上的相对差值胜过绝对数字;把 2 分以内的差距当噪声;不信任没有可复现设置的声明;读围绕一个基准的污染讨论,那常常比排行榜本身更有信息量。
最便宜的防御是三角验证:一个真正好的模型在独立信号上都显现——实验室评估、竞技场、社区帖、和你自己的提示词集。当信号冲突时,信最接近你工作负载的那些。你的 20 条提示词就你的目的而言排在所有排行榜之上,因为它们采样你的真实分布。
本地社区信号
基准跑在实验室的提示词上。你更好的信号是那些正在跑你即将下载的同一个文件的人:
- Hugging Face 趋势和下载量——慢变的流行度,长期操纵成本高。
- 社区量化者(bartowski、mradermacher)沿完整阶梯量化了哪些发布——不错的重要性过滤器。
- r/LocalLLaMA 帖——搜模型名、按时间排序;反复出现的赞与抱怨是真的。此处“截至本文写作”要加倍适用:本地共识的半衰期以周计。
- 特定量化的报告——Q4 下模型 X 的质量与 FP16 下的模型 X 是不同问题,也都不同于实验室报告的。
推荐矩阵
截至本文写作、按显存档位的起点,假设大致 Q4_K_M 量和中等上下文——在 GPU 档位 交叉核对硬件:
| 显存 | 通用聊天 | 编程 | 韩语 / 多语种 | 智能体 / 工具 |
|---|---|---|---|---|
| 8 GB | Qwen3 4B / Llama 3.1 8B | Qwen Coder 7B、短上下文 | Qwen3 4B / Gemma 3 4B | 此档位勉强 |
| 12 GB | Qwen3 8B / Gemma 3 12B | Qwen Coder 7B、16k 上下文 | Qwen3 8B | Qwen3 8B |
| 16–24 GB | Gemma 3 27B / Qwen3 14B | Qwen Coder 14B | Qwen3 14B | Qwen3 14B / 32B |
| 24 GB+ / 48 GB | Qwen3 30B-A3B MoE / Mistral Small 24B | Qwen Coder 32B / DeepSeek-Coder-V2-Lite | Qwen3 32B | R1-Distill-Qwen-32B(思考) |
把矩阵当搜索起点,不当福音——领域每季度重排。任何档位内稳定的建议:偏爱更新世代、并在 Q4 底线以上偏爱大尺寸 Q4 胜过小尺寸 Q8(低于它量化损伤获胜——见 量化)。
再一条稳定规则:两个模型打平时,选许可证更友好的。Apache-2.0 和 MIT 从不回头咬人;社区许可证有时会——见 开放 vs 闭源。
先试后买
纪律严明的 30 分钟胜过一周的感觉流:
- 建一个 10–20 条的固定提示词集——你真实的最难案例:一封要改写的韩语邮件、一个要修的坏 diff、一份埋着一个可核对事实的文档摘要。
- 每个候选跑同样的提示词、同样的采样设置、同样的量化级别。一次只变一个东西。
- 盲测 A/B:打乱输出、在不知道哪个模型产出哪个的情况下评判。一张表格加一个朋友可行;你当前最强的模型当裁判也行。
- 专门检查韩语:敬语一致性(존댓말/반말)、自然助词、无英语式直译。“会韩语”的模型常写穿着韩语外衣的翻译英语。
- 检查长上下文:把一个事实埋在长粘贴 70% 深处然后问它。那一个测试淘汰的 "128k" 模型比任何排行榜都多。
- 温度 0 重跑平局——采样噪声冒充模型差异的频率比任何人承认的都高。
评价工具可以是针对运行中 llama-server 的四行 shell:
while IFS= read -r prompt; do
curl -s http://localhost:8080/v1/chat/completions \
-H 'Content-Type: application/json' \
-d '{"messages":[{"role":"user","content":"'"$prompt"'"}],"temperature":0.7}' \
>> out-model-a.jsonl
done < prompts.txt
同一循环、每模型一个输出文件;然后把标签藏起来并排读。
闭源 API 何时仍然赢
本地是为了控制、隐私和规模化的边际成本——不是为了前沿能力。截至本文写作,最强闭源 API 在难推理和长智能体链上仍然胜过最强开放权重,且零设置:没有显存、没有引擎调优、没有量化数学。
关于成本,对冲过的数字:硬件存在之后本地 8B Q4 每词元实际上免费;前沿 API 按每百万词元几美元收费。爱好量级两者都约等于零;每天数百万词元时,本地仅凭价格就赢。能力差距——不是价格——是留着一把 API 钥匙的诚实理由。
一个耐用的模式是混合:本地模型当默认、API 处理难住它的那几条提示词。在 开放 vs 闭源 里有意识地权衡。