万次元AI
get key
api

思考模型的 reasoning_content:为什么你的前端会丢内容

思维链不在 content 里。把它和正文拼在一起会让回答重复,忽略它会丢掉推理过程——两个都是常见 bug。

调用带推理能力的模型时,响应里会多出 reasoning_content 字段,它装的是模型的思维链。content 里才是最终回答。两者是分开的。

example
{
  "choices": [{
    "message": {
      "role": "assistant",
      "content": "我是 Kimi,由月之暗面开发的 AI 助手。",
      "reasoning_content": "We need answer in Chinese likely. Need consider identity…"
    }
  }]
}

两种常见错误

一是把两个字段拼在一起显示。结果是推理过程和最终答案连成一段,读者要自己找哪句是答案,重复感极强。二是完全忽略 reasoning_content,只渲染 content。这在调试时很有用——你看不到模型为什么这么答,出了问题无从下手。

建议的渲染方式

默认折叠 reasoning_content,用一个可展开的区域承载,让它既不干扰阅读又随时可查。流式响应时两者是分开增量到达的,UI 上不要把它们塞进同一个文本节点,否则流式过程中会看到内容错位。

另外注意 usage 里的 reasoning_tokens:它计入了 completion_tokens。如果你按 completion_tokens 估费,会以为思考模型比非思考模型贵一点,实际上可能贵好几倍。