opencode antigravity-claude-opus-4-6-thinking prompt is too long 解决prompt is too long 352692 tokens > 200000 maximumClaude Opus 4.6 Thinking 超过 200k 上下文限制opencode-antigravity-auth latest 配置修复opencode upgrade models --refresh 重建模型缓存OpenCode MAX thinking 导致上下文膨胀opencode /compact 之后恢复正常antigravity-claude-opus-4-6-thinking limit context 200000thinkingBudget 32768 配置示例Google Antigravity INVALID_ARGUMENT 400独享住宅 IP 降低 AI 风控误判SkyVPN Claude Opus 4.6 稳定使用

[解决] opencode 使用 antigravity-claude-opus-4-6-thinking 模型报错 prompt is too long: 352692 tokens > 200000 maximum

问题描述

我在 opencode 里用 antigravity-claude-opus-4-6-thinking 做长会话排障时,突然连续报错,核心信息是:

{
  "type": "error",
  "error": { "type": "invalid_request_error", "message": "prompt is too long: 352692 tokens > 200000 maximum" },
  "request_id": "REDACTED"
}

当时最直观的体感是:同一个会话前面还能跑,后面一进入复杂推理就直接 400,尤其把 thinking 开到 max 更容易复现。偶尔执行 /compact 后会暂时恢复,但继续跑一段又会撞上同样的报错。

问题分析

我把报错信息和调试日志对齐后,确定这不是单点故障,而是两个因素叠加:

  1. 上下文真实长度超了模型上限 该模型的上下文上限是 200000,但请求里累计历史对话、系统提示和推理相关负载后,实际发送体到了 352692,服务端直接返回 INVALID_ARGUMENT

  2. 本地模型配置与缓存未及时同步 我最初的配置里,模型定义和版本不是最新状态。社区里给出的可复现修复路径是:更新到 opencode-antigravity-auth@latest,并刷新模型缓存。这个动作对我后续稳定性影响很明显。

另外我也踩到一个细节:MAX thinking 在长会话里会更快放大 token 消耗,所以“看起来没到 200k”并不代表请求体真的没超。

解决方案

我最后按下面四步处理,问题稳定消失。

第一步:升级插件与 opencode

  • 插件改为:opencode-antigravity-auth@latest
  • 执行:opencode upgrade

这一步的目的很直接:先把已知的模型配置和兼容逻辑更新到最新。

第二步:刷新模型缓存

执行:opencode models --refresh

很多人只升级不刷新,结果还是读旧缓存。我这边刷新后,模型列表和参数才和最新配置对齐。

第三步:校正模型配置(重点)

我把 provider.google.models 里这项确认成下面这个结构,关键是 limit.context = 200000 与 thinking 预算配置:

"antigravity-claude-opus-4-6-thinking": {
  "name": "Claude Opus 4.6 Thinking (Antigravity)",
  "limit": { "context": 200000, "output": 64000 },
  "modalities": { "input": ["text", "image", "pdf"], "output": ["text"] },
  "variants": {
    "low": { "thinkingConfig": { "thinkingBudget": 8192 } },
    "max": { "thinkingConfig": { "thinkingBudget": 32768 } }
  }
}

如果你是从旧配置迁过来的,这一步特别关键。

第四步:控制长会话体积 + 稳定网络出口

  • 长会话中定期 /compact,避免历史上下文无限膨胀
  • 复杂任务拆分成多轮,减少一次性超长请求
  • 固定一个稳定出口,避免请求在高风险 IP 间跳来跳去

我自己的做法是用 SkyVPN 的独享住宅 IP 固定出口,原因是画像更干净、接近真实家庭宽带、可按需切换全球地区。对这类 AI 平台来说,能明显减少风控噪音,降低误封与异常降级(很多人说的“AI 降智”)概率。短视频和营销账号场景也同理,稳定出口通常更不容易被限流。

总结经验

这次踩坑我记住三件事:

  1. prompt is too long 本质是请求体超上限,不是随机报错。
  2. 只看聊天窗口 token 估计不够,要把系统指令、历史对话、thinking 开销一起算进去。
  3. 修复顺序要固定:升级插件 → 刷新模型缓存 → 校正模型参数 → 控制会话体积

如果你现在也卡在 352692 > 200000 这种报错,按这套顺序执行,通常比盲目重试快得多。