Skip to content

供应商

OpenCode 使用 AI SDKModels.dev 支持 75+ 个 LLM 供应商,包括本地模型。本页面介绍如何连接和配置供应商。

连接供应商

在 OpenCode TUI 中使用 /connect 命令添加供应商:

/connect

这会打开供应商选择列表。选择供应商后:

  1. 认证(OAuth、API 密钥或订阅登录)
  2. 在提示时粘贴 API 密钥
  3. 运行 /models 选择模型
/models

OpenCode Zen

推荐新手使用。 OpenCode Zen 提供经过 OpenCode 团队测试和验证的精选模型。

  1. 运行 /connect 并选择 OpenCode Zen
  2. opencode.ai/auth 登录并创建 API 密钥
  3. 粘贴 API 密钥
  4. 运行 /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 兼容供应商:

  1. 运行 /connect 并滚动到 Other
  2. 输入唯一的供应商 ID(如 myprovider
  3. 输入 API 密钥
  4. 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
          }
        }
      }
    }
  }
}

关键配置字段:

字段描述
npmAI SDK 包。/v1/chat/completions@ai-sdk/openai-compatible/v1/responses@ai-sdk/openai
nameUI 中的显示名称
options.baseURLAPI 端点 URL
options.apiKeyAPI 密钥(推荐使用 {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 端点是否正确

延伸阅读

Released under the GPLv3 License.