供应商
OpenCode 使用 AI SDK 和 Models.dev 支持 75+ 个 LLM 供应商,包括本地模型。本页面介绍如何连接和配置供应商。
连接供应商
在 OpenCode TUI 中使用 /connect 命令添加供应商:
/connect这会打开供应商选择列表。选择供应商后:
- 认证(OAuth、API 密钥或订阅登录)
- 在提示时粘贴 API 密钥
- 运行
/models选择模型
/modelsOpenCode Zen
推荐新手使用。 OpenCode Zen 提供经过 OpenCode 团队测试和验证的精选模型。
- 运行
/connect并选择 OpenCode Zen - 在 opencode.ai/auth 登录并创建 API 密钥
- 粘贴 API 密钥
- 运行
/models查看推荐模型
OpenCode Go
低成本订阅计划,提供可靠的热门开源编码模型访问。
热门供应商
Anthropic(Claude)
/connect
# 选择 "Anthropic"
# 选择 "Claude Pro/Max" 进行订阅登录,或 "Manually enter API Key"认证后,运行 /models 访问所有 Claude 模型。
WARNING
Anthropic 明确禁止通过第三方插件使用 Claude Pro/Max 订阅。请仅使用官方认证方式。
OpenAI(ChatGPT)
/connect
# 选择 "OpenAI"
# 选择 "ChatGPT Plus/Pro" 进行订阅登录,或 "Manually enter API Key"推荐注册 ChatGPT Plus 或 Pro 以获得最佳体验。
GitHub Copilot
/connect
# 选择 "GitHub Copilot"
# 前往 github.com/login/device 并输入显示的代码部分模型可能需要 Pro+ 订阅。
Google Vertex AI
设置环境变量:
bash
export GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json
export GOOGLE_CLOUD_PROJECT=your-project-id
export VERTEX_LOCATION=global # 可选,默认 "global"然后运行 /connect 选择 Google Vertex AI。
Azure OpenAI
bash
export AZURE_RESOURCE_NAME=your-resource-name运行 /connect,选择 Azure,输入 API 密钥。部署名称必须与模型名称匹配。
本地模型
Ollama
在 opencode.json 中配置:
json
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"ollama": {
"npm": "@ai-sdk/openai-compatible",
"name": "Ollama (local)",
"options": {
"baseURL": "http://localhost:11434/v1"
},
"models": {
"llama2": {
"name": "Llama 2"
}
}
}
}
}TIP
如果 Ollama 的工具调用不工作,尝试将 num_ctx 增加到 16k–32k。
LM Studio
json
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"lmstudio": {
"npm": "@ai-sdk/openai-compatible",
"name": "LM Studio (local)",
"options": {
"baseURL": "http://127.0.0.1:1234/v1"
},
"models": {
"google/gemma-3n-e4b": {
"name": "Gemma 3n-e4b (local)"
}
}
}
}
}llama.cpp
json
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"llama.cpp": {
"npm": "@ai-sdk/openai-compatible",
"name": "llama-server (local)",
"options": {
"baseURL": "http://127.0.0.1:8080/v1"
},
"models": {
"qwen3-coder:a3b": {
"name": "Qwen3-Coder: a3b-30b (local)",
"limit": {
"context": 128000,
"output": 65536
}
}
}
}
}
}自定义供应商
对于不在 /connect 列表中的任何 OpenAI 兼容供应商:
- 运行
/connect并滚动到 Other - 输入唯一的供应商 ID(如
myprovider) - 输入 API 密钥
- 在
opencode.json中添加配置:
json
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"myprovider": {
"npm": "@ai-sdk/openai-compatible",
"name": "My Provider",
"options": {
"baseURL": "https://api.myprovider.com/v1"
},
"models": {
"my-model": {
"name": "My Model",
"limit": {
"context": 200000,
"output": 65536
}
}
}
}
}
}关键配置字段:
| 字段 | 描述 |
|---|---|
npm | AI SDK 包。/v1/chat/completions 用 @ai-sdk/openai-compatible,/v1/responses 用 @ai-sdk/openai |
name | UI 中的显示名称 |
options.baseURL | API 端点 URL |
options.apiKey | API 密钥(推荐使用 {env:VAR} 语法) |
options.headers | 自定义请求头 |
models | 模型 ID 到配置的映射 |
models.*.limit.context | 最大输入 token 数 |
models.*.limit.output | 最大输出 token 数 |
供应商管理
禁用供应商
阻止特定供应商加载:
json
{
"disabled_providers": ["openai", "gemini"]
}仅启用特定供应商
限制为允许列表:
json
{
"enabled_providers": ["anthropic", "openai"]
}disabled_providers 优先于 enabled_providers。
故障排除
- 检查认证设置:运行
opencode auth list验证凭据 - 自定义供应商:确保
/connect中的供应商 ID 与配置中的 ID 匹配 - 正确的 npm 包:大多数供应商使用
@ai-sdk/openai-compatible,/v1/responses端点使用@ai-sdk/openai - Base URL:验证 API 端点是否正确