模型

配置 LLM 提供商和模型。

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


# 提供商#

大多数流行的提供商都是默认预加载的。如果你通过 /connect 命令添加了提供商的凭据,它们将在你启动 OpenCode 时可用。

了解更多关于提供商。


# 选择模型#

配置好提供商后,你可以通过输入以下命令选择想要的模型:

/models

# 推荐模型#

选择模型时,同时考虑代码任务、工具调用需求和使用成本。先通过 /connect 配置提供商,再用 /models 确认当前环境中列出的模型。

以下是 2026-10-08 核验时 OpenCode Zen 官方目录↗列出、且未列入该页弃用名单的模型示例,供选型时参考,不是性能排名:

  • GPT 6.1 Sol:opencode/gpt-6.1-sol
  • Claude Sonnet 4.6:opencode/claude-sonnet-4-6
  • Gemini 3.1 Pro:opencode/gemini-3.1-pro

这些 ID 适用于 Zen 提供商;换用其他提供商时,应以对应的模型 ID 为准。模型清单和账户可用范围可能变化,请在自己的 OpenCode 会话中使用 /models 核对。本站此次仅核验官方文档,未调用这些模型测试效果或可用性。


# 设置默认模型#

要将其中一个设置为默认模型,你可以在 OpenCode 配置中设置 model 键。

json
1{
2  "$schema": "https://opencode.ai/config.json",
3  "model": "lmstudio/google/gemma-3n-e4b"
4}

这里完整的 ID 是 provider_id/model_id。例如,使用 OpenCode Zen时,先通过 /models 确认 GPT 6.1 Sol 可选,再将 model 设置为 opencode/gpt-6.1-sol。

旧示例说明: Zen 官方将 GPT 5.1 Codex 的弃用日期标为 2026-07-23,本页因此不再把 opencode/gpt-5.1-codex 作为推荐示例。核验时官方接口表和价格表仍保留该模型,不能据此断言它已完全无法调用;实际可用范围请通过 /models 和提供商当前说明确认。参见 Zen 弃用模型列表↗。

如果你配置了自定义提供商,provider_id 是配置中 provider 部分的键,model_id 是 provider.models 的键。


# 配置模型#

你可以通过配置全局配置模型的选项。

jsonc
1{
2  "$schema": "https://opencode.ai/config.json",
3  "provider": {
4    "openai": {
5      "models": {
6        "gpt-5": {
7          "options": {
8            "reasoningEffort": "high",
9            "textVerbosity": "low",
10            "reasoningSummary": "auto",
11            "include": ["reasoning.encrypted_content"]
12          }
13        }
14      }
15    },
16    "anthropic": {
17      "models": {
18        "claude-sonnet-4-5-20250929": {
19          "options": {
20            "thinking": {
21              "type": "enabled",
22              "budgetTokens": 16000
23            }
24          }
25        }
26      }
27    }
28  }
29}

这里我们为两个内置模型配置全局设置:通过 openai 提供商访问时的 gpt-5,以及通过 anthropic 提供商访问时的 claude-sonnet-4-20250514。内置的提供商和模型名称可以在 Models.dev↗ 上找到。

你也可以为你使用的任何代理配置这些选项。代理配置会覆盖这里的任何全局选项。了解更多。

你还可以定义扩展内置变体的自定义变体。变体让你为同一模型配置不同的设置,而无需创建重复条目:

jsonc
1{
2  "$schema": "https://opencode.ai/config.json",
3  "provider": {
4    "opencode": {
5      "models": {
6        "gpt-5": {
7          "variants": {
8            "high": {
9              "reasoningEffort": "high",
10              "textVerbosity": "low",
11              "reasoningSummary": "auto"
12            },
13            "low": {
14              "reasoningEffort": "low",
15              "textVerbosity": "low",
16              "reasoningSummary": "auto"
17            }
18          }
19        }
20      }
21    }
22  }
23}

# 变体#

许多模型支持具有不同配置的多个变体。OpenCode 为流行的提供商提供了内置的默认变体。

## 内置变体#

OpenCode 为许多提供商提供了默认变体:

Anthropic:

  • high - 高思考预算(默认)
  • max - 最大思考预算

OpenAI:

因模型而异,但大致:

  • none - 无推理
  • minimal - 最小推理努力
  • low - 低推理努力
  • medium - 中等推理努力
  • high - 高推理努力
  • xhigh - 超高推理努力

Google:

  • low - 较低的努力/令牌预算
  • high - 较高的努力/令牌预算

提示: 此列表不全面。许多其他提供商也有内置默认值。

## 自定义变体#

你可以覆盖现有变体或添加自己的:

jsonc
1{
2  "$schema": "https://opencode.ai/config.json",
3  "provider": {
4    "openai": {
5      "models": {
6        "gpt-5": {
7          "variants": {
8            "thinking": {
9              "reasoningEffort": "high",
10              "textVerbosity": "low"
11            },
12            "fast": {
13              "disabled": true
14            }
15          }
16        }
17      }
18    }
19  }
20}

## 循环变体#

使用快捷键 variant_cycle 快速在变体之间切换。了解更多。


# 加载模型#

当 OpenCode 启动时,它按以下优先级顺序检查模型:

  1. --model 或 -m 命令行标志。格式与配置文件相同:provider_id/model_id。

  2. OpenCode 配置中的模型列表。

    json
    1{
    2  "$schema": "https://opencode.ai/config.json",
    3  "model": "anthropic/claude-sonnet-4-20250514"
    4}

    这里的格式是 provider/model。

  3. 最后使用的模型。

  4. 使用内部优先级的第一个模型。