OpenCode sử dụng AI SDK và Models.dev để hỗ trợ 75+ LLM providers và có thể chạy local models.
Để thêm một provider, bạn cần:
- Thêm API keys cho provider bằng lệnh
/connect. - Cấu hình provider trong config OpenCode của bạn.
Thông tin xác thực (Credentials)
Khi bạn thêm API keys của provider bằng lệnh /connect, chúng được lưu trong ~/.local/share/opencode/auth.json.
Cấu hình (Config)
Bạn có thể tùy chỉnh các providers thông qua section provider trong config OpenCode.
Base URL
Bạn có thể tùy chỉnh base URL cho bất kỳ provider nào bằng cách đặt option baseURL. Điều này hữu ích khi sử dụng proxy services hoặc custom endpoints.
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"anthropic": {
"options": {
"baseURL": "https://api.anthropic.com/v1"
}
}
}
}
OpenCode Zen
OpenCode Zen là danh sách các models do team OpenCode cung cấp, đã được test và xác nhận hoạt động tốt với OpenCode. Tìm hiểu thêm.
:::tip Nếu bạn mới bắt đầu, chúng tôi khuyên dùng OpenCode Zen. :::
-
Chạy lệnh
/connecttrong TUI, chọn opencode, và truy cập opencode.ai/auth./connect -
Đăng nhập, thêm thông tin thanh toán, và copy API key của bạn.
-
Dán API key của bạn.
┌ API key │ │ └ enter -
Chạy
/modelstrong TUI để xem danh sách models được recommend./models
OpenCode Zen hoạt động như bất kỳ provider nào khác trong OpenCode và hoàn toàn là tùy chọn.
Danh sách Providers
Hãy xem chi tiết một số providers. Nếu bạn muốn thêm provider vào danh sách, hãy mở PR.
:::note Không thấy provider của bạn? Hãy submit một PR. :::
302.AI
-
Truy cập 302.AI console, tạo tài khoản, và tạo API key.
-
Chạy lệnh
/connectvà tìm 302.AI./connect -
Nhập API key 302.AI của bạn.
┌ API key │ │ └ enter -
Chạy lệnh
/modelsđể chọn model./models
Amazon Bedrock
Để sử dụng Amazon Bedrock với OpenCode:
-
Truy cập Model catalog trong Amazon Bedrock console và request access cho các models bạn muốn.
:::tip Bạn cần có quyền truy cập vào model trong Amazon Bedrock. :::
-
Cấu hình authentication bằng một trong các phương pháp sau:
Environment Variables (Nhanh nhất)
Đặt một trong các environment variables khi chạy opencode:
# Option 1: Sử dụng AWS access keys AWS_ACCESS_KEY_ID=XXX AWS_SECRET_ACCESS_KEY=YYY opencode # Option 2: Sử dụng named AWS profile AWS_PROFILE=my-profile opencode # Option 3: Sử dụng Bedrock bearer token AWS_BEARER_TOKEN_BEDROCK=XXX opencodeHoặc thêm vào bash profile:
export AWS_PROFILE=my-dev-profile export AWS_REGION=us-east-1Configuration File (Khuyến nghị)
Để cấu hình cho project cụ thể hoặc persistent, sử dụng
opencode.json:{ "$schema": "https://opencode.ai/config.json", "provider": { "amazon-bedrock": { "options": { "region": "us-east-1", "profile": "my-aws-profile" } } } }Các options có sẵn:
region- AWS region (ví dụ:us-east-1,eu-west-1)profile- AWS named profile từ~/.aws/credentialsendpoint- Custom endpoint URL cho VPC endpoints (alias của optionbaseURL)
:::tip Options trong configuration file được ưu tiên hơn environment variables. :::
Nâng cao: VPC Endpoints
Nếu bạn sử dụng VPC endpoints cho Bedrock:
{ "$schema": "https://opencode.ai/config.json", "provider": { "amazon-bedrock": { "options": { "region": "us-east-1", "profile": "production", "endpoint": "https://bedrock-runtime.us-east-1.vpce-xxxxx.amazonaws.com" } } } }:::note Option
endpointlà alias của optionbaseURL, sử dụng thuật ngữ AWS. Nếu cảendpointvàbaseURLđược chỉ định,endpointđược ưu tiên. :::Các phương thức Authentication
AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY: Tạo IAM user và generate access keys trong AWS ConsoleAWS_PROFILE: Sử dụng named profiles từ~/.aws/credentials. Trước tiên cấu hình vớiaws configure --profile my-profilehoặcaws sso loginAWS_BEARER_TOKEN_BEDROCK: Generate long-term API keys từ Amazon Bedrock consoleAWS_WEB_IDENTITY_TOKEN_FILE/AWS_ROLE_ARN: Cho EKS IRSA (IAM Roles for Service Accounts) hoặc các môi trường Kubernetes khác với OIDC federation. Các environment variables này được tự động inject bởi Kubernetes khi sử dụng service account annotations.
Thứ tự ưu tiên Authentication
Amazon Bedrock sử dụng thứ tự authentication sau:
- Bearer Token -
AWS_BEARER_TOKEN_BEDROCKenvironment variable hoặc token từ lệnh/connect - AWS Credential Chain - Profile, access keys, shared credentials, IAM roles, Web Identity Tokens (EKS IRSA), instance metadata
:::note Khi bearer token được đặt (qua
/connecthoặcAWS_BEARER_TOKEN_BEDROCK), nó được ưu tiên hơn tất cả các phương thức AWS credential bao gồm cả configured profiles. ::: -
Chạy lệnh
/modelsđể chọn model bạn muốn./models
:::note
Đối với custom inference profiles, sử dụng model và provider name trong key và đặt property id là arn. Điều này đảm bảo caching chính xác:
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"amazon-bedrock": {
// ...
"models": {
"anthropic-claude-sonnet-4.5": {
"id": "arn:aws:bedrock:us-east-1:xxx:application-inference-profile/yyy"
}
}
}
}
}
:::
Anthropic
Chúng tôi khuyên đăng ký Claude Pro hoặc Max.
:::info Chúng tôi nhận được báo cáo một số người dùng bị block subscription khi sử dụng với OpenCode. :::
-
Sau khi đăng ký, chạy lệnh
/connectvà chọn Anthropic./connect -
Tại đây bạn có thể chọn option Claude Pro/Max và nó sẽ mở browser yêu cầu bạn xác thực.
┌ Select auth method │ │ Claude Pro/Max │ Create an API Key │ Manually enter API Key └ -
Bây giờ tất cả Anthropic models sẽ có sẵn khi bạn sử dụng lệnh
/models./models
Sử dụng API keys
Bạn cũng có thể chọn Create an API Key nếu không có subscription Pro/Max. Nó cũng sẽ mở browser và yêu cầu đăng nhập Anthropic và cung cấp code để paste vào terminal.
Hoặc nếu bạn đã có API key, bạn có thể chọn Manually enter API Key và paste vào terminal.
Azure OpenAI
:::note Nếu gặp lỗi "I'm sorry, but I cannot assist with that request", thử đổi content filter từ DefaultV2 sang Default trong Azure resource. :::
-
Truy cập Azure portal và tạo resource Azure OpenAI. Bạn cần:
- Resource name: Trở thành một phần của API endpoint (
https://RESOURCE_NAME.openai.azure.com/) - API key:
KEY 1hoặcKEY 2từ resource
- Resource name: Trở thành một phần của API endpoint (
-
Truy cập Azure AI Foundry và deploy một model.
:::note Deployment name phải trùng với model name để opencode hoạt động đúng. :::
-
Chạy lệnh
/connectvà tìm Azure./connect -
Nhập API key của bạn.
┌ API key │ │ └ enter -
Đặt resource name làm environment variable:
AZURE_RESOURCE_NAME=XXX opencodeHoặc thêm vào bash profile:
export AZURE_RESOURCE_NAME=XXX -
Chạy lệnh
/modelsđể chọn deployed model./models
Azure Cognitive Services
-
Truy cập Azure portal và tạo resource Azure OpenAI. Bạn cần:
- Resource name: Trở thành một phần của API endpoint (
https://AZURE_COGNITIVE_SERVICES_RESOURCE_NAME.cognitiveservices.azure.com/) - API key:
KEY 1hoặcKEY 2từ resource
- Resource name: Trở thành một phần của API endpoint (
-
Truy cập Azure AI Foundry và deploy một model.
:::note Deployment name phải trùng với model name để opencode hoạt động đúng. :::
-
Chạy lệnh
/connectvà tìm Azure Cognitive Services./connect -
Nhập API key của bạn.
┌ API key │ │ └ enter -
Đặt resource name làm environment variable:
AZURE_COGNITIVE_SERVICES_RESOURCE_NAME=XXX opencodeHoặc thêm vào bash profile:
export AZURE_COGNITIVE_SERVICES_RESOURCE_NAME=XXX -
Chạy lệnh
/modelsđể chọn deployed model./models
Baseten
-
Truy cập Baseten, tạo tài khoản, và tạo API key.
-
Chạy lệnh
/connectvà tìm Baseten./connect -
Nhập API key Baseten của bạn.
┌ API key │ │ └ enter -
Chạy lệnh
/modelsđể chọn model./models
Cerebras
-
Truy cập Cerebras console, tạo tài khoản, và tạo API key.
-
Chạy lệnh
/connectvà tìm Cerebras./connect -
Nhập API key Cerebras của bạn.
┌ API key │ │ └ enter -
Chạy lệnh
/modelsđể chọn model như Qwen 3 Coder 480B./models
Cloudflare AI Gateway
Cloudflare AI Gateway cho phép bạn truy cập models từ OpenAI, Anthropic, Workers AI, và nhiều hơn qua một endpoint thống nhất. Với Unified Billing bạn không cần API keys riêng cho mỗi provider.
-
Truy cập Cloudflare dashboard, điều hướng đến AI > AI Gateway, và tạo gateway mới.
-
Đặt Account ID và Gateway ID làm environment variables.
export CLOUDFLARE_ACCOUNT_ID=your-32-character-account-id export CLOUDFLARE_GATEWAY_ID=your-gateway-id -
Chạy lệnh
/connectvà tìm Cloudflare AI Gateway./connect -
Nhập Cloudflare API token của bạn.
┌ API key │ │ └ enterHoặc đặt làm environment variable.
export CLOUDFLARE_API_TOKEN=your-api-token -
Chạy lệnh
/modelsđể chọn model./modelsBạn cũng có thể thêm models thông qua opencode config.
{ "$schema": "https://opencode.ai/config.json", "provider": { "cloudflare-ai-gateway": { "models": { "openai/gpt-4o": {}, "anthropic/claude-sonnet-4": {} } } } }
Cortecs
-
Truy cập Cortecs console, tạo tài khoản, và tạo API key.
-
Chạy lệnh
/connectvà tìm Cortecs./connect -
Nhập API key Cortecs của bạn.
┌ API key │ │ └ enter -
Chạy lệnh
/modelsđể chọn model như Kimi K2 Instruct./models
DeepSeek
-
Truy cập DeepSeek console, tạo tài khoản, và click Create new API key.
-
Chạy lệnh
/connectvà tìm DeepSeek./connect -
Nhập API key DeepSeek của bạn.
┌ API key │ │ └ enter -
Chạy lệnh
/modelsđể chọn DeepSeek model như DeepSeek Reasoner./models
Deep Infra
-
Truy cập Deep Infra dashboard, tạo tài khoản, và tạo API key.
-
Chạy lệnh
/connectvà tìm Deep Infra./connect -
Nhập API key Deep Infra của bạn.
┌ API key │ │ └ enter -
Chạy lệnh
/modelsđể chọn model./models
Firmware
-
Truy cập Firmware dashboard, tạo tài khoản, và tạo API key.
-
Chạy lệnh
/connectvà tìm Firmware./connect -
Nhập API key Firmware của bạn.
┌ API key │ │ └ enter -
Chạy lệnh
/modelsđể chọn model./models
Fireworks AI
-
Truy cập Fireworks AI console, tạo tài khoản, và click Create API Key.
-
Chạy lệnh
/connectvà tìm Fireworks AI./connect -
Nhập API key Fireworks AI của bạn.
┌ API key │ │ └ enter -
Chạy lệnh
/modelsđể chọn model như Kimi K2 Instruct./models
GitLab Duo
GitLab Duo cung cấp AI-powered agentic chat với native tool calling capabilities thông qua Anthropic proxy của GitLab.
-
Chạy lệnh
/connectvà chọn GitLab./connect -
Chọn phương thức authentication:
┌ Select auth method │ │ OAuth (Recommended) │ Personal Access Token └Sử dụng OAuth (Khuyến nghị)
Chọn OAuth và browser sẽ mở để authorization.
Sử dụng Personal Access Token
- Truy cập GitLab User Settings > Access Tokens
- Click Add new token
- Name:
OpenCode, Scopes:api - Copy token (bắt đầu với
glpat-) - Nhập vào terminal
-
Chạy lệnh
/modelsđể xem các models có sẵn./modelsCó ba Claude-based models:
- duo-chat-haiku-4-5 (Mặc định) - Phản hồi nhanh cho các tác vụ đơn giản
- duo-chat-sonnet-4-5 - Cân bằng cho hầu hết workflows
- duo-chat-opus-4-5 - Mạnh nhất cho phân tích phức tạp
:::note Bạn cũng có thể chỉ định 'GITLAB_TOKEN' environment variable nếu không muốn lưu token trong opencode auth storage. :::
Self-Hosted GitLab
:::note[compliance note]
OpenCode sử dụng model nhỏ cho một số AI tasks như tạo session title. Mặc định nó được cấu hình sử dụng gpt-5-nano, hosted bởi Zen. Để khóa OpenCode chỉ sử dụng GitLab-hosted instance của bạn, thêm vào file opencode.json. Cũng khuyến nghị disable session sharing.
{
"$schema": "https://opencode.ai/config.json",
"small_model": "gitlab/duo-chat-haiku-4-5",
"share": "disabled"
}
:::
Cho self-hosted GitLab instances:
export GITLAB_INSTANCE_URL=https://gitlab.company.com
export GITLAB_TOKEN=glpat-...
Nếu instance của bạn chạy custom AI Gateway:
GITLAB_AI_GATEWAY_URL=https://ai-gateway.company.com
Hoặc thêm vào bash profile:
export GITLAB_INSTANCE_URL=https://gitlab.company.com
export GITLAB_AI_GATEWAY_URL=https://ai-gateway.company.com
export GITLAB_TOKEN=glpat-...
:::note GitLab administrator phải enable:
- Duo Agent Platform cho user, group, hoặc instance
- Feature flags (qua Rails console):
agent_platform_claude_codethird_party_agents_enabled:::
OAuth cho Self-Hosted instances
Để OAuth hoạt động với self-hosted instance, bạn cần tạo application mới (Settings → Applications) với callback URL http://127.0.0.1:8080/callback và các scopes sau:
- api (Access the API on your behalf)
- read_user (Read your personal information)
- read_repository (Allows read-only access to the repository)
Sau đó expose application ID làm environment variable:
export GITLAB_OAUTH_CLIENT_ID=your_application_id_here
Xem thêm tài liệu trên opencode-gitlab-auth.
Cấu hình
Tùy chỉnh thông qua opencode.json:
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"gitlab": {
"options": {
"instanceUrl": "https://gitlab.com",
"featureFlags": {
"duo_agent_platform_agentic_chat": true,
"duo_agent_platform": true
}
}
}
}
}
GitLab API Tools (Tùy chọn, nhưng rất khuyến nghị)
Để truy cập GitLab tools (merge requests, issues, pipelines, CI/CD, v.v.):
{
"$schema": "https://opencode.ai/config.json",
"plugin": ["@gitlab/opencode-gitlab-plugin"]
}
Plugin này cung cấp các capabilities quản lý GitLab repository toàn diện bao gồm MR reviews, issue tracking, pipeline monitoring, và nhiều hơn.
GitHub Copilot
Để sử dụng GitHub Copilot subscription với opencode:
:::note Một số models có thể cần Pro+ subscription để sử dụng.
Một số models cần được enable thủ công trong GitHub Copilot settings. :::
-
Chạy lệnh
/connectvà tìm GitHub Copilot./connect -
Truy cập github.com/login/device và nhập code.
┌ Login with GitHub Copilot │ │ https://github.com/login/device │ │ Enter code: 8F43-6FCF │ └ Waiting for authorization... -
Bây giờ chạy lệnh
/modelsđể chọn model bạn muốn./models
Google Vertex AI
Để sử dụng Google Vertex AI với OpenCode:
-
Truy cập Model Garden trong Google Cloud Console và kiểm tra các models có sẵn trong region của bạn.
:::note Bạn cần có Google Cloud project với Vertex AI API đã enabled. :::
-
Đặt các environment variables cần thiết:
GOOGLE_CLOUD_PROJECT: Google Cloud project ID của bạnVERTEX_LOCATION(tùy chọn): Region cho Vertex AI (mặc định làglobal)- Authentication (chọn một):
GOOGLE_APPLICATION_CREDENTIALS: Đường dẫn đến file JSON service account key- Xác thực bằng gcloud CLI:
gcloud auth application-default login
Đặt khi chạy opencode.
GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json GOOGLE_CLOUD_PROJECT=your-project-id opencodeHoặc thêm vào bash profile.
export GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json export GOOGLE_CLOUD_PROJECT=your-project-id export VERTEX_LOCATION=global
:::tip
Region global cải thiện availability và giảm errors mà không tốn thêm chi phí. Sử dụng regional endpoints (ví dụ: us-central1) cho yêu cầu data residency. Tìm hiểu thêm
:::
-
Chạy lệnh
/modelsđể chọn model bạn muốn./models
Groq
-
Truy cập Groq console, click Create API Key, và copy key.
-
Chạy lệnh
/connectvà tìm Groq./connect -
Nhập API key cho provider.
┌ API key │ │ └ enter -
Chạy lệnh
/modelsđể chọn model bạn muốn./models
Hugging Face
Hugging Face Inference Providers cung cấp quyền truy cập vào open models được hỗ trợ bởi 17+ providers.
-
Truy cập Hugging Face settings để tạo token với quyền gọi Inference Providers.
-
Chạy lệnh
/connectvà tìm Hugging Face./connect -
Nhập Hugging Face token của bạn.
┌ API key │ │ └ enter -
Chạy lệnh
/modelsđể chọn model như Kimi-K2-Instruct hoặc GLM-4.6./models
Helicone
Helicone là nền tảng LLM observability cung cấp logging, monitoring, và analytics cho AI applications. Helicone AI Gateway tự động route requests đến provider phù hợp dựa trên model.
-
Truy cập Helicone, tạo tài khoản, và tạo API key từ dashboard.
-
Chạy lệnh
/connectvà tìm Helicone./connect -
Nhập API key Helicone của bạn.
┌ API key │ │ └ enter -
Chạy lệnh
/modelsđể chọn model./models
Để biết thêm providers và tính năng nâng cao như caching và rate limiting, xem Helicone documentation.
Cấu hình tùy chọn
Trong trường hợp bạn thấy feature hoặc model từ Helicone chưa được cấu hình tự động qua opencode, bạn luôn có thể tự cấu hình.
Đây là Helicone's Model Directory, bạn cần điều này để lấy IDs của các models bạn muốn thêm.
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"helicone": {
"npm": "@ai-sdk/openai-compatible",
"name": "Helicone",
"options": {
"baseURL": "https://ai-gateway.helicone.ai",
},
"models": {
"gpt-4o": {
// Model ID (từ trang model directory của Helicone)
"name": "GPT-4o", // Tên tùy chỉnh cho model
},
"claude-sonnet-4-20250514": {
"name": "Claude Sonnet 4",
},
},
},
},
}
Custom Headers
Helicone hỗ trợ custom headers cho các tính năng như caching, user tracking, và session management. Thêm chúng vào provider config sử dụng options.headers:
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"helicone": {
"npm": "@ai-sdk/openai-compatible",
"name": "Helicone",
"options": {
"baseURL": "https://ai-gateway.helicone.ai",
"headers": {
"Helicone-Cache-Enabled": "true",
"Helicone-User-Id": "opencode",
},
},
},
},
}
Session tracking
Tính năng Sessions của Helicone cho phép bạn nhóm các LLM requests liên quan. Sử dụng plugin opencode-helicone-session để tự động log mỗi conversation OpenCode thành session trong Helicone.
npm install -g opencode-helicone-session
Thêm vào config.
{
"plugin": ["opencode-helicone-session"]
}
Plugin inject Helicone-Session-Id và Helicone-Session-Name headers vào requests. Trong trang Sessions của Helicone, bạn sẽ thấy mỗi conversation OpenCode được liệt kê như một session riêng.
Các Helicone headers phổ biến
| Header | Mô tả |
|---|---|
Helicone-Cache-Enabled | Enable response caching (true/false) |
Helicone-User-Id | Track metrics theo user |
Helicone-Property-[Name] | Thêm custom properties (ví dụ: Helicone-Property-Environment) |
Helicone-Prompt-Id | Liên kết requests với prompt versions |
Xem Helicone Header Directory để biết tất cả headers có sẵn.
llama.cpp
Bạn có thể cấu hình opencode để sử dụng local models thông qua tiện ích llama-server của llama.cpp
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"llama.cpp": {
"npm": "@ai-sdk/openai-compatible",
"name": "llama-server (local)",
"options": {
"baseURL": "http://127.0.0.1:8080/v1"
},
"models": {
"qwen3-coder:a3b": {
"name": "Qwen3-Coder: a3b-30b (local)",
"limit": {
"context": 128000,
"output": 65536
}
}
}
}
}
}
Trong ví dụ này:
llama.cpplà custom provider ID. Có thể là bất kỳ string nào bạn muốn.npmchỉ định package sử dụng cho provider này. Ở đây,@ai-sdk/openai-compatibleđược dùng cho bất kỳ OpenAI-compatible API nào.namelà display name cho provider trong UI.options.baseURLlà endpoint cho local server.modelslà map của model IDs đến configurations của chúng. Model name sẽ hiển thị trong danh sách chọn model.
IO.NET
IO.NET cung cấp 17 models được tối ưu cho các use cases khác nhau:
-
Truy cập IO.NET console, tạo tài khoản, và tạo API key.
-
Chạy lệnh
/connectvà tìm IO.NET./connect -
Nhập API key IO.NET của bạn.
┌ API key │ │ └ enter -
Chạy lệnh
/modelsđể chọn model./models
LM Studio
Bạn có thể cấu hình opencode để sử dụng local models thông qua LM Studio.
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"lmstudio": {
"npm": "@ai-sdk/openai-compatible",
"name": "LM Studio (local)",
"options": {
"baseURL": "http://127.0.0.1:1234/v1"
},
"models": {
"google/gemma-3n-e4b": {
"name": "Gemma 3n-e4b (local)"
}
}
}
}
}
Trong ví dụ này:
lmstudiolà custom provider ID. Có thể là bất kỳ string nào bạn muốn.npmchỉ định package sử dụng cho provider này. Ở đây,@ai-sdk/openai-compatibleđược dùng cho bất kỳ OpenAI-compatible API nào.namelà display name cho provider trong UI.options.baseURLlà endpoint cho local server.modelslà map của model IDs đến configurations của chúng. Model name sẽ hiển thị trong danh sách chọn model.
Moonshot AI
Để sử dụng Kimi K2 từ Moonshot AI:
-
Truy cập Moonshot AI console, tạo tài khoản, và click Create API key.
-
Chạy lệnh
/connectvà tìm Moonshot AI./connect -
Nhập API key Moonshot của bạn.
┌ API key │ │ └ enter -
Chạy lệnh
/modelsđể chọn Kimi K2./models
MiniMax
-
Truy cập MiniMax API Console, tạo tài khoản, và tạo API key.
-
Chạy lệnh
/connectvà tìm MiniMax./connect -
Nhập API key MiniMax của bạn.
┌ API key │ │ └ enter -
Chạy lệnh
/modelsđể chọn model như M2.1./models
Nebius Token Factory
-
Truy cập Nebius Token Factory console, tạo tài khoản, và click Add Key.
-
Chạy lệnh
/connectvà tìm Nebius Token Factory./connect -
Nhập API key Nebius Token Factory của bạn.
┌ API key │ │ └ enter -
Chạy lệnh
/modelsđể chọn model như Kimi K2 Instruct./models
Ollama
Bạn có thể cấu hình opencode để sử dụng local models thông qua Ollama.
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"ollama": {
"npm": "@ai-sdk/openai-compatible",
"name": "Ollama (local)",
"options": {
"baseURL": "http://localhost:11434/v1"
},
"models": {
"llama2": {
"name": "Llama 2"
}
}
}
}
}
Trong ví dụ này:
ollamalà custom provider ID. Có thể là bất kỳ string nào bạn muốn.npmchỉ định package sử dụng cho provider này. Ở đây,@ai-sdk/openai-compatibleđược dùng cho bất kỳ OpenAI-compatible API nào.namelà display name cho provider trong UI.options.baseURLlà endpoint cho local server.modelslà map của model IDs đến configurations của chúng. Model name sẽ hiển thị trong danh sách chọn model.
:::tip
Nếu tool calls không hoạt động, thử tăng num_ctx trong Ollama. Bắt đầu khoảng 16k - 32k.
:::
Ollama Cloud
Để sử dụng Ollama Cloud với OpenCode:
-
Truy cập https://ollama.com/ và đăng nhập hoặc tạo tài khoản.
-
Điều hướng đến Settings > Keys và click Add API Key để tạo API key mới.
-
Copy API key để sử dụng trong OpenCode.
-
Chạy lệnh
/connectvà tìm Ollama Cloud./connect -
Nhập API key Ollama Cloud của bạn.
┌ API key │ │ └ enter -
Quan trọng: Trước khi sử dụng cloud models trong OpenCode, bạn phải pull model information locally:
ollama pull gpt-oss:20b-cloud -
Chạy lệnh
/modelsđể chọn Ollama Cloud model./models
OpenAI
Chúng tôi khuyên đăng ký ChatGPT Plus hoặc Pro.
-
Sau khi đăng ký, chạy lệnh
/connectvà chọn OpenAI./connect -
Tại đây bạn có thể chọn option ChatGPT Plus/Pro và nó sẽ mở browser yêu cầu bạn xác thực.
┌ Select auth method │ │ ChatGPT Plus/Pro │ Manually enter API Key └ -
Bây giờ tất cả OpenAI models sẽ có sẵn khi bạn sử dụng lệnh
/models./models
Sử dụng API keys
Nếu bạn đã có API key, bạn có thể chọn Manually enter API Key và paste vào terminal.
OpenCode Zen
OpenCode Zen là danh sách tested và verified models do team OpenCode cung cấp. Tìm hiểu thêm.
-
Đăng nhập OpenCode Zen và click Create API Key.
-
Chạy lệnh
/connectvà tìm OpenCode Zen./connect -
Nhập API key OpenCode của bạn.
┌ API key │ │ └ enter -
Chạy lệnh
/modelsđể chọn model như Qwen 3 Coder 480B./models
OpenRouter
-
Truy cập OpenRouter dashboard, click Create API Key, và copy key.
-
Chạy lệnh
/connectvà tìm OpenRouter./connect -
Nhập API key cho provider.
┌ API key │ │ └ enter -
Nhiều OpenRouter models được preload mặc định, chạy lệnh
/modelsđể chọn model bạn muốn./modelsBạn cũng có thể thêm additional models thông qua opencode config.
{ "$schema": "https://opencode.ai/config.json", "provider": { "openrouter": { "models": { "somecoolnewmodel": {} } } } } -
Bạn cũng có thể tùy chỉnh thông qua opencode config. Đây là ví dụ chỉ định provider
{ "$schema": "https://opencode.ai/config.json", "provider": { "openrouter": { "models": { "moonshotai/kimi-k2": { "options": { "provider": { "order": ["baseten"], "allow_fallbacks": false } } } } } } }
SAP AI Core
SAP AI Core cung cấp quyền truy cập 40+ models từ OpenAI, Anthropic, Google, Amazon, Meta, Mistral, và AI21 qua nền tảng thống nhất.
-
Truy cập SAP BTP Cockpit, điều hướng đến SAP AI Core service instance, và tạo service key.
:::tip Service key là JSON object chứa
clientid,clientsecret,url, vàserviceurls.AI_API_URL. Bạn có thể tìm AI Core instance trong Services > Instances and Subscriptions trong BTP Cockpit. ::: -
Chạy lệnh
/connectvà tìm SAP AI Core./connect -
Nhập service key JSON của bạn.
┌ Service key │ │ └ enterHoặc đặt
AICORE_SERVICE_KEYenvironment variable:AICORE_SERVICE_KEY='{"clientid":"...","clientsecret":"...","url":"...","serviceurls":{"AI_API_URL":"..."}}' opencodeHoặc thêm vào bash profile:
export AICORE_SERVICE_KEY='{"clientid":"...","clientsecret":"...","url":"...","serviceurls":{"AI_API_URL":"..."}}' -
Tùy chọn đặt deployment ID và resource group:
AICORE_DEPLOYMENT_ID=your-deployment-id AICORE_RESOURCE_GROUP=your-resource-group opencode:::note Các settings này là tùy chọn và nên được cấu hình theo SAP AI Core setup của bạn. :::
-
Chạy lệnh
/modelsđể chọn từ 40+ models có sẵn./models
OVHcloud AI Endpoints
-
Truy cập OVHcloud panel. Điều hướng đến section
Public Cloud,AI & Machine Learning>AI Endpointsvà trong tabAPI Keys, click Create a new API key. -
Chạy lệnh
/connectvà tìm OVHcloud AI Endpoints./connect -
Nhập API key OVHcloud AI Endpoints của bạn.
┌ API key │ │ └ enter -
Chạy lệnh
/modelsđể chọn model như gpt-oss-120b./models
Scaleway
Để sử dụng Scaleway Generative APIs với Opencode:
-
Truy cập Scaleway Console IAM settings để tạo API key mới.
-
Chạy lệnh
/connectvà tìm Scaleway./connect -
Nhập API key Scaleway của bạn.
┌ API key │ │ └ enter -
Chạy lệnh
/modelsđể chọn model như devstral-2-123b-instruct-2512 hoặc gpt-oss-120b./models
Together AI
-
Truy cập Together AI console, tạo tài khoản, và click Add Key.
-
Chạy lệnh
/connectvà tìm Together AI./connect -
Nhập API key Together AI của bạn.
┌ API key │ │ └ enter -
Chạy lệnh
/modelsđể chọn model như Kimi K2 Instruct./models
Venice AI
-
Truy cập Venice AI console, tạo tài khoản, và tạo API key.
-
Chạy lệnh
/connectvà tìm Venice AI./connect -
Nhập API key Venice AI của bạn.
┌ API key │ │ └ enter -
Chạy lệnh
/modelsđể chọn model như Llama 3.3 70B./models
Vercel AI Gateway
Vercel AI Gateway cho phép bạn truy cập models từ OpenAI, Anthropic, Google, xAI, và nhiều hơn qua endpoint thống nhất. Models được cung cấp theo list price không có markup.
-
Truy cập Vercel dashboard, điều hướng đến tab AI Gateway, và click API keys để tạo API key mới.
-
Chạy lệnh
/connectvà tìm Vercel AI Gateway./connect -
Nhập API key Vercel AI Gateway của bạn.
┌ API key │ │ └ enter -
Chạy lệnh
/modelsđể chọn model./models
Bạn cũng có thể tùy chỉnh models thông qua opencode config. Đây là ví dụ chỉ định thứ tự routing provider.
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"vercel": {
"models": {
"anthropic/claude-sonnet-4": {
"options": {
"order": ["anthropic", "vertex"]
}
}
}
}
}
}
Một số routing options hữu ích:
| Option | Mô tả |
|---|---|
order | Thứ tự providers để thử |
only | Giới hạn chỉ providers cụ thể |
zeroDataRetention | Chỉ sử dụng providers có zero data retention policies |
xAI
-
Truy cập xAI console, tạo tài khoản, và tạo API key.
-
Chạy lệnh
/connectvà tìm xAI./connect -
Nhập API key xAI của bạn.
┌ API key │ │ └ enter -
Chạy lệnh
/modelsđể chọn model như Grok Beta./models
Z.AI
-
Truy cập Z.AI API console, tạo tài khoản, và click Create a new API key.
-
Chạy lệnh
/connectvà tìm Z.AI./connectNếu bạn đã đăng ký GLM Coding Plan, chọn Z.AI Coding Plan.
-
Nhập API key Z.AI của bạn.
┌ API key │ │ └ enter -
Chạy lệnh
/modelsđể chọn model như GLM-4.7./models
ZenMux
-
Truy cập ZenMux dashboard, click Create API Key, và copy key.
-
Chạy lệnh
/connectvà tìm ZenMux./connect -
Nhập API key cho provider.
┌ API key │ │ └ enter -
Nhiều ZenMux models được preload mặc định, chạy lệnh
/modelsđể chọn model bạn muốn./modelsBạn cũng có thể thêm additional models thông qua opencode config.
{ "$schema": "https://opencode.ai/config.json", "provider": { "zenmux": { "models": { "somecoolnewmodel": {} } } } }
Custom provider
Để thêm bất kỳ provider OpenAI-compatible nào không có trong lệnh /connect:
:::tip Bạn có thể sử dụng bất kỳ OpenAI-compatible provider nào với opencode. Hầu hết các AI providers hiện đại đều cung cấp OpenAI-compatible APIs. :::
-
Chạy lệnh
/connectvà cuộn xuống Other.$ /connect ┌ Add credential │ ◆ Select provider │ ... │ ● Other └ -
Nhập unique ID cho provider.
$ /connect ┌ Add credential │ ◇ Enter provider id │ myprovider └:::note Chọn ID dễ nhớ, bạn sẽ sử dụng trong config file. :::
-
Nhập API key cho provider.
$ /connect ┌ Add credential │ ▲ This only stores a credential for myprovider - you will need to configure it in opencode.json, check the docs for examples. │ ◇ Enter your API key │ sk-... └ -
Tạo hoặc cập nhật file
opencode.jsontrong project directory:{ "$schema": "https://opencode.ai/config.json", "provider": { "myprovider": { "npm": "@ai-sdk/openai-compatible", "name": "My AI Provider Display Name", "options": { "baseURL": "https://api.myprovider.com/v1" }, "models": { "my-model-name": { "name": "My Model Display Name" } } } } }Đây là các configuration options:
- npm: AI SDK package sử dụng,
@ai-sdk/openai-compatiblecho OpenAI-compatible providers - name: Display name trong UI.
- models: Các models có sẵn.
- options.baseURL: API endpoint URL.
- options.apiKey: Tùy chọn đặt API key, nếu không sử dụng auth.
- options.headers: Tùy chọn đặt custom headers.
Xem thêm advanced options trong ví dụ bên dưới.
- npm: AI SDK package sử dụng,
-
Chạy lệnh
/modelsvà custom provider với models sẽ xuất hiện trong danh sách chọn.
Ví dụ
Đây là ví dụ đặt apiKey, headers, và model limit options.
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"myprovider": {
"npm": "@ai-sdk/openai-compatible",
"name": "My AI Provider Display Name",
"options": {
"baseURL": "https://api.myprovider.com/v1",
"apiKey": "{env:ANTHROPIC_API_KEY}",
"headers": {
"Authorization": "Bearer custom-token"
}
},
"models": {
"my-model-name": {
"name": "My Model Display Name",
"limit": {
"context": 200000,
"output": 65536
}
}
}
}
}
}
Chi tiết cấu hình:
- apiKey: Đặt sử dụng
envvariable syntax, tìm hiểu thêm. - headers: Custom headers gửi với mỗi request.
- limit.context: Maximum input tokens model chấp nhận.
- limit.output: Maximum tokens model có thể generate.
Các trường limit cho phép OpenCode hiểu còn bao nhiêu context. Các standard providers tự động pull từ models.dev.
Xử lý sự cố (Troubleshooting)
Nếu bạn gặp vấn đề khi cấu hình provider, kiểm tra các điều sau:
-
Kiểm tra auth setup: Chạy
opencode auth listđể xem credentials cho provider đã được thêm vào config chưa.Điều này không áp dụng cho providers như Amazon Bedrock, dựa vào environment variables cho auth.
-
Đối với custom providers, kiểm tra opencode config và:
- Đảm bảo provider ID sử dụng trong lệnh
/connectkhớp với ID trong opencode config. - Đúng npm package được sử dụng cho provider. Ví dụ, sử dụng
@ai-sdk/cerebrascho Cerebras. Và cho tất cả OpenAI-compatible providers khác, sử dụng@ai-sdk/openai-compatible. - Kiểm tra đúng API endpoint được sử dụng trong trường
options.baseURL.
- Đảm bảo provider ID sử dụng trong lệnh