Mimocode/Opencode 的 Responses API 支持
内容提要
MiMoCode v0.1.13的Responses API支持情况:仅当provider id为openai、github-copilot或azure时,通过Vercel SDK的responses()方法启用;GitLab provider需配置useResponsesApi且依赖token-exchange协议。实测多数模型仅支持Chat Completions,仅少数支持Responses API,部分模型两者均不可用。
延伸解读
Responses API 的启用条件
MiMoCode v0.1.13 中,Responses API 并非对所有 provider 开放。只有 provider id 为 openai、github-copilot 或 azure 时,通过 Vercel SDK 的 responses() 方法启用。GitLab provider 需额外配置 useResponsesApi 为 true,且依赖 token-exchange 协议,这限制了其通用性。
模型兼容性差异
实测显示,多数模型仅支持 Chat Completions,少数支持 Responses API,部分模型两者均不可用。例如,deepseek-v4-flash 两者均支持,而 glm-5 仅支持 Chat Completions,gpt-5.6-luna 仅支持 Responses API。这种差异可能导致开发者在切换模型时遇到接口不兼容的问题。
配置陷阱与注意事项
使用自定义 provider 时,若 npm 包为 @ai-sdk/openai-compatible,则固定走 Chat Completions,无法使用 Responses API。即使使用 @ai-sdk/openai,若 provider id 不是 openai、github-copilot 或 azure,也会回退到 Chat Completions。因此,配置时需确保 provider id 和 npm 包匹配,否则可能无法启用预期功能。
Q&A
MiMoCode v0.1.13 中,Responses API 的触发条件是什么?
在 MiMoCode v0.1.13 中,Responses API 的触发条件是 provider id 为 openai、github-copilot 或 azure,并且通过 Vercel SDK 的 responses() 方法启用。对于 GitLab provider,需要配置 useResponsesApi 为 true,但依赖 token-exchange 协议。
如何配置 GitLab provider 以使用 Responses API?
在 MiMoCode 配置中,为 GitLab provider 的每个模型设置 "useResponsesApi": true,例如:{"provider": {"gitlab": {"models": {"gpt-5-codex": {"useResponsesApi": true}}}}}。但需要注意,GitLab 的 token 获取走的是 GitLab 的 token-exchange 协议,且没有可配置的开源端点或绕过开关。
在 MiMoCode 中,如何复用 openai provider id 来连接自定义的 Responses API 后端?
可以复用 openai provider id,通过配置自定义的 baseURL 和 apiKey,例如:{"provider": {"openai": {"name": "My Responses Backend", "npm": "@ai-sdk/openai", "models": {"my-model": {"name": "my-model"}}, "options": {"baseURL": "https://你的后端域名/v1", "apiKey": "你的key"}}}}。这样 MiMoCode 会使用 responses() 方法。
@ai-sdk/openai-compatible 和 @ai-sdk/openai 在 MiMoCode 中的区别是什么?
@ai-sdk/openai-compatible 是 MiMoCode 自带/打包的通用 OpenAI 兼容适配器,只支持 Chat Completions;@ai-sdk/openai 是 Vercel 官方的 OpenAI 原生 provider,支持 Chat Completions 和 Responses API。在 MiMoCode 中,自定义 provider 默认使用 @ai-sdk/openai-compatible,而内置 openai provider id 使用 @ai-sdk/openai。
在 MiMoCode 中,哪些模型实测支持 Responses API?
根据实测,支持 Responses API 的模型包括:deepseek-v4-flash、deepseek-v4-flash-vision-exp、deepseek-v4-pro、gpt-5.6-luna、grok-4.5、grok-4.6、muse-spark-1.2-contributor、muse-spark-1.2-contributor-free 等。而 glm-5、glm-5.1、glm-5.2、glm-5.3、glm-5.3-flash、hy3、hy4-preview、kimi-k2.5、kimi-k2.6、kimi-k2.7-code、kimi-k3、longcat-2.0、mimo-v2.5、mimo-v2.5-pro、minimax-m2.5、minimax-m3、qwen3.5-plus、qwen3.6-plus、qwen3.7-max、qwen3.7-plus、qwen3.8-flash、qwen3.8-max 等模型不支持 Responses API(返回 500 或 401 错误)。
在 MiMoCode 中,如果使用自定义 provider id 搭配 @ai-sdk/openai,会怎样?
如果使用自定义 provider id 搭配 @ai-sdk/openai,MiMoCode 会回退到通用 languageModel(),即使用 Chat Completions,而不是 Responses API。只有 provider id 为 openai、github-copilot 或 azure 时,才会使用 responses() 方法。