提供商

在 OpenCode 中使用任何 LLM 提供商。

OpenCode 使用 AI SDK↗ 和 Models.dev↗ 支持 75+ 个 LLM 提供商,同时也支持运行本地模型。

要添加一个提供商,你需要:

  1. 使用 /connect 命令添加提供商的 API 密钥。
  2. 在 OpenCode 配置中配置提供商。

# 凭证#

当你使用 /connect 命令添加提供商的 API 密钥时,它们会存储在 ~/.local/share/opencode/auth.json 中。


# 配置#

你可以通过 OpenCode 配置中的 provider 部分自定义提供商。


## 基础 URL#

你可以通过设置 baseURL 选项来自定义任何提供商的基础 URL。这在使用代理服务或自定义端点时很有用。

json
1{
2  "$schema": "https://opencode.ai/config.json",
3  "provider": {
4    "anthropic": {
5      "options": {
6        "baseURL": "https://api.anthropic.com/v1"
7      }
8    }
9  }
10}

# OpenCode Zen#

OpenCode Zen 是 OpenCode 团队提供的一系列经过测试和验证的模型,可以与 OpenCode 良好配合。了解更多。

提示:如果你是新手,我们建议从 OpenCode Zen 开始。

  1. 在 TUI 中运行 /connect 命令,选择 opencode,然后前往 opencode.ai/auth↗。

    /connect
    
  2. 登录,添加你的账单信息,然后复制你的 API 密钥。

  3. 粘贴你的 API 密钥。

    ┌ API key
    │
    └ enter
    
  4. 在 TUI 中运行 /models 查看我们推荐的模型列表。

    /models
    

它的工作方式与 OpenCode 中的任何其他提供商相同,使用它是完全可选的。


# 提供商目录#

让我们详细了解一些提供商。如果你想将提供商添加到列表中,欢迎提交 PR。

注意:没有看到你需要的提供商?提交一个 PR。


## Amazon Bedrock#

要在 OpenCode 中使用 Amazon Bedrock:

  1. 前往 Amazon Bedrock 控制台的 Model catalog,请求访问你想要的模型。

    提示:你需要在 Amazon Bedrock 中拥有对所需模型的访问权限。

  2. 配置认证,使用以下方法之一:

环境变量(快速开始)

在运行 opencode 时设置以下环境变量之一:

bash
1# 选项 1: 使用 AWS 访问密钥
2AWS_ACCESS_KEY_ID=XXX AWS_SECRET_ACCESS_KEY=YYY opencode
3
4# 选项 2: 使用命名的 AWS 配置文件
5AWS_PROFILE=my-profile opencode
6
7# 选项 3: 使用 Bedrock bearer token
8AWS_BEARER_TOKEN_BEDROCK=XXX opencode

或者添加到你的 bash profile:

bash
# ~/.bash_profile
export AWS_PROFILE=my-dev-profile
export AWS_REGION=us-east-1

配置文件(推荐)

对于项目特定或持久配置,使用 opencode.json:

json
1{
2  "$schema": "https://opencode.ai/config.json",
3  "provider": {
4    "amazon-bedrock": {
5      "options": {
6        "region": "us-east-1",
7        "profile": "my-aws-profile"
8      }
9    }
10  }
11}

可用选项:

  • region - AWS 区域(例如 us-east-1、eu-west-1)
  • profile - 来自 ~/.aws/credentials 的 AWS 命名配置文件
  • endpoint - VPC 端点的自定义端点 URL(通用 baseURL 选项的别名)

提示:配置文件选项优先于环境变量。

高级:VPC 端点

如果你使用 Bedrock 的 VPC 端点:

json
1{
2  "$schema": "https://opencode.ai/config.json",
3  "provider": {
4    "amazon-bedrock": {
5      "options": {
6        "region": "us-east-1",
7        "profile": "production",
8        "endpoint": "https://bedrock-runtime.us-east-1.vpce-xxxxx.amazonaws.com"
9      }
10    }
11  }
12}

注意:endpoint 选项是通用 baseURL 选项的别名,使用 AWS 特定的术语。如果同时指定了 endpoint 和 baseURL,endpoint 优先。

认证方法

  • AWS_ACCESS_KEY_ID / AWS_SECRET_ACCESS_KEY:在 AWS 控制台创建 IAM 用户并生成访问密钥
  • AWS_PROFILE:使用 ~/.aws/credentials 中的命名配置文件。首先使用 aws configure --profile my-profile 或 aws sso login 配置
  • AWS_BEARER_TOKEN_BEDROCK:从 Amazon Bedrock 控制台生成长期 API 密钥

认证优先级

Amazon Bedrock 使用以下认证优先级:

  1. Bearer Token - AWS_BEARER_TOKEN_BEDROCK 环境变量或来自 /connect 命令的 token
  2. AWS 凭证链 - 配置文件、访问密钥、共享凭证、IAM 角色、实例元数据

注意:当设置了 bearer token(通过 /connect 或 AWS_BEARER_TOKEN_BEDROCK)时,它优先于所有 AWS 凭证方法,包括已配置的配置文件。

  1. 运行 /models 命令选择你想要的模型。

    /models
    

## Anthropic#

我们建议注册 Claude Pro↗ 或 Max↗。

  1. 注册后,运行 /connect 命令并选择 Anthropic。

    /connect
    
  2. 在这里你可以选择 Claude Pro/Max 选项,它会打开你的浏览器并要求你进行认证。

    ┌ Select auth method
    │
    │ Claude Pro/Max
    │ Create an API Key
    │ Manually enter API Key
    └
    
  3. 现在当你使用 /models 命令时,所有 Anthropic 模型应该都可用了。

    /models
    

使用 API 密钥

如果你没有 Pro/Max 订阅,你也可以选择 Create an API Key。它也会打开你的浏览器,要求你登录 Anthropic,并给你一个可以粘贴到终端的代码。

或者如果你已经有 API 密钥,你可以选择 Manually enter API Key 并将其粘贴到终端中。


## Azure OpenAI#

注意:如果遇到 "I'm sorry, but I cannot assist with that request" 错误,请尝试在 Azure 资源中将内容过滤器从 DefaultV2 更改为 Default。

  1. 前往 Azure 门户↗ 创建一个 Azure OpenAI 资源。你需要:

    • 资源名称:这将成为 API 端点的一部分(https://RESOURCE_NAME.openai.azure.com/)
    • API 密钥:资源的 KEY 1 或 KEY 2
  2. 前往 Azure AI Foundry↗ 部署一个模型。

    注意:部署名称必须与模型名称匹配,opencode 才能正常工作。

  3. 运行 /connect 命令并搜索 Azure。

    /connect
    
  4. 输入你的 API 密钥。

    ┌ API key
    │
    └ enter
    
  5. 将资源名称设置为环境变量:

    bash
    AZURE_RESOURCE_NAME=XXX opencode

    或者添加到你的 bash profile:

    bash
    # ~/.bash_profile
    export AZURE_RESOURCE_NAME=XXX
  6. 运行 /models 命令选择你部署的模型。

    /models
    

## Azure Cognitive Services#

  1. 前往 Azure 门户↗ 创建一个 Azure OpenAI 资源。你需要:

    • 资源名称:这将成为 API 端点的一部分(https://AZURE_COGNITIVE_SERVICES_RESOURCE_NAME.cognitiveservices.azure.com/)
    • API 密钥:资源的 KEY 1 或 KEY 2
  2. 前往 Azure AI Foundry↗ 部署一个模型。

    注意:部署名称必须与模型名称匹配,opencode 才能正常工作。

  3. 运行 /connect 命令并搜索 Azure Cognitive Services。

    /connect
    
  4. 输入你的 API 密钥。

  5. 将资源名称设置为环境变量:

    bash
    AZURE_COGNITIVE_SERVICES_RESOURCE_NAME=XXX opencode
  6. 运行 /models 命令选择你部署的模型。


## Baseten#

  1. 前往 Baseten↗,创建账户并生成 API 密钥。

  2. 运行 /connect 命令并搜索 Baseten。

  3. 输入你的 Baseten API 密钥。

  4. 运行 /models 命令选择模型。


## Cerebras#

  1. 前往 Cerebras 控制台↗,创建账户并生成 API 密钥。

  2. 运行 /connect 命令并搜索 Cerebras。

  3. 输入你的 Cerebras API 密钥。

  4. 运行 /models 命令选择模型,如 Qwen 3 Coder 480B。


## Cloudflare AI Gateway#

Cloudflare AI Gateway 让你可以通过统一端点访问 OpenAI、Anthropic、Workers AI 等提供商的模型。通过 Unified Billing↗,你不需要每个提供商的单独 API 密钥。

  1. 前往 Cloudflare 仪表板↗,导航到 AI > AI Gateway,创建一个新网关。

  2. 将你的 Account ID 和 Gateway ID 设置为环境变量。

    bash
    # ~/.bash_profile
    export CLOUDFLARE_ACCOUNT_ID=your-32-character-account-id
    export CLOUDFLARE_GATEWAY_ID=your-gateway-id
  3. 运行 /connect 命令并搜索 Cloudflare AI Gateway。

  4. 输入你的 Cloudflare API token。

    或者设置为环境变量:

    bash
    export CLOUDFLARE_API_TOKEN=your-api-token
  5. 运行 /models 命令选择模型。

    你也可以通过 opencode 配置添加模型:

    json
    1{
    2  "$schema": "https://opencode.ai/config.json",
    3  "provider": {
    4    "cloudflare-ai-gateway": {
    5      "models": {
    6        "openai/gpt-4o": {},
    7        "anthropic/claude-sonnet-4": {}
    8      }
    9    }
    10  }
    11}

## Cortecs#

  1. 前往 Cortecs 控制台↗,创建账户并生成 API 密钥。

  2. 运行 /connect 命令并搜索 Cortecs。

  3. 输入你的 Cortecs API 密钥。

  4. 运行 /models 命令选择模型,如 Kimi K2 Instruct。


## DeepSeek#

  1. 前往 DeepSeek 控制台↗,创建账户并点击 Create new API key。

  2. 运行 /connect 命令并搜索 DeepSeek。

  3. 输入你的 DeepSeek API 密钥。

  4. 运行 /models 命令选择 DeepSeek 模型,如 DeepSeek Reasoner。


## Deep Infra#

  1. 前往 Deep Infra 仪表板↗,创建账户并生成 API 密钥。

  2. 运行 /connect 命令并搜索 Deep Infra。

  3. 输入你的 Deep Infra API 密钥。

  4. 运行 /models 命令选择模型。


## Fireworks AI#

  1. 前往 Fireworks AI 控制台↗,创建账户并点击 Create API Key。

  2. 运行 /connect 命令并搜索 Fireworks AI。

  3. 输入你的 Fireworks AI API 密钥。

  4. 运行 /models 命令选择模型,如 Kimi K2 Instruct。


## GitHub Copilot#

要使用你的 GitHub Copilot 订阅与 opencode:

注意:某些模型可能需要 Pro+ 订阅↗ 才能使用。 某些模型需要在你的 GitHub Copilot 设置↗ 中手动启用。

  1. 运行 /connect 命令并搜索 GitHub Copilot。

    /connect
    
  2. 导航到 github.com/login/device↗ 并输入代码。

    ┌ Login with GitHub Copilot
    │
    │ https://github.com/login/device
    │
    │ Enter code: 8F43-6FCF
    │
    └ Waiting for authorization...
    
  3. 现在运行 /models 命令选择你想要的模型。


## Google Vertex AI#

要在 OpenCode 中使用 Google Vertex AI:

  1. 前往 Google Cloud Console 的 Model Garden,查看你所在区域可用的模型。

    注意:你需要有一个启用了 Vertex AI API 的 Google Cloud 项目。

  2. 设置必需的环境变量:

    • GOOGLE_CLOUD_PROJECT:你的 Google Cloud 项目 ID
    • VERTEX_LOCATION(可选):Vertex AI 的区域(默认为 global)
    • 认证(选择一个):
      • GOOGLE_APPLICATION_CREDENTIALS:服务账户 JSON 密钥文件的路径
      • 使用 gcloud CLI 认证:gcloud auth application-default login

    在运行 opencode 时设置它们:

    bash
    GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json GOOGLE_CLOUD_PROJECT=your-project-id opencode

    或者添加到你的 bash profile:

    bash
    1# ~/.bash_profile
    2export GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json
    3export GOOGLE_CLOUD_PROJECT=your-project-id
    4export VERTEX_LOCATION=global

提示:global 区域可以提高可用性并减少错误,且不需要额外费用。使用区域端点(如 us-central1)用于数据驻留要求。了解更多↗

  1. 运行 /models 命令选择你想要的模型。

## Groq#

  1. 前往 Groq 控制台↗,点击 Create API Key 并复制密钥。

  2. 运行 /connect 命令并搜索 Groq。

  3. 输入提供商的 API 密钥。

  4. 运行 /models 命令选择你想要的模型。


## Hugging Face#

Hugging Face Inference Providers↗ 提供对 17+ 个提供商支持的开源模型的访问。

  1. 前往 Hugging Face 设置↗ 创建一个具有调用 Inference Providers 权限的 token。

  2. 运行 /connect 命令并搜索 Hugging Face。

  3. 输入你的 Hugging Face token。

  4. 运行 /models 命令选择模型,如 Kimi-K2-Instruct 或 GLM-4.6。


## Helicone#

Helicone↗ 是一个 LLM 可观测性平台,为你的 AI 应用程序提供日志记录、监控和分析。Helicone AI Gateway 根据模型自动将你的请求路由到适当的提供商。

  1. 前往 Helicone↗,创建账户并从仪表板生成 API 密钥。

  2. 运行 /connect 命令并搜索 Helicone。

  3. 输入你的 Helicone API 密钥。

  4. 运行 /models 命令选择模型。

有关更多提供商和高级功能(如缓存和速率限制),请查看 Helicone 文档↗。

可选配置

如果你看到 Helicone 的功能或模型没有通过 opencode 自动配置,你可以自己配置。

这是 Helicone 的模型目录↗,你需要它来获取要添加的模型 ID。

jsonc
1// ~/.config/opencode/opencode.jsonc
2{
3  "$schema": "https://opencode.ai/config.json",
4  "provider": {
5    "helicone": {
6      "npm": "@ai-sdk/openai-compatible",
7      "name": "Helicone",
8      "options": {
9        "baseURL": "https://ai-gateway.helicone.ai"
10      },
11      "models": {
12        "gpt-4o": {
13          // 模型 ID(来自 Helicone 的模型目录页面)
14          "name": "GPT-4o" // 你自己为模型自定义的名称
15        },
16        "claude-sonnet-4-20250514": {
17          "name": "Claude Sonnet 4"
18        }
19      }
20    }
21  }
22}

自定义头

Helicone 支持用于缓存、用户跟踪和会话管理等功能的自定义头。使用 options.headers 将它们添加到你的提供商配置中:

jsonc
1// ~/.config/opencode/opencode.jsonc
2{
3  "$schema": "https://opencode.ai/config.json",
4  "provider": {
5    "helicone": {
6      "npm": "@ai-sdk/openai-compatible",
7      "name": "Helicone",
8      "options": {
9        "baseURL": "https://ai-gateway.helicone.ai",
10        "headers": {
11          "Helicone-Cache-Enabled": "true",
12          "Helicone-User-Id": "opencode"
13        }
14      }
15    }
16  }
17}
会话跟踪

Helicone 的 Sessions↗ 功能让你可以将相关的 LLM 请求分组在一起。使用 opencode-helicone-session↗ 插件自动将每个 OpenCode 对话记录为 Helicone 中的一个会话。

bash
npm install -g opencode-helicone-session

将它添加到你的配置中:

json
{
  "plugin": ["opencode-helicone-session"]
}

该插件将 Helicone-Session-Id 和 Helicone-Session-Name 头注入到你的请求中。在 Helicone 的 Sessions 页面,你会看到每个 OpenCode 对话都作为单独的会话列出。

常用 Helicone 头
头描述
Helicone-Cache-Enabled启用响应缓存(true/false)
Helicone-User-Id按用户跟踪指标
Helicone-Property-[Name]添加自定义属性(例如 Helicone-Property-Environment)
Helicone-Prompt-Id将请求与提示版本关联

查看 Helicone 头目录↗ 获取所有可用的头。


## llama.cpp#

你可以配置 opencode 通过 llama.cpp↗ 的 llama-server 工具使用本地模型。

json
1{
2  "$schema": "https://opencode.ai/config.json",
3  "provider": {
4    "llama.cpp": {
5      "npm": "@ai-sdk/openai-compatible",
6      "name": "llama-server (local)",
7      "options": {
8        "baseURL": "http://127.0.0.1:8080/v1"
9      },
10      "models": {
11        "qwen3-coder:a3b": {
12          "name": "Qwen3-Coder: a3b-30b (local)",
13          "limit": {
14            "context": 128000,
15            "output": 65536
16          }
17        }
18      }
19    }
20  }
21}

在这个例子中:

  • llama.cpp 是自定义提供商 ID。这可以是你想要的任何字符串。
  • npm 指定用于此提供商的包。这里使用 @ai-sdk/openai-compatible 用于任何 OpenAI 兼容的 API。
  • name 是 UI 中提供商的显示名称。
  • options.baseURL 是本地服务器的端点。
  • models 是模型 ID 到其配置的映射。模型名称将显示在模型选择列表中。

## IO.NET#

IO.NET 提供针对各种用例优化的 17 个模型:

  1. 前往 IO.NET 控制台↗,创建账户并生成 API 密钥。

  2. 运行 /connect 命令并搜索 IO.NET。

  3. 输入你的 IO.NET API 密钥。

  4. 运行 /models 命令选择模型。


## LM Studio#

你可以配置 opencode 通过 LM Studio 使用本地模型。

json
1{
2  "$schema": "https://opencode.ai/config.json",
3  "provider": {
4    "lmstudio": {
5      "npm": "@ai-sdk/openai-compatible",
6      "name": "LM Studio (local)",
7      "options": {
8        "baseURL": "http://127.0.0.1:1234/v1"
9      },
10      "models": {
11        "google/gemma-3n-e4b": {
12          "name": "Gemma 3n-e4b (local)"
13        }
14      }
15    }
16  }
17}

在这个例子中:

  • lmstudio 是自定义提供商 ID。这可以是你想要的任何字符串。
  • npm 指定用于此提供商的包。这里使用 @ai-sdk/openai-compatible 用于任何 OpenAI 兼容的 API。
  • name 是 UI 中提供商的显示名称。
  • options.baseURL 是本地服务器的端点。
  • models 是模型 ID 到其配置的映射。模型名称将显示在模型选择列表中。

## Moonshot AI#

要使用 Moonshot AI 的 Kimi K2:

  1. 前往 Moonshot AI 控制台↗,创建账户并点击 Create API key。

  2. 运行 /connect 命令并搜索 Moonshot AI。

  3. 输入你的 Moonshot API 密钥。

  4. 运行 /models 命令选择 Kimi K2。


## MiniMax#

  1. 前往 MiniMax API 控制台↗,创建账户并生成 API 密钥。

  2. 运行 /connect 命令并搜索 MiniMax。

  3. 输入你的 MiniMax API 密钥。

  4. 运行 /models 命令选择模型,如 M2.1。


## Nebius Token Factory#

  1. 前往 Nebius Token Factory 控制台↗,创建账户并点击 Add Key。

  2. 运行 /connect 命令并搜索 Nebius Token Factory。

  3. 输入你的 Nebius Token Factory API 密钥。

  4. 运行 /models 命令选择模型,如 Kimi K2 Instruct。


## Ollama#

你可以配置 opencode 通过 Ollama 使用本地模型。

json
1{
2  "$schema": "https://opencode.ai/config.json",
3  "provider": {
4    "ollama": {
5      "npm": "@ai-sdk/openai-compatible",
6      "name": "Ollama (local)",
7      "options": {
8        "baseURL": "http://localhost:11434/v1"
9      },
10      "models": {
11        "llama2": {
12          "name": "Llama 2"
13        }
14      }
15    }
16  }
17}

在这个例子中:

  • ollama 是自定义提供商 ID。这可以是你想要的任何字符串。
  • npm 指定用于此提供商的包。这里使用 @ai-sdk/openai-compatible 用于任何 OpenAI 兼容的 API。
  • name 是 UI 中提供商的显示名称。
  • options.baseURL 是本地服务器的端点。
  • models 是模型 ID 到其配置的映射。模型名称将显示在模型选择列表中。

提示:如果工具调用不起作用,尝试在 Ollama 中增加 num_ctx。从 16k - 32k 开始。


## Ollama Cloud#

要在 OpenCode 中使用 Ollama Cloud:

  1. 前往 https://ollama.com/↗ 登录或创建账户。

  2. 导航到 Settings > Keys 并点击 Add API Key 生成新的 API 密钥。

  3. 复制 API 密钥以在 OpenCode 中使用。

  4. 运行 /connect 命令并搜索 Ollama Cloud。

  5. 输入你的 Ollama Cloud API 密钥。

  6. 重要:在 OpenCode 中使用云模型之前,你必须在本地拉取模型信息:

    bash
    ollama pull gpt-oss:20b-cloud
  7. 运行 /models 命令选择你的 Ollama Cloud 模型。


## OpenAI#

  1. 前往 OpenAI 平台控制台↗,点击 Create new secret key 并复制密钥。

  2. 运行 /connect 命令并搜索 OpenAI。

  3. 输入提供商的 API 密钥。

  4. 运行 /models 命令选择你想要的模型。


## OpenCode Zen#

OpenCode Zen 是 OpenCode 团队提供的一系列经过测试和验证的模型。了解更多。

  1. 登录 OpenCode Zen↗ 并点击 Create API Key。

  2. 运行 /connect 命令并搜索 OpenCode Zen。

  3. 输入你的 OpenCode API 密钥。

  4. 运行 /models 命令选择模型,如 Qwen 3 Coder 480B。


## OpenRouter#

  1. 前往 OpenRouter 仪表板↗,点击 Create API Key 并复制密钥。

  2. 运行 /connect 命令并搜索 OpenRouter。

  3. 输入提供商的 API 密钥。

  4. 许多 OpenRouter 模型默认已预加载,运行 /models 命令选择你想要的模型。

    你也可以通过 opencode 配置添加额外的模型:

    json
    1{
    2  "$schema": "https://opencode.ai/config.json",
    3  "provider": {
    4    "openrouter": {
    5      "models": {
    6        "somecoolnewmodel": {}
    7      }
    8    }
    9  }
    10}
  5. 你也可以通过 opencode 配置自定义它们。这是一个指定提供商的例子:

    json
    1{
    2  "$schema": "https://opencode.ai/config.json",
    3  "provider": {
    4    "openrouter": {
    5      "models": {
    6        "moonshotai/kimi-k2": {
    7          "options": {
    8            "provider": {
    9              "order": ["baseten"],
    10              "allow_fallbacks": false
    11            }
    12          }
    13        }
    14      }
    15    }
    16  }
    17}

## SAP AI Core#

SAP AI Core 通过统一平台提供对来自 OpenAI、Anthropic、Google、Amazon、Meta、Mistral 和 AI21 的 40+ 个模型的访问。

  1. 前往你的 SAP BTP Cockpit↗,导航到你的 SAP AI Core 服务实例,创建一个服务密钥。

    提示:服务密钥是一个包含 clientid、clientsecret、url 和 serviceurls.AI_API_URL 的 JSON 对象。你可以在 BTP Cockpit 的 Services > Instances and Subscriptions 下找到你的 AI Core 实例。

  2. 运行 /connect 命令并搜索 SAP AI Core。

  3. 输入你的服务密钥 JSON。

    或者设置 AICORE_SERVICE_KEY 环境变量:

    bash
    AICORE_SERVICE_KEY='{"clientid":"...","clientsecret":"...","url":"...","serviceurls":{"AI_API_URL":"..."}}' opencode
  4. 可选地设置部署 ID 和资源组:

    bash
    AICORE_DEPLOYMENT_ID=your-deployment-id AICORE_RESOURCE_GROUP=your-resource-group opencode

    注意:这些设置是可选的,应根据你的 SAP AI Core 设置进行配置。

  5. 运行 /models 命令从 40+ 个可用模型中选择。


## OVHcloud AI Endpoints#

  1. 前往 OVHcloud 面板↗。导航到 Public Cloud 部分,AI & Machine Learning > AI Endpoints,在 API Keys 标签中点击 Create a new API key。

  2. 运行 /connect 命令并搜索 OVHcloud AI Endpoints。

  3. 输入你的 OVHcloud AI Endpoints API 密钥。

  4. 运行 /models 命令选择模型,如 gpt-oss-120b。


## Together AI#

  1. 前往 Together AI 控制台↗,创建账户并点击 Add Key。

  2. 运行 /connect 命令并搜索 Together AI。

  3. 输入你的 Together AI API 密钥。

  4. 运行 /models 命令选择模型,如 Kimi K2 Instruct。


## Venice AI#

  1. 前往 Venice AI 控制台↗,创建账户并生成 API 密钥。

  2. 运行 /connect 命令并搜索 Venice AI。

  3. 输入你的 Venice AI API 密钥。

  4. 运行 /models 命令选择模型,如 Llama 3.3 70B。


## Vercel AI Gateway#

Vercel AI Gateway 让你可以通过统一端点访问 OpenAI、Anthropic、Google、xAI 等提供商的模型。模型按标价提供,无加价。

  1. 前往 Vercel 仪表板↗,导航到 AI Gateway 标签,点击 API keys 创建新的 API 密钥。

  2. 运行 /connect 命令并搜索 Vercel AI Gateway。

  3. 输入你的 Vercel AI Gateway API 密钥。

  4. 运行 /models 命令选择模型。

你也可以通过 opencode 配置自定义模型。这是一个指定提供商路由顺序的例子:

json
1{
2  "$schema": "https://opencode.ai/config.json",
3  "provider": {
4    "vercel": {
5      "models": {
6        "anthropic/claude-sonnet-4": {
7          "options": {
8            "order": ["anthropic", "vertex"]
9          }
10        }
11      }
12    }
13  }
14}

一些有用的路由选项:

选项描述
order尝试的提供商序列
only限制到特定提供商
zeroDataRetention仅使用零数据保留策略的提供商

## xAI#

  1. 前往 xAI 控制台↗,创建账户并生成 API 密钥。

  2. 运行 /connect 命令并搜索 xAI。

  3. 输入你的 xAI API 密钥。

  4. 运行 /models 命令选择模型,如 Grok Beta。


## Z.AI#

  1. 前往 Z.AI API 控制台↗,创建账户并点击 Create a new API key。

  2. 运行 /connect 命令并搜索 Z.AI。

    如果你订阅了 GLM Coding Plan,选择 Z.AI Coding Plan。

  3. 输入你的 Z.AI API 密钥。

  4. 运行 /models 命令选择模型,如 GLM-4.7。


## ZenMux#

  1. 前往 ZenMux 仪表板↗,点击 Create API Key 并复制密钥。

  2. 运行 /connect 命令并搜索 ZenMux。

  3. 输入提供商的 API 密钥。

  4. 许多 ZenMux 模型默认已预加载,运行 /models 命令选择你想要的模型。

    你也可以通过 opencode 配置添加额外的模型:

    json
    1{
    2  "$schema": "https://opencode.ai/config.json",
    3  "provider": {
    4    "zenmux": {
    5      "models": {
    6        "somecoolnewmodel": {}
    7      }
    8    }
    9  }
    10}

# 自定义提供商#

要添加 /connect 命令中未列出的任何 OpenAI 兼容提供商:

提示:你可以使用任何 OpenAI 兼容的提供商与 opencode。大多数现代 AI 提供商都提供 OpenAI 兼容的 API。

  1. 运行 /connect 命令并向下滚动到 Other。

    $ /connect
    ┌  Add credential
    │
    ◆  Select provider
    │  ...
    │  ● Other
    └
    
  2. 输入提供商的唯一 ID。

    $ /connect
    ┌  Add credential
    │
    ◇  Enter provider id
    │  myprovider
    └
    

    注意:选择一个容易记住的 ID,你将在配置文件中使用它。

  3. 输入提供商的 API 密钥。

    $ /connect
    ┌  Add credential
    │
    ▲  This only stores a credential for myprovider - you will need to configure it in opencode.json, check the docs for examples.
    │
    ◇  Enter your API key
    │  sk-...
    └
    
  4. 在项目目录中创建或更新你的 opencode.json 文件:

    json
    1{
    2  "$schema": "https://opencode.ai/config.json",
    3  "provider": {
    4    "myprovider": {
    5      "npm": "@ai-sdk/openai-compatible",
    6      "name": "My AI Provider Display Name",
    7      "options": {
    8        "baseURL": "https://api.myprovider.com/v1"
    9      },
    10      "models": {
    11        "my-model-name": {
    12          "name": "My Model Display Name"
    13        }
    14      }
    15    }
    16  }
    17}

    这里是配置选项:

    • npm:要使用的 AI SDK 包,OpenAI 兼容提供商使用 @ai-sdk/openai-compatible
    • name:UI 中的显示名称
    • models:可用的模型
    • options.baseURL:API 端点 URL
    • options.apiKey:可选地设置 API 密钥,如果不使用 auth
    • options.headers:可选地设置自定义头

    更多高级选项请参见下面的示例。

  5. 运行 /models 命令,你的自定义提供商和模型将出现在选择列表中。


## 示例#

这是一个设置 apiKey、headers 和模型 limit 选项的示例:

json
1{
2  "$schema": "https://opencode.ai/config.json",
3  "provider": {
4    "myprovider": {
5      "npm": "@ai-sdk/openai-compatible",
6      "name": "My AI Provider Display Name",
7      "options": {
8        "baseURL": "https://api.myprovider.com/v1",
9        "apiKey": "{env:ANTHROPIC_API_KEY}",
10        "headers": {
11          "Authorization": "Bearer custom-token"
12        }
13      },
14      "models": {
15        "my-model-name": {
16          "name": "My Model Display Name",
17          "limit": {
18            "context": 200000,
19            "output": 65536
20          }
21        }
22      }
23    }
24  }
25}

配置详情:

  • apiKey:使用 env 变量语法设置,了解更多。
  • headers:随每个请求发送的自定义头。
  • limit.context:模型接受的最大输入 token 数。
  • limit.output:模型可以生成的最大 token 数。

limit 字段允许 OpenCode 了解你还剩多少上下文。标准提供商会自动从 models.dev 获取这些信息。


# 故障排除#

如果你在配置提供商时遇到问题,请检查以下内容:

  1. 检查认证设置:运行 opencode auth list 查看提供商的凭证是否已添加到你的配置中。

    这不适用于像 Amazon Bedrock 这样依赖环境变量进行认证的提供商。

  2. 对于自定义提供商,检查 opencode 配置并:

    • 确保 /connect 命令中使用的提供商 ID 与 opencode 配置中的 ID 匹配。
    • 使用了正确的 npm 包。例如,Cerebras 使用 @ai-sdk/cerebras。对于所有其他 OpenAI 兼容提供商,使用 @ai-sdk/openai-compatible。
    • 检查 options.baseURL 字段中使用了正确的 API 端点。