AI 程式設計教學中文版
官方教學中文版模型與供應商

設定模型供應商

理解 OpenCode provider、憑據、模型選擇、本地模型和自定義 endpoint 的邊界。

📖 本篇術語速查表
英文 / 縮寫中文一句話解釋
Providers供應商提供模型的服務方。
接入connect配 key 接通供應商。
切換switch在供應商間切換。

不想讀完?把下面這段提示詞丟給 AI 幫你跑完——幫你給 OpenCode 接入並管理模型供應商。

你是 OpenCode 供應商接入顧問。

【角色】
OpenCode 供應商接入顧問,按最小夠用、安全優先的原則給可落地方案,每條結論都落到能照做的步驟或示例,不停留在空泛建議。

【輸入】
- 想接哪些供應商:___
- 已有的 key:___
- 是否需本地 / 私有:___
- 切換需求:___
- 經驗水平:___

【工作流程】
1. 說明供應商接入方式
2. 給配 key 步驟
3. 說明怎麼切換
4. 處理常見接入問題
5. 給驗證

【輸出規範】
▌一、接入方式
▌二、配 key
▌三、切換
▌四、常見問題 + 驗證

【硬約束】
- key 走環境變數不打記錄
- 按需接入不堆賬號
- 接通後實測驗證
- 不要替我臆測情況或編造不存在的功能,資訊不全先問清
- 不確定的設定或介面一律以官方文件為準,禁止照搬過時寫法
- 給的每條結論都要落到具體可照做的步驟或示例,不停留在「建議」「考慮一下」這類沒法直接執行的空泛表述

OpenCode 可以接很多 LLM provider。官方 providers 頁說明,OpenCode 使用 AI SDK 和 Models.dev,支援 75+ LLM providers,也支援本地模型。

這一篇用 8 分鐘換什麼:你會知道 provider、credential、model 和 baseURL 分別解決什麼問題,第一次該怎麼接入,以及 provider 出錯時先排哪一層。

先給結論:第一次只接一個 provider

新手不需要先把每個 provider 的設定都學一遍。先讓一條 provider 鏈路跑通,再比較價格、速度、模型質量和企業邊界。

flowchart LR
  Connect["/connect 儲存憑據"] --> Models["/models 確認模型"]
  Models --> Read["只讀專案理解"]
  Read --> Edit["低風險單檔案修改"]
  Edit --> Default["穩定後再寫預設 model"]
  Default --> More["再擴充套件備用 provider / 本地模型 / 企業閘道器"]

  style Connect fill:#dbeafe,stroke:#3b82f6
  style Read fill:#dcfce7,stroke:#22c55e,stroke-width:2px
  style More fill:#fef3c7,stroke:#f59e0b

同時設定五六個 provider,會讓問題變成“到底是哪家模型、網路、憑據、baseURL 或許可權出了錯”。

provider 解決什麼問題

Provider 是模型供應商入口。OpenAI、Anthropic、OpenRouter、Bedrock、Ollama、本地 OpenAI-compatible 服務,都屬於 provider 層。

四個概念要分清:

概念負責什麼
provider模型從哪裡來
credential怎麼認證
model具體用哪一個模型能力
baseURL請求打到哪裡

/connect 更適合管理憑據;opencode.json 更適合管理專案級偏好,例如預設模型、自定義 provider baseURL、provider options 或模型 alias。

不要把 API key 寫進 opencode.json。設定檔會進儲存庫、會被複制、會被髮給別人;憑據應該留在本機 auth store、環境變數或 secret manager。

怎麼判斷該選哪個 provider

按場景選擇:

  • 學習和日常開發:選 OpenCode Zen 或你已有賬號的主流 provider。
  • 國內網路、統一賬單、多模型聚合:考慮 OpenRouter、302.AI、Vercel AI Gateway、Cloudflare AI Gateway 或團隊內部 gateway。
  • 企業雲許可權、VPC(Virtual Private Cloud,虛擬私有云——把雲上資源放進只對你公司開放的隔離網路裡)、合規:考慮 Bedrock、Azure、Vertex 等企業 provider。
  • 隱私或離線實驗:考慮 Ollama(命令列起本地模型最簡單的工具)、LM Studio(桌面 GUI 跑本地模型)、llama.cpp(C++ 寫的高效能本地推理引擎,前面兩個底層都用它)、Atomic Chat 等本地模型入口。

本地模型的 tool calling 能力、上下文能力和速度要單獨驗證。能聊天不等於能穩定做 coding agent。

/connect 和設定檔怎麼分工

/connect 適合第一次上手:

/connect

連線後用 /models 看可用模型。也可以用 CLI 管理:

opencode auth login
opencode auth list

專案設定適合寫非敏感策略:

opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "model": "provider_id/model_id"
}

如果團隊確實需要同一預設模型,再把它寫進專案設定。個人偏好先放全域。

baseURL 什麼時候需要改

多數人不需要改 baseURL。只有這些情況才需要:

  • 你走代理服務或企業閘道器。
  • 你用 OpenAI-compatible 的本地模型服務。
  • 你在 Azure、Bedrock、VPC endpoint 等環境裡使用自定義 endpoint。
  • 你需要把請求統一送到內部 AI gateway。

baseURL 改錯時,常見表現是模型列表為空、認證失敗、請求 404、工具呼叫異常。排查時先回到官方預設 provider,確認 OpenCode 本身沒問題,再改自定義 endpoint。

新手常見坑

  • 只看 provider 數量:provider 多不代表體驗好。
  • 把 key 寫進專案設定:一旦提交就是洩露。
  • 選了模型但沒申請許可權:企業 provider 經常需要先部署或授權模型。
  • baseURL 寫錯:OpenCode 能啟動,但模型請求失敗。
  • 本地模型能聊天但不能穩定呼叫工具。
  • 同時設定多個聚合平臺:錯誤來源變多,排查會變慢。
  • 忽略供應商政策:某些訂閱或第三方外掛用法可能不被 provider 支援。

怎麼驗收

你至少要能確認:

  • 目前預設 provider 和預設 model 是什麼。
  • key 沒有出現在 opencode.json、git diff、記錄和截圖裡。
  • /models 能看到可用模型。
  • 模型完成過一次讀程式碼、一次改檔案、一次工具呼叫。
  • provider 出錯時能區分憑據、模型許可權、baseURL、網路和模型能力問題。

接下來去哪

官方資料

本頁目錄