OpenCode sử dụng AI SDKModels.dev để hỗ trợ 75+ LLM providers và chạy các models local.


Providers

Hầu hết các providers phổ biến đã được tải sẵn mặc định. Nếu bạn đã thêm credentials cho một provider thông qua lệnh /connect, chúng sẽ khả dụng khi bạn khởi động OpenCode.

Tìm hiểu thêm về providers.


Chọn model

Sau khi đã cấu hình provider, bạn có thể chọn model bằng cách gõ:

/models

Models được khuyên dùng

Có rất nhiều models ngoài kia, với models mới ra mắt hàng tuần.

:::tip Nên sử dụng một trong các models chúng tôi khuyến nghị. :::

Tuy nhiên, chỉ có một số ít trong số đó thực sự tốt cho cả việc tạo code và gọi tools.

Đây là một số models hoạt động tốt với OpenCode, không theo thứ tự cụ thể nào. (Đây không phải danh sách đầy đủ và có thể chưa được cập nhật mới nhất):

  • GPT 5.2
  • GPT 5.1 Codex
  • Claude Opus 4.5
  • Claude Sonnet 4.5
  • Minimax M2.1
  • Gemini 3 Pro

Đặt model mặc định

Để đặt một trong các models này làm model mặc định, bạn có thể thiết lập key model trong config OpenCode.

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

Ở đây, full ID có dạng provider_id/model_id. Ví dụ, nếu bạn sử dụng OpenCode Zen, bạn sẽ dùng opencode/gpt-5.1-codex cho GPT 5.1 Codex.

Nếu bạn đã cấu hình một custom provider, provider_id là key từ phần provider trong config của bạn, và model_id là key từ provider.models.


Cấu hình models

Bạn có thể cấu hình global các options của model thông qua config.

{
  "$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,
            },
          },
        },
      },
    },
  },
}

Ở đây chúng ta đang cấu hình global settings cho hai built-in models: gpt-5 khi truy cập qua provider openai, và claude-sonnet-4-20250514 khi truy cập qua provider anthropic. Tên provider và model built-in có thể tìm thấy trên Models.dev.

Bạn cũng có thể cấu hình các options này cho bất kỳ agents nào bạn đang sử dụng. Config của agent sẽ ghi đè các global options ở đây. Tìm hiểu thêm.

Bạn cũng có thể định nghĩa custom variants mở rộng từ các built-in. Variants cho phép bạn cấu hình các settings khác nhau cho cùng một model mà không cần tạo các entries trùng lặp:

{
  "$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",
            },
          },
        },
      },
    },
  },
}

Variants

Nhiều models hỗ trợ nhiều variants với các cấu hình khác nhau. OpenCode đi kèm với các default variants built-in cho các providers phổ biến.

Built-in variants

OpenCode đi kèm với default variants cho nhiều providers:

Anthropic:

  • high - Thinking budget cao (mặc định)
  • max - Thinking budget tối đa

OpenAI:

Thay đổi theo model nhưng đại khái:

  • none - Không reasoning
  • minimal - Reasoning effort tối thiểu
  • low - Reasoning effort thấp
  • medium - Reasoning effort trung bình
  • high - Reasoning effort cao
  • xhigh - Reasoning effort cực cao

Google:

  • low - Effort/token budget thấp hơn
  • high - Effort/token budget cao hơn

:::tip Danh sách này không đầy đủ. Nhiều providers khác cũng có built-in defaults. :::

Custom variants

Bạn có thể ghi đè các variants có sẵn hoặc thêm variants của riêng mình:

{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "openai": {
      "models": {
        "gpt-5": {
          "variants": {
            "thinking": {
              "reasoningEffort": "high",
              "textVerbosity": "low",
            },
            "fast": {
              "disabled": true,
            },
          },
        },
      },
    },
  },
}

Chuyển đổi variants

Sử dụng keybind variant_cycle để chuyển đổi nhanh giữa các variants. Tìm hiểu thêm.


Loading models

Khi OpenCode khởi động, nó kiểm tra các models theo thứ tự ưu tiên sau:

  1. Flag --model hoặc -m từ command line. Định dạng giống như trong config file: provider_id/model_id.

  2. Danh sách model trong config OpenCode.

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

    Định dạng ở đây là provider/model.

  3. Model được sử dụng gần nhất.

  4. Model đầu tiên theo internal priority.