首页 › Claude Code › 错误 › 提示词过长
概览安装CLI 参考文档定价与限制Agent SDK技能与插件GitHub网页、桌面与 IDE模型错误是否开源?教程学生指南QA 自动化与 Cursor 对比与 Codex 和 OpenCode 对比子智能体钩子MCP生态系统VS CodeOpenRouter速率限制中文指南
最后更新:2026 年 11 月

Claude“提示词过长”“输入对于请求的模型而言过长”和“已达到上下文上限”:什么占满了窗口,以及如何释放空间

这些消息都表示同一件事:Claude Code(或 claude.ai)即将发送的请求已超出模型的上下文窗口。窗口包含的内容远不止你输入的消息——智能体读取的每个文件、每项工具结果、系统提示词、已加载的技能和 MCP 工具定义都会计入。解决方法是缩减发送的内容,而问题跟踪器中也记录了几起计量器本身出错的情况。

TLDR

  • Prompt is too long / input is too long for requested model ——API 返回的 400:请求超出上下文窗口。 /compact中的 curl 检查,然后运行 /clear (如有需要)。
  • Context limit reached · /compact or /clear to continue ——Claude Code 自身的发送前检查;解决方法相同,有时也会误报。
  • automatic compaction failed / single-exchange conversation cannot be compacted ——单轮内容过大(大型文件或工具输出); /clear 并用更少的内容重新说明任务。
  • 占用大户:大量 MCP 服务器、庞大的技能、读取完整日志或压缩后的文件、冗长的 /goal 文本、继承全部内容的子代理。

错误消息

API Error: 400 {"type":"error","error":{"type":"invalid_request_error","message":"prompt is too long: 213456 tokens > 200000 maximum"}}
API Error: 400 input is too long for requested model
Context limit reached · /compact or /clear to continue
Error during compaction: automatic compaction failed
Error: a single-exchange conversation cannot be compacted
Stop hook error: Hook evaluator API error: Prompt is too long

前两种来自 API,并带有 400 状态:请求被拒绝,原样重试仍会以同样的方式失败。 Context limit reached 是 Claude Code 在发送前自行做出的估算。压缩错误意味着应急手段本身也失败了,通常是因为对话只有一轮庞大的交互,没有更早的内容可供总结。

究竟是什么填满了上下文窗口

  • 工具结果。 A cat 一个 4 MB 的日志、一个压缩后的打包文件、一个 find 遍历 node_modules ——输出的每个字节都会进入对话。先请求 head, grep 或 wc -l ,或告诉代理要读取哪些文件。
  • MCP 工具定义。 每个已注册的服务器都会将其工具 schema 加入*每次*请求。 #50284:Explore 子代理失败,报错为 Prompt is too long ,注册多个 MCP 服务器后,每次调用都会如此——子代理还没开始做任何事,上下文窗口就已接近满载。停用此项目中未使用的服务器(claude mcp list,然后移除它们或限定其作用范围)。
  • 技能和 CLAUDE.md。 #69179 报告了 Context limit reached ,显示使用量为 21%,就在加载内置的 claude-api 技能之后;帖子中的另一位用户在新进程的首次提示时就遇到了这个问题,并通过移除 CLAUDE.md 中的技能调用解决了问题。自动加载的大型技能是一项隐性的固定开销。
  • 评估对话的钩子。 该 /goal Stop 钩子会将近期对话发送给评估模型;会话很长时,溢出的正是评估请求本身(#58192,17 条评论, #62345)。一位 Anthropic 工程师指出,目标的长度上限为 4,000 个字符,因此原因不在目标文本,而在会话长度。长时间自主运行前,请清除目标或压缩对话。
  • 子代理。 每个子代理都有自己的上下文窗口,但有报告称,Cowork 式的子代理创建出现了故障,报错为 Prompt is too long ,当时仅有 0 个 token(#55712);如果遇到这种情况,请更新 CLI。

在 Claude Code 中修复

/context          # what is in the window right now, by category
/compact          # summarise history, keep the task
/compact focus on the failing test and the diff   # steer what survives
/clear            # fresh window; paste a short brief of where you were
/model            # a (1M) variant if the job is genuinely large

顺序很重要:先查看 /context 。如果 MCP 工具或某项技能占用了三分之一的上下文窗口,压缩对话的效果也无法维持太久;应移除这项固定开销。如果问题出在单个工具结果上, /clear 比反复尝试压缩更快。如果工作确实需要数十万个 token,那么 (1M) 模型变体才是合适的工具——但请阅读下一节,因为选择它也有陷阱。

用量计显示不准时

问题跟踪器中的多份报告表明,实际用量远低于公布的窗口容量时,也会发生失败。 #51915: Context limit reached ,当时已使用 27%,而 /compact 随后也报错了。 #49605:尚未达到上限时就触发了警告。 API 错误 400 指南 介绍了与之相关的情况: Prompt is too long 发生在 166K 到 178K 个 token 之间,这些账户实际获得的是 200K 的窗口,而客户端显示的是 1M。实用原则:如果 /context 显示仍有空间,但 API 依然拒绝请求,就将大约 150K 视为实际上限,并在此处压缩对话。

反向的陷阱:如果某个模型默认使用 1M 窗口,而你的套餐不包含该窗口,选择它会产生*用量限制*消息,而不是上下文限制消息(#62052 ——“选择 Sonnet 时出现误导性的‘已达到用量限制’错误——实际上是 1M 上下文档位的访问限制”)。在以下位置选择非 1M 变体: /model,或设置 CLAUDE_CODE_DISABLE_1M_CONTEXT=1。详情见 用量限制页面.

claude.ai 上的“此对话过长,无法继续”

聊天产品也有相同的限制,只是措辞不同:*你的消息将超出此聊天的长度限制。请尝试附加更少或更小的文件,或开始新对话。*以及*此对话过长,无法继续。请开始新聊天,或移除一些工具以释放空间。*第二条与连接器有关:每个启用的工具或 MCP 连接器都会在每条消息中占用上下文,因此该消息建议移除工具(#58521)。开始新聊天,减少附件数量,将固定的参考资料放入 Project,而不是反复附加,并关闭当前对话中未使用的连接器。

使用 API 和通过网关调用时

因长度问题返回的 400 由模型决定,因此无论直接调用 Anthropic 还是通过本网关,行为都相同(ANTHROPIC_BASE_URL=https://aiprimetech.io)。区别在于计费:API 按 token 收费,没有会话用量窗口,因此频繁触发订阅限制的长上下文任务,使用 API 密钥往往更便宜,也更省心。请先在以下位置查看端点提供的模型及其窗口大小: /v1/models ,然后再考虑使用 (1M) 版本。

export ANTHROPIC_BASE_URL=https://aiprimetech.io
export ANTHROPIC_API_KEY=your_gateway_key
claude

厌倦了与这个问题反复较劲?

改为通过 AI Prime Tech 网关运行 Claude Code:使用相同的 Claude 模型,由网关自己的上游账户提供服务,设置两个环境变量即可切换,新账户可获得 $5 免费 API 额度 使用优惠码 FIXIT — 无需银行卡。

export ANTHROPIC_BASE_URL=https://aiprimetech.io
export ANTHROPIC_API_KEY=your_key

使用优惠码 FIXIT 创建账户

常见问题

“输入对于所请求的模型而言过长”是什么意思?

请求超出了所选模型的上下文窗口。API 返回的是 400:运行 /compact 或 /clear,移除未使用的 MCP 服务器和技能,或切换到上下文窗口更大的模型变体。

如何修复 Claude Code 中的“已达到上下文上限”?

运行 /context 查看什么占满了窗口,运行 /compact 进行总结,如果压缩失败则运行 /clear。如果远未达到上限就触发了提示,请将其视为误报,但仍压缩对话;问题跟踪器中已有多项此类缺陷。

为什么压缩会失败?

自动压缩需要有更早的对话轮次可供总结。如果对话只有一轮庞大的交互,例如一次巨大的工具输出,就没有内容可供归并;请运行 /clear,然后用更小的输入重新说明任务。

如何修复 claude.ai 上的“此对话过长,无法继续”?

开始新聊天,附加更少或更小的文件,并停用未使用的连接器或工具:每个启用的工具都会在每条消息中占用上下文。

通过网关运行 Claude Code

相同的模型,两个环境变量,面值 7.69231 倍的额度,或固定费率不限量方案。 新账户:使用优惠码 FIXIT 可获得 $5 免费 API 额度。

获取 API 密钥 查看不限量方案

AI Prime Tech 是独立的 API 网关,与 Anthropic 无关联,也未获得其认可或赞助。“Claude”和“Claude Code”是 Anthropic 的商标。此处介绍的 Claude Code 功能以撰写时 Anthropic 的公开文档为依据,且经常发生变化;本页面的价格和模型列表读取自此网关的实时设置。

更多 Claude Code 指南

Claude Code 错误及修复方法Claude Code“API 错误:500”:含义及真正有效的修复方法Claude“过载”错误(API 错误 529):含义及应对方法Claude Code API 错误 400:提示词过长、工具使用并发问题及其他错误Claude Code OAuth 错误:超出 15000ms 超时时限,以及状态码 500“Claude Code 进程退出,退出码为 1”:如何找到真正的错误并修复已达到 Claude 使用上限:会话、每周和 Opus 上限、“指定的 API 使用上限”、“额度余额过低” — 以及应对方法Claude Code 401 和 403:身份验证凭据无效、API 密钥无效、“未登录”、host_not_allowedClaude Code 连接错误:ECONNRESET、响应中途连接丢失、“正在等待 API 响应”、“无法连接到 API”、SSL 证书错误Claude Code 挂起、卡住或停止响应:如何定位卡住的位置并恢复Claude.ai 无法正常使用:“出了点问题”、容量限制、“已达到 5 小时上限”、“登录时出错”及其他问题