--- title: 模型 description: 配置 LLM 供應商和模型。 --- OpenCode 使用 [AI SDK](https://ai-sdk.dev/) 和 [Models.dev](https://models.dev) 來支援 **75+ LLM 供應商**,並且它支援執行本地模型。 --- ## 供應商 預設情況下會預先載入大多數流行的供應商。如果您已透過 `/connect` 指令添加了供應商的憑證,那麼它們將在您啟動 OpenCode 時可用。 了解有關 [供應商](/docs/providers) 的更多資訊。 --- ## 選擇模型 配置完供應商後,您可以透過輸入以下內容來選擇您想要的模型: ```bash frame="none" /models ``` --- ## 推薦模型 那裡有很多模型,每週都會有新模型問世。 :::tip 考慮使用我們推薦的模型之一。 ::: 然而,既擅長生成程式碼又擅長工具呼叫的只有少數。 以下是與 OpenCode 配合良好的幾個模型,排名不分先後。 (這不是詳盡的列表,也不一定是最新的): - GPT 5.2 - GPT 5.1 Codex - Claude Opus 4.5 - Claude Sonnet 4.5 - Minimax M2.1 - Gemini 3 Pro --- ## 設定預設值 要將其中之一設定為預設模型,您可以在您的 OpenCode 配置。 ```json title="opencode.json" {3} { "$schema": "https://opencode.ai/config.json", "model": "lmstudio/google/gemma-3n-e4b" } ``` 這裡完整的 ID 是 `provider_id/model_id`。例如,如果您使用 [OpenCode Zen](/docs/zen),則您將使用 `opencode/gpt-5.1-codex` 來表示 GPT 5.1 Codex。 如果您配置了 [自定義供應商](/docs/providers#custom),則 `provider_id` 是配置中 `provider` 部分的鍵,`model_id` 是 `provider.models` 中的鍵。 --- ## 配置模型 您可以透過 config.json 全局配置模型的選項。 ```jsonc title="opencode.jsonc" {7-12,19-24} { "$schema": "https://opencode.ai/config.json", "provider": { "openai": { "models": { "gpt-5": { "options": { "reasoningEffort": "high", "textVerbosity": "low", "reasoningSummary": "auto", "include": ["reasoning.encrypted_content"], }, }, }, }, "anthropic": { "models": { "claude-sonnet-4-5-20250929": { "options": { "thinking": { "type": "enabled", "budgetTokens": 16000, }, }, }, }, }, }, } ``` 在這裡,我們為兩個內建模型配置全局設定:`gpt-5`(透過 `openai` 供應商存取時)和 `claude-sonnet-4-20250514`(透過 `anthropic` 供應商存取時)。 內建供應商和模型名稱可以在 [Models.dev](https://models.dev) 上找到。 您還可以為您正在使用的任何代理配置這些選項。代理配置會覆寫此處的所有全局選項。 [了解更多](/docs/agents/#additional)。 您還可以定義擴展內建變體的自定義變體。變體允許您為同一模型配置不同的設定,而無需建立重複的項目: ```jsonc title="opencode.jsonc" {6-21} { "$schema": "https://opencode.ai/config.json", "provider": { "opencode": { "models": { "gpt-5": { "variants": { "high": { "reasoningEffort": "high", "textVerbosity": "low", "reasoningSummary": "auto", }, "low": { "reasoningEffort": "low", "textVerbosity": "low", "reasoningSummary": "auto", }, }, }, }, }, }, } ``` --- ## 變體 許多模型支援具有不同配置的多種變體。OpenCode 附帶了流行供應商的內建預設變體。 ### 內建變體 OpenCode 附帶了許多供應商的預設變體: **Anthropic**: - `high` - 高思考預算(預設) - `max` - 最大思考預算 **OpenAI**: 因模型而異,但大致如下: - `none` - 沒有推理 - `minimal` - 最少的推理工作 - `low` - 推理工作量低 - `medium` - 中等推理工作量 - `high` - 高推理能力 - `xhigh` - 極高的推理能力 **Google**: - `low` - 降低工作量/Tokens 預算 - `high` - 更高的工作量/Tokens 預算 :::tip 該列表並不全面。許多其他供應商也有內建的預設值。 ::: ### 自定義變體 您可以覆寫現有變體或添加您自己的變體: ```jsonc title="opencode.jsonc" {7-18} { "$schema": "https://opencode.ai/config.json", "provider": { "openai": { "models": { "gpt-5": { "variants": { "thinking": { "reasoningEffort": "high", "textVerbosity": "low", }, "fast": { "disabled": true, }, }, }, }, }, }, } ``` ### 循環變體 使用鍵綁定 `variant_cycle` 在變體之間快速切換。 [了解更多](/docs/keybinds)。 --- ## 載入模型 當 OpenCode 啟動時,它會按以下優先順序檢查模型: 1. `--model` 或 `-m` 命令列旗標。格式與設定檔中的相同:`provider_id/model_id`。 2. OpenCode 配置中的模型列表。 ```json title="opencode.json" { "$schema": "https://opencode.ai/config.json", "model": "anthropic/claude-sonnet-4-20250514" } ``` 這裡的格式是 `provider/model`。 3. 最後使用的模型。 4. 第一個模型使用內部優先順序。