curl -s https://api.example.com/v1/chat -d '{"temperature":0,"seed":42}'

同一提示词连跑 5 次,5 个答案的字段名都不一样,结构化解析失败 2 次。先别急着动参数,把报错原文和时间点记下来,顺序反了容易白折腾。

原因不复杂,温度 0.9 让采样空间变大,输出用词和格式都随机。用在需要固定结构的抽取任务上,稳定性没法保证。

「温度参数不稳定」排查到最后往往是很小的一处差异,前面那些复杂猜测可以先放一放。改完隔一天再看一次,当场正常不代表能稳住。

测试环境和线上的差别,往往就在版本号和那几行被忽略的配置上。线上出问题先对时间点,跟发布、备份、任务执行的时刻排一排,能省掉一半功夫。

日志级别临时调高可以,记得改回去,长期开着既占磁盘又掩盖真问题。权限不要一口气开到最大,先加到够用再往上试,范围小才好收。

处理上按这个顺序:抽取类任务把 temperature 降到 0;配合 top_p 1 和固定 seed;输出用 json schema 约束;用 20 条样本跑一致性对比。

改完只确认一件事:同一输入 20 次输出结构一致 解析失败次数为 0。

作者 9823189