ollama llama3.1 中文

模型与算力

帮中文选型者判断 Ollama 上的 Llama3.1 该不该用:先做小样本中文自测,再按量化档位、显存和场景决定留还是换。

你在 Ollama 里拉了个 Llama3.1,一跑中文发现回答像翻译腔、标点古怪、专业词翻错,于是纠结到底是提示词没写对还是这模型中文就不行。这篇不给结论,给一套自己动手的判断流程:用哪几个小测试看出中文短板、什么场景下这些短板可以忍、什么情况下建议直接换中文更强的模型。

你在 Ollama 里拉了个 Llama3.1,一跑中文,回答像翻译腔,标点看着别扭,专业词还翻错。这时候最容易犯的错是直接下结论:要么认定模型不行,要么猛调提示词。更靠谱的做法是先分清是哪一类毛病,再用几条小测试自己跑一遍,最后按量化档位和使用场景决定留还是换。这篇给的就是这套判断流程。

注意,下面不给「这模型中文到底行不行」的定论,因为答案取决于你的量化档位、显存、任务类型。同样一个模型,低比特量化下和全精度下跑中文,表现可能像两个模型。所以重点放在你自己怎么测、怎么对照、什么时候该止步。

先搞清楚「中文不好」是哪种不好

把「中文不好」拆开看,至少有三类。第一类是语感不自然,读起来像外语直译,标点和量词奇怪。第二类是事实与术语错,人名机构名翻错,专业词用错。第三类是指令跟随跑偏,你让它输出表格它给你写段落。这三类成因不同,修法也不一样,混在一起讨论只会得出「它就是不行」这种没用的结论。

语感类问题
多和中文语料占比有关,靠提示词很难根治,改问法通常只能缓解
术语与事实错
可以用术语表、参考资料、检索增强来兜,值得先试
指令跟随跑偏
先查提示词结构和上下文长度,别急着怪模型能力

判断口径很简单:同一条中文提示连着跑三遍,看错误是不是稳定复现。稳定复现的大概率是模型能力边界,偶发的那种通常和采样参数、上下文挤占有关,调参数比换模型便宜得多。想做横向对照,可以到 /benchmarks 看测评榜单,再按 /rankings 的可信度口径理解差距怎么来的。

中文自测清单:十分钟跑完四条

不用搞复杂评测集,四类任务足够看出短板。每条任务都换一种问法再跑一次,这是为了分开「模型不会」和「提示词没写对」。换量化档位或换模型时,重跑同一批提示,结果才有可比性。

  1. 中英互译一段行业表述挑一段你熟悉领域的中文,让它翻成英文再翻回来,看术语有没有走样、语序是否自然
  2. 写一封客服回复给一个投诉场景,让它写中文回复,重点看语气是否得体、有没有翻译腔
  3. 总结一份中文长文档贴一段较长的中文材料做摘要,看它有没有漏要点、有没有编造没出现的信息
  4. 按格式输出表格要求输出固定列数的中文表格,看它是否听话,还是夹带解释性段落

记录方式建议只记三档:能用、要改、不能用,每档后面补一句原因。别记感觉,几天后回看时感觉靠不住,一句「术语翻错两处」才能帮你做决定。要是对自己的判断没底,可以拿 /tools/quality-check 和 /crowd-radar 的口径做参照。

量化档位和显存:中文表现最容易被它拖下去

很多人以为自己测的是 Llama3.1,其实测的是某个低比特量化版本。中文对字词分布和标点更敏感,压缩之后更容易出现错字、串词、掉标点,英文任务反而不太看得出来。所以同一台机器上,先把高一档量化跑一遍,再用上面的清单跑低一档,是判断「中文差」是不是量化造成的最直接办法。

现象优先怀疑先做的动作
中文错字、掉标点明显量化档位压得太低换高一档量化重跑同一批提示
长文总结漏要点上下文长度或截断设置缩小输入长度再测一次
回答中途跑题采样参数或并发挤占单请求跑,降低随机性
术语时对时错提示里缺术语约束加术语表或参考资料再测

显存和并发别凭感觉估。按参数量、量化位宽、上下文长度三项去算,去 /models/deploy 和 /compute/sizing 按自己的卡核一遍。卡不够的时候,调整顺序建议是:先降上下文,再换更小的模型,最后才降量化档。反过来做通常最亏,因为中文受害最重。

什么场景留着用,什么场景换成中文更强的模型

留还是换,看的是任务对中文质量有多敏感,而不是看别人说这模型强不强。判断标准放在下面这张表里,自己对照着填。不适用的情况也说清楚:如果你只是内部草稿、机器翻译后校对,容忍度高,留着用问题不大;如果是对外交付的中文内容,容忍度基本为零。

场景建议理由
英文为主、中文顺带留着用中文短板不构成主要瓶颈
代码注释、内部草稿留着用措辞不敏感,改起来成本低
抽取、分类、打标留着用对语感要求低,看结果准不准
中文文案、营销内容建议换翻译腔和术语错直接影响交付
中文合同、合规文本建议换术语和事实容错空间几乎为零
中文客服、口语对话建议换语气不地道用户能立刻察觉
  • 别一次性全换:常见做法是英文链路继续用 Llama3.1,中文链路单独接一个中文更强的模型
  • 接口层先抽象出来,模型可切换,别把模型名写死在业务代码里
  • 换之前用同一批自测提示跑新旧模型,拿到对照再切
  • 保留旧模型的回退开关,避免新模型在边缘场景翻车时没了退路
  • 迁移和回退的方法可以参考站内的迁移相关页面,别自己拍脑袋

最后提醒一句:模型选型不是一次性决定,量化档位、上下文设置、提示词结构都会左右中文表现。定期用同一批提示重跑一次,比记住任何结论都有用。需要看当时的中转站价格和可用性,到 /price-watch 核对数字。

下一步把你自己的四条中文提示跑一遍,顺手记录三档结论,再回头决定是调参、换量化还是换模型。要对比不同模型的实测速度,可以直接去站内测速页跑一轮。

常见问题

Ollama 里跑 Llama3.1,中文差是提示词的问题吗?

一部分是。加一句「用简体中文回答、不要直译」能改善语感,但改不了训练语料里中文占比低带来的底子问题。建议先按上面四条任务自测,同一提示改三版还救不回来,就别在提示词上继续耗,直接考虑换中文更强的模型。

量化到低比特之后中文是不是差很多?

通常比英文掉得更明显,错字、串词和标点混乱会先出现。稳妥做法是先跑高一档量化做基线,再跑低一档对比同一批中文任务;如果只是塞进显存,优先降上下文长度或换小一号的模型,具体能跑多大去 /models/deploy 按自己的卡算。

同一个 Ollama 服务里能中文英文用不同模型吗?

可以。常见做法是英文任务走 Llama3.1,中文链路单独拉一个中文更强的模型,在应用层按语言或按任务路由。要注意两边的接口参数、上下文长度和提示词模板不一样,切换前把回退路径留好,别把线上链路一次切干净。

本文依据各平台公开文档与官方公告整理,只做中文归纳;具体做法、参数与限制以官方文档为准。