Skip to content

prompt is too long ​

text
prompt is too long: the request exceeds the model's context window. 请求内容超过了模型的上下文长度,请压缩或清理对话后重试。

直接连官方时,同一个问题的写法可能是 prompt is too long: 1280000 tokens > 1000000 maximum,或者 OpenAI 的 context_length_exceeded。

意思是这次请求的内容太长,超过了模型一次能读的上限(上下文窗口)。原样重发还会报错。在 Claude Code 或 Codex 里用 /compact 压缩对话,或者新开一个对话,就能继续。

出现在什么时候 ​

  • 很长的对话:Claude Code、Codex 每条消息都会带上整段对话。
  • 一次贴进了大文件、长日志、很多张图片。
  • 装了很多 MCP 工具:每个工具的说明也算在输入里。
  • 自动压缩没成功:对话一直变长,最后超过上限(见下面“用 xxapi 时还要查什么”)。

原因 ​

每个模型一次能读的 token 数有上限,算的是整次请求:系统提示、工具定义、全部历史消息和附件,加在一起不能超过这个上限。上限多大因模型而异,见 Anthropic 官方的 上下文窗口说明 和 OpenAI 各模型的说明页。

怎么解决 ​

  1. **压缩对话。**Claude Code 和 Codex 里都输入 /compact,让它把前面的内容总结成一段,再接着做。
  2. **新开对话。**Claude Code 输入 /clear,Codex 新开一个会话。可以让它先读已经写好的文件,再继续任务。
  3. **别把大文件整段贴进对话。**让工具自己去读文件里需要的部分;日志只贴报错附近的几十行。
  4. **减少同时开着的 MCP 工具。**用不到的先关掉。
  5. 聊天软件里:新开对话,少带附件;需要长文时分几次发。

用 xxapi 时还要查什么 ​

  • 对话越长越贵:部分模型在一次输入很长时按更高的一档计价,见 价格表 里的“输入长度”一列。及时压缩,既能避免这个报错,也更省钱。
  • 如果是 Codex 经 CC Switch 调 Claude 模型、并且之前一直在报错,自动压缩可能一直没成功,对话才会越积越长。先看 input_schema does not support oneOf, allOf, or anyOf,处理好以后新开对话。
  • 中途换模型导致压缩失败的情况,见 Codex 换模型后“压缩已中断”。

核对日期:2026-10-28。

回到常见问题

从第一步,到第一次成功使用。