モデル
LLMプロバイダーとモデルの設定。
OpenCodeはAI SDK (opens in a new tab)とModels.dev (opens in a new tab)を使用して75以上のLLMプロバイダーをサポートし、ローカルモデルの実行もサポートしています。
プロバイダー
ほとんどの人気プロバイダーはデフォルトでプリロードされています。/connectコマンドでプロバイダーの認証情報を追加した場合、OpenCode起動時に利用可能になります。
プロバイダーの詳細をご覧ください。
モデルの選択
プロバイダーを設定したら、以下を入力して使用したいモデルを選択できます:
/models推奨モデル
多くのモデルが存在し、毎週新しいモデルがリリースされています。
ヒント:推奨モデルの1つを使用することを検討してください。
ただし、コード生成とツール呼び出しの両方に優れているモデルは少数です。
以下はOpenCodeでうまく動作するいくつかのモデルです(順不同)。(これは網羅的なリストではなく、必ずしも最新ではありません):
- GPT 5.2
- GPT 5.1 Codex
- Claude Opus 4.5
- Claude Sonnet 4.5
- Minimax M2.1
- Gemini 3 Pro
デフォルトの設定
これらの1つをデフォルトモデルとして設定するには、OpenCode設定でmodelキーを設定します。
{
"$schema": "https://opencode.ai/config.json",
"model": "lmstudio/google/gemma-3n-e4b"
}ここでの完全なIDはprovider_id/model_idです。例えば、OpenCode Zenを使用している場合、GPT 5.1 Codexにはopencode/gpt-5.1-codexを使用します。
カスタムプロバイダーを設定した場合、provider_idは設定のprovider部分のキーで、model_idはprovider.modelsのキーです。
モデルの設定
設定を通じてモデルのオプションをグローバルに設定できます。
{
"$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,
},
},
},
},
},
},
}ここでは2つの組み込みモデルのグローバル設定を行っています:openaiプロバイダー経由でアクセスするgpt-5と、anthropicプロバイダー経由でアクセスするclaude-sonnet-4-20250514です。組み込みのプロバイダーとモデル名はModels.dev (opens in a new tab)で確認できます。
使用しているエージェントにもこれらのオプションを設定できます。エージェント設定はここでのグローバルオプションを上書きします。詳細はこちら。
組み込みバリアントを拡張するカスタムバリアントも定義できます。バリアントを使用すると、重複エントリを作成せずに同じモデルに異なる設定を構成できます:
{
"$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- 低い努力/トークンバジェットhigh- 高い努力/トークンバジェット
ヒント:このリストは網羅的ではありません。他の多くのプロバイダーにも組み込みデフォルトがあります。
カスタムバリアント
既存のバリアントを上書きしたり、独自のバリアントを追加できます:
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"openai": {
"models": {
"gpt-5": {
"variants": {
"thinking": {
"reasoningEffort": "high",
"textVerbosity": "low",
},
"fast": {
"disabled": true,
},
},
},
},
},
},
}バリアントの切り替え
キーバインドvariant_cycleを使用してバリアント間を素早く切り替えます。詳細はこちら。
モデルの読み込み
OpenCode起動時、以下の優先順位でモデルをチェックします:
-
--modelまたは-mコマンドラインフラグ。形式は設定ファイルと同じ:provider_id/model_id。 -
OpenCode設定のモデルリスト。
opencode.json{ "$schema": "https://opencode.ai/config.json", "model": "anthropic/claude-sonnet-4-20250514" }ここでの形式は
provider/modelです。 -
最後に使用したモデル。
-
内部優先度による最初のモデル。