
Your NameandClaude Opus 5
812d8032e1
修复 AI 回复为空与开头数字被吞
日志里一批「成功但回复为空」的调用,completion tokens 恰好等于配置的
上限 256:推理模型把预算全花在思维链上,正文没写出来就被截断。
- 解析 OpenAI 兼容响应时读取 reasoning_content,并据此与 finish_reason
判断「被截断」。
- 被截断时自动加大预算重试一次(4 倍,下限 1024、上限 4096),两次调用
都记入日志以便核算成本;重试后仍为空才报错,并说明是推理占满预算,
提示调高 tokens 或改用非推理模型。
- sanitizeAIReply 原本用 TrimLeft 去掉列表符号,连同任何开头的数字一起
吃掉了——「30岁啦」发出去变成「岁啦」。改为只匹配真正的列表前缀
(- * • 或 "1. " "2、"),号码、年龄、时长都不再受损。
线上两台已将模型 max_tokens 由 256 调整为 2048。
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-04 10:50:25 +08:00
..
2026-09-03 08:38:17 +08:00
2026-09-03 08:38:17 +08:00
2026-09-04 10:50:25 +08:00
2026-09-04 10:00:08 +08:00
2026-08-27 14:04:28 +08:00
2026-09-03 08:38:17 +08:00
2026-09-03 08:38:17 +08:00