在使用 OpenCode + Antigravity Tools API 进行反代时,用户可能会遇到回复到一半就中断、莫名其妙中断以及长时间 streaming 时连接被意外关闭的问题。这些问题的根本原因是由于 @ai-sdk/openai-compatible 的 SSE(Server-Sent Events)处理与 Bun 的 HTTP 客户端存在兼容性问题。为了解决这个问题,用户可以采用 @ai-sdk/anthropic 协议替代 @ai-sdk/openai-compatible 协议。具体的配置示例如下:

api: {
  npm: "@ai-sdk/anthropic",
  options: {
    timeout: false,  // 必须添加,禁用超时
    baseURL: "http://127.0.0.1:8045/v1",
    apiKey: "你的 API Key"
  },
  models: {
    "claude-opus-4-5-thinking": { ... }
  }
}

注意事项包括:之前使用的是 @ai-sdk/openai-compatible + OpenAI 格式,而现在使用的是 @ai-sdk/anthropic + Anthropic 原生格式 + 模型映射。此外,@ai-sdk/openai-compatible 的 SSE 处理存在问题(与 Bun 的兼容性问题),或者可能是 Antigravity 的 OpenAI 兼容格式转换存在问题。总结来说,通过将 @ai-sdk/openai-compatible 换成 @ai-sdk/anthropic 协议,并配合正确的 baseURL 和 timeout 设置,可以彻底解决断流问题。

标签: none

评论已关闭