配置模型供應商
理解 OpenCode provider、憑據、模型選擇、本地模型和自定義 endpoint 的邊界。
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專案配置適合寫非敏感策略:
{
"$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、網路和模型能力問題。
接下來去哪
選擇模型
provider 連上後,再確認模型 ID、預設模型、variant 和載入優先順序。
OpenCode Zen
如果第一次不知道選什麼,可以先看官方精選模型入口的邊界。
模型策略
按任務風險、成本和速度分層,而不是每天追最新模型。
排查故障
provider、模型、認證、網路和快取問題按層級定位。
官方資料
- Providers:https://opencode.ai/docs/providers
- Models:https://opencode.ai/docs/models
- Config:https://opencode.ai/docs/config