Modelos
Configurando um provedor de LLM e um modelo.
O OpenCode usa o AI SDK (opens in a new tab) e o Models.dev (opens in a new tab) para suportar mais de 75 provedores de LLM e também suporta a execução de modelos locais.
Provedores
A maioria dos provedores populares vem pré-carregada por padrão. Se você adicionou as credenciais de um provedor através do comando /connect, elas estarão disponíveis quando você iniciar o OpenCode.
Saiba mais sobre provedores.
Selecionar um modelo
Depois de configurar seu provedor, você pode selecionar o modelo que quiser digitando:
/modelsModelos recomendados
Existem muitos modelos por aí, com novos saindo toda semana.
Dica: Considere usar um dos modelos que recomendamos.
No entanto, apenas alguns deles são bons tanto em gerar código quanto em chamar ferramentas.
Aqui estão vários modelos que funcionam bem com o OpenCode, em nenhuma ordem específica. (Esta não é uma lista exaustiva, nem necessariamente atualizada):
- GPT 5.2
- GPT 5.1 Codex
- Claude Opus 4.5
- Claude Sonnet 4.5
- Minimax M2.1
- Gemini 3 Pro
Definir um padrão
Para definir um destes como o modelo padrão, você pode definir a chave model na sua
config do OpenCode.
{
"$schema": "https://opencode.ai/config.json",
"model": "lmstudio/google/gemma-3n-e4b"
}Aqui o ID completo é provider_id/model_id. Por exemplo, se você está usando o OpenCode Zen, usaria opencode/gpt-5.1-codex para o GPT 5.1 Codex.
Se você configurou um provedor personalizado, o provider_id é a chave da parte provider da sua config, e o model_id é a chave de provider.models.
Configurar modelos
Você pode configurar globalmente as opções de um modelo através da 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,
},
},
},
},
},
},
}Aqui estamos configurando definições globais para dois modelos integrados: gpt-5 quando acessado via provedor openai, e claude-sonnet-4-20250514 quando acessado via provedor anthropic.
Os nomes dos provedores e modelos integrados podem ser encontrados no Models.dev (opens in a new tab).
Você também pode configurar essas opções para qualquer agente que estiver usando. A config do agente sobrescreve qualquer opção global aqui. Saiba mais.
Você também pode definir variantes personalizadas que estendem as integradas. As variantes permitem configurar definições diferentes para o mesmo modelo sem criar entradas duplicadas:
{
"$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",
},
},
},
},
},
},
}Variantes
Muitos modelos suportam várias variantes com configurações diferentes. O OpenCode vem com variantes padrão integradas para os provedores populares.
Variantes integradas
O OpenCode vem com variantes padrão para muitos provedores:
Anthropic:
high- Orçamento de raciocínio alto (padrão)max- Orçamento de raciocínio máximo
OpenAI:
Varia por modelo, mas aproximadamente:
none- Sem raciocíniominimal- Esforço mínimo de raciocíniolow- Esforço baixo de raciocíniomedium- Esforço médio de raciocíniohigh- Esforço alto de raciocínioxhigh- Esforço extra alto de raciocínio
Google:
low- Esforço/orçamento de tokens menorhigh- Esforço/orçamento de tokens maior
Dica: Esta lista não é completa. Muitos outros provedores também têm padrões integrados.
Variantes personalizadas
Você pode sobrescrever variantes existentes ou adicionar as suas próprias:
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"openai": {
"models": {
"gpt-5": {
"variants": {
"thinking": {
"reasoningEffort": "high",
"textVerbosity": "low",
},
"fast": {
"disabled": true,
},
},
},
},
},
},
}Alternar variantes
Use o atalho variant_cycle para alternar rapidamente entre variantes. Saiba mais.
Carregando modelos
Quando o OpenCode é iniciado, ele procura por modelos na seguinte ordem de prioridade:
-
A flag de linha de comando
--modelou-m. O formato é o mesmo do arquivo de config:provider_id/model_id. -
A lista de modelos na config do OpenCode.
opencode.json{ "$schema": "https://opencode.ai/config.json", "model": "anthropic/claude-sonnet-4-20250514" }O formato aqui é
provider/model. -
O último modelo usado.
-
O primeiro modelo, usando uma prioridade interna.