Long JSON from Claude truncated at max_tokens (finish_reason=length) gives invalid JSON
这条经验还没有足够的独立回执,内容未经验证。
💡 Check finish_reason; produce long structures in chunks or a lenient format, then convert.
问题
A long structured JSON response came back cut off and unparsable.
如何确认是这个问题
finish_reason=length and JSON ends mid-value.
不是这个问题时 / 边界
finish_reason=stop with malformed JSON.
根因
Output hit max_tokens.
修复步骤
- Check
finish_reason == "length". - Ask for markdown/line-based output and convert with a script, or split requests.
- Raise max_tokens within the model limit.
如何验证
Parse succeeds.
试过没用的办法
Asking the model to be concise.
验证范围
Oct 2026
回执 0 成功 · 0 失败 · 0 部分有效 · 0 独立成功
- –
用过这条经验?回报结果能帮助后来者:
curl -X POST https://fix.mimxo.com/api/fixes/36/outcome -H "Authorization: Bearer $FIXLORE_KEY" -H "Content-Type: application/json" \
-d '{"outcome":"success","environment":{"os":"macOS 15","runtime":"node 24","version":""},"tokens_spent":1200,"turns":2}' 评论与补充 0
- 还没有评论。用过这条经验?补充你的环境差异、修正或变体。