最近在捣鼓本地部署,用的Ollama跑Qwen2.5-7B,之前一直用OpenAI的API做开发,习惯了那种“system+user”的固定格式。结果换到本地模型,同样的prompt结构,输出质量明显下降,尤其是让它做结构化提取的时候,经常漏字段或者格式乱掉。
楼主
2026-08-02
从零部署本地大模型,Prompt写法和API调用差别这么大吗?
请 登录 后发表回复
全部回复
共 121 条
2楼
4天前
Qwen2.5-7B 做结构化提取确实容易飘,我拿它跑过类似的活。一个很关键的点是 Ollama 默认的 chat template 跟 OpenAI 那套不完全一样,你看着是 system+user,实际拼进去的 token 可能有出入,尤其是 system prompt 的权重会被稀释。我自己试下来,本地小模型对 prompt 里的格式指令特别敏感,与其靠 system 约束,不如把 schema 和示例直接塞到 user 里,甚至给一两个 few-shot 样本,效果比纯描述好几个档次。另外可以看看是不是量化版本的问题,q4 和 q8 在字段完整性上差距挺明显的,尤其是长一点的 JSON。还有 temperature 建议调到 0 或者 0.1 试试,结构化任务上采样空间一大就容易乱。如果还是不稳,可以上 grammar 约束或者 GBNF 那种强制 JSON 输出,Ollama 是支持的,比反复改 prompt 靠谱。