Provider 配置指南

OpenCode 提供商:模型、密钥与配置的 7 项检查

OpenCode 提供商是 AI 编程助手与模型服务之间的连接层,它既不是模型本身,也不是 API Key。先按预算、隐私和运维条件选择 provider 路径,再把凭据交给官方鉴权流程或环境变量,选择提供商实际暴露的模型,最后用低风险任务验证。把这些决定拆开,模型列表为空时就不会误去修改不相关的配置。

主关键词
OpenCode 提供商
已核验 2026 年 8 月 15 日官方文档
约 18 分钟阅读

快速结论

OpenCode 提供商

搜索 OpenCode 提供商 的人,可能想知道支持哪些服务、怎样添加第三方 provider、OpenAI 兼容接口能否使用,或者为什么 provider 出现了却找不到模型。提供一张会快速过时的厂商清单并不能解决这些问题;更有用的是一套不依赖单一厂商的判断顺序。

OpenCode 官方 Providers 文档当前把 Credentials、Config、OpenCode 的 Zen、OpenCode 的 Go 和 provider directory 放在同一页。本指南在官方资料之外补充决策层:先分辨配置层级,再选择最小可用连接,核对模型 ID,最后留下验证证据,之后才把它用于有写入风险的编程任务。

OpenCode 终端连接提供商、凭据、模型和验证环节的技术示意图
Provider 负责连接模型服务;凭据、模型 ID 和验证是三个独立检查。
层级它解决什么问题应保留的证据
Provider请求发送到哪一个服务或端点?Provider ID、官方配置页、base URL
Credentials请求如何通过鉴权?OAuth 状态或环境变量名,不保存密钥本身
ModelOpenCode 应该调用哪个模型 ID?/models 或 provider 目录里的精确 ID
Config哪个作用域和优先级生效?全局/项目路径与最终配置
验证安全请求是否按预期完成?提示词、响应、耗时、错误和回滚记录

1. 分清 provider、model 与 credentials

Provider 是通往模型服务的路线;model 是该服务实际提供的具体能力;credentials 则证明当前请求被允许。把三者当成一个设置,排错就会失真:有效的 key 修不好错误的模型 ID,能看到模型也不能证明凭据没有过期。

配置作用域是第四个问题。Provider 可能在项目文件里有效,在全局文件里却没有加载;更高优先级的托管设置也可能覆盖你刚刚修改的值。记录文件、作用域、provider 名称、模型 ID 和验证日期,通常比把可能含有路径和策略信息的完整配置文件发到工单里更安全。

层级它解决什么问题应保留的证据
Provider请求发送到哪一个服务或端点?Provider ID、官方配置页、base URL
Credentials请求如何通过鉴权?OAuth 状态或环境变量名,不保存密钥本身
ModelOpenCode 应该调用哪个模型 ID?/models 或 provider 目录里的精确 ID
Config哪个作用域和优先级生效?全局/项目路径与最终配置
验证安全请求是否按预期完成?提示词、响应、耗时、错误和回滚记录

2. 改 JSON 前先选择 provider 路径

常见路径有四种。OpenCode 的 Go 和 OpenCode 的 Zen 是带有各自套餐和模型假设的第一方服务;托管第三方 provider 适合团队已有账单、区域控制或固定模型目录的场景;OpenAI 兼容或本地端点更灵活,但你需要自己负责 URL、模型发现、运行时和排错。

不要只看目录里的名称。先问清楚真正的约束是固定月费、按量控制、数据位置、离线使用、模型能力、延迟,还是团队已经在运维的服务。价格看似低的 provider,如果模型清单不稳定或运行 OpenCode 的环境无法验证端点,也可能不是好选择。

路径适合场景先检查什么主要取舍
OpenCode 的 Go想走第一方订阅路径当前额度和模型清单套餐限制会影响用量
OpenCode 的 Zen想要精选目录和按量付费当前价格和支出控制成本随请求变化
托管第三方团队已经在使用某个服务区域、鉴权、额度和模型 ID服务策略和稳定性不同
OpenAI 兼容需要兼容 API 或网关base URL 与 /v1/models 响应需要自己负责发现和运行时检查
本地运行时离线或本地数据优先进程、上下文和硬件质量和延迟取决于本机

3. 配置 provider,但不要把密钥放进 Git

官方配置结构把自定义 provider 放在 provider 字段下。具体的 npm adapter、options、鉴权变量和模型映射取决于服务商。应先读 provider 所有者的官方文档,只复制理解的字段,并在团队说明里写清楚为什么选择这个端点和 adapter。

把 secret 留在仓库之外,使用服务商支持的登录流程、环境变量或平台凭据存储。不要把有效 API Key 写进 opencode.json、截图、shell 历史或共享 session。如果密钥曾出现在日志中,应先轮换,再继续排错;只从文件删除并不会抹掉日志历史。

测试时一次只增加一个 provider。最小变更能把 schema 问题和服务故障分开,也能让回滚变得明确:删除新增 provider block,恢复之前的模型选择,再重复已知可用的请求。

{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "my-provider": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "provider-demo",
      "options": {
        "baseURL": "https://api.provider.test/v1"
      },
      "models": {
        "model-id": { "name": "Model name" }
      }
    }
  }
}

4. 绑定真实模型,并按 7 项检查完成验证

Provider 条目只有在 OpenCode 能发现真实模型并完成小请求后才算结束。依据当前 provider 文档核对 model ID 和鉴权方式,再用 /models 看 OpenCode 能选择什么。如果 provider 暴露多个变体,先选一个与任务的上下文、工具、延迟和成本相符的模型,不要一次把整个目录都打开。

第一次请求应当只读且容易比较:让模型解释一个小型本地文件,或只列出下一条验证命令而不执行。记录响应是否完整、工具是否可用、耗时,以及是否确实使用预期模型。有证据后再测试编辑或外部写入。

  1. 检查作用域确认设置属于全局、项目、自定义路径还是托管配置。
  2. 保护密钥使用 OAuth、环境变量或 provider 的凭据存储。
  3. 确认 provider核对 provider ID、adapter、端点和官方说明。
  4. 确认模型使用 provider 暴露的精确模型 ID,不要只填展示名称。
  5. 列出模型打开模型选择器或运行官方记录的 `/models` 流程。
  6. 只读测试使用小提示词,并将回答与已知预期进行比较。
  7. 留下回滚记录保存有效配置、测试结果和最小撤销步骤。
OpenCode 提供商 从作用域、凭据到模型测试的五步验证流程
每次按同一顺序检查:作用域、密钥、模型,最后执行低风险测试。

5. 按失败层级排错,不要一次改完所有设置

只要保留鉴权、发现、模型选择和传输之间的边界,provider 错误就更容易修复。401 或 OAuth 循环通常指向凭据或 scope;provider 完全不出现通常是配置作用域、schema 或加载顺序;模型选择器能打开但缺少目标模型,通常是目录或 model ID 问题;发现成功后才超时,则要查网络、代理、区域或服务健康度。

每次只改一个变量。先按官方说明验证端点或 provider 流程,再确认 OpenCode 读的是目标配置文件,然后列出模型,最后才测试提示词。不要通过继续添加 provider 来诊断一个坏 provider,这只会让模型列表和错误日志更难读。

症状可能层级第一个安全检查
401、OAuth 循环或密钥被拒凭据或 scope轮换泄露密钥,再重复官方鉴权流程
Provider 完全不出现配置作用域或 schema确认生效文件、provider key 和 JSONC 语法
Provider 出现但模型缺失模型目录或 ID使用 provider 的精确 ID 并刷新模型列表
模型能列出但请求超时网络或服务检查端点、代理、区域、状态和超时时间
回答成功但工具失败模型能力或权限先做只读任务并检查工具策略
费用或额度异常套餐或用量策略核对 provider 当前价格、额度和支出控制

6. 按任务选择 provider,并与相邻主题保持边界

如果日常用量适合第一方订阅和可预测额度,可以考虑 OpenCode 的 Go;如果更看重精选目录和按量控制,可以考虑 Zen;如果团队已有合规、账单、区域或模型需求,托管第三方 provider 更合适;如果必须离线或使用兼容网关,则可以接受本地或 OpenAI 兼容端点,同时承担运行时和模型服务的责任。这些是匹配决策,不是永久排名。

Provider 也会改变隐私假设。CLI 可以在本地运行,但请求仍可能发送到选中的模型服务。应阅读 provider policy,避免发送密钥和不必要的客户数据,第一次测试使用非生产仓库。本站的 models 页讲能力取舍,JSONC 页讲配置作用域,Ollama 页讲本地运行时,Go vs Zen 页讲两个第一方路径;本页通过内链连接它们,不重复整篇内容。

对于宽泛的 OpenCode 提供商 查询,真正有用的结果是可复现的连接,而不是一张会过时的赢家名单。目录、模型、价格、额度和登录要求都可能变化。配置当天重新核对官方页面,并在团队记录里写下日期。

OpenCode 提供商常见问题

OpenCode 提供商是什么?

Provider 是向 OpenCode 暴露模型的服务或端点,是连接层;model ID 和 credentials 是另外两个配置部分。

OpenCode 支持 OpenAI 兼容提供商吗?

官方 provider 文档包含 OpenAI 兼容 配置示例。使用前仍需向端点所有者核对 adapter、base URL、鉴权变量和模型 ID。

如何给 OpenCode 添加第三方 provider?

在应当拥有它的配置作用域下,将一个 provider 条目放入 provider 字段,使用官方 adapter 和端点,把凭据放在 Git 之外,然后列出模型并运行只读验证。

哪个 OpenCode 提供商 有免费层?

免费层和额度会变化。应把它当作时间敏感信息,先查当前价格和限制,再确认目标模型在同一地区和套餐下可用。

OpenCode 的 Go 和 Zen 哪个更好?

没有统一答案。Go 更适合可预测的订阅用量,Zen 更适合精选目录和按量控制;应比较当前模型、额度、隐私条款,并用同一组任务测试。

为什么 provider 出现了却没有模型?

可能是 model ID、adapter、端点、权限或目录请求错误。先确认精确 ID 和官方列出模型的方法,不要先改无关配置。

已核验来源

OpenCode 官方文档

Provider 目录、配置字段、模型选择、价格、额度和鉴权都可能变化。已于 2026 年 8 月 15 日检查,生产使用前请重新核对官方页面。

继续阅读相关指南