Español
Documentación
Proveedores

Proveedores

OpenCode soporta mas de 75 proveedores de LLM a traves del AI SDK y Models.dev, permitiendo la integracion con numerosos servicios de modelos de lenguaje y modelos locales.

Proceso de Configuracion

  1. Agrega claves API usando el comando /connect
  2. Configura el proveedor en tu configuracion de OpenCode
  3. Las credenciales se almacenan en ~/.local/share/opencode/auth.json

Directorio

Aqui tienes una referencia rapida de los proveedores soportados:

ProveedorMetodo de ConfiguracionCaracteristicas Principales
AnthropicOAuth o clave APISoporte Claude Pro/Max
OpenAIChatGPT Plus/Pro o clave APIModelos GPT-4o, o1
GitHub CopilotAutenticacion por codigo de dispositivoModelos de suscripcion Pro+
Google Vertex AICuenta de servicio o autenticacion gcloud40+ modelos
Amazon BedrockCredenciales/perfil AWSSoporte de endpoint VPC
Azure OpenAIClave API + nombre de recursoDespliegues personalizados
GroqClave APIInferencia de alta velocidad
DeepSeekClave APIModelos de razonamiento
OpenRouterClave APIEnrutamiento multi-proveedor
GitLab DuoClave APIIntegracion con GitLab
OllamaConfiguracion localEjecutar modelos localmente
LM StudioConfiguracion localGestion de modelos locales

Proveedores adicionales incluyen: 302.AI, Baseten, Cerebras, Cloudflare AI Gateway, Cortecs, Deep Infra, Firmware, Fireworks AI, Hugging Face, Helicone, IO.NET, Moonshot AI, MiniMax, Nebius Token Factory, OVHcloud AI Endpoints, SAP AI Core, Scaleway, Together AI, Venice AI, Vercel AI Gateway, xAI, Z.AI, ZenMux.

Configuracion de URL Base

Puedes personalizar la URL base para cualquier proveedor configurando la opcion baseURL. Esto es util cuando usas servicios proxy o endpoints personalizados.

{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "anthropic": {
      "options": {
        "baseURL": "https://api.anthropic.com/v1"
      }
    }
  }
}

OpenCode Zen

OpenCode Zen es una lista de modelos proporcionados por el equipo de OpenCode que han sido probados y verificados para funcionar bien.

  1. Ejecuta /connect, selecciona opencode
  2. Visita opencode.ai/auth para autenticarte
  3. Copia y pega tu clave API
  4. Usa /models para ver los modelos recomendados

Proveedores Populares

Anthropic

  1. Ejecuta /connect y selecciona Anthropic
  2. Elige Claude Pro/Max para autenticacion del navegador
  3. Accede a los modelos mediante el comando /models

OpenAI

  1. Crea una clave API en platform.openai.com/api-keys
  2. Ejecuta /connect y busca OpenAI
  3. Ingresa la clave API
  4. Selecciona el modelo con /models

Groq

Groq proporciona inferencia de alta velocidad para varios modelos.

  1. Crea una clave API en console.groq.com
  2. Ejecuta /connect y busca Groq
  3. Ingresa la clave API
  4. Selecciona el modelo con /models
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "groq": {
      "options": {
        "apiKey": "{env:GROQ_API_KEY}"
      }
    }
  }
}

DeepSeek

DeepSeek ofrece potentes modelos de razonamiento.

  1. Crea una clave API en platform.deepseek.com
  2. Ejecuta /connect y busca DeepSeek
  3. Ingresa la clave API
  4. Selecciona el modelo con /models
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "deepseek": {
      "options": {
        "apiKey": "{env:DEEPSEEK_API_KEY}"
      }
    }
  }
}

GitHub Copilot

La integracion de GitHub Copilot requiere una suscripcion Pro+.

  1. Ejecuta /connect y selecciona GitHub Copilot
  2. Completa la autenticacion por codigo de dispositivo
  3. Accede a los modelos mediante el comando /models
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "github-copilot": {
      "models": {
        "gpt-4o": {
          "name": "GPT-4o (Copilot)"
        }
      }
    }
  }
}

GitLab Duo

GitLab Duo proporciona funciones de IA integradas con GitLab.

{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "gitlab-duo": {
      "options": {
        "apiKey": "{env:GITLAB_API_KEY}"
      }
    }
  }
}

OpenRouter

{
  "provider": {
    "openrouter": {
      "models": {
        "moonshotai/kimi-k2": {
          "options": {
            "provider": {
              "order": ["baseten"],
              "allow_fallbacks": false
            }
          }
        }
      }
    }
  }
}

Ollama (Local)

{
  "provider": {
    "ollama": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "Ollama (local)",
      "options": {
        "baseURL": "http://localhost:11434/v1"
      },
      "models": {
        "llama2": {
          "name": "Llama 2"
        }
      }
    }
  }
}

LM Studio (Local)

{
  "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)"
        }
      }
    }
  }
}

Amazon Bedrock

{
  "provider": {
    "amazon-bedrock": {
      "options": {
        "region": "us-east-1",
        "profile": "my-aws-profile"
      }
    }
  }
}

Precedencia de Autenticacion

Al usar Amazon Bedrock, la autenticacion sigue este orden de precedencia:

  1. Bearer Token - Si AWS_BEARER_TOKEN_BEDROCK esta configurado (via /connect o variable de entorno), tiene precedencia sobre todos los demas metodos
  2. Cadena de Credenciales AWS - Resolucion estandar de credenciales AWS:
    • Configuracion de perfil AWS
    • Claves de acceso (AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY)
    • Roles IAM
    • EKS IRSA (Roles IAM para Cuentas de Servicio)

Azure OpenAI

  1. Crea un recurso Azure OpenAI en el portal de Azure
  2. Despliega el modelo en Azure AI Foundry
  3. Ejecuta /connect y busca Azure
  4. Establece la variable de entorno AZURE_RESOURCE_NAME

Configuracion de Proveedor Personalizado

Para proveedores compatibles con OpenAI:

{
  "provider": {
    "myprovider": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "My AI Provider",
      "options": {
        "baseURL": "https://api.myprovider.com/v1",
        "apiKey": "{env:MY_API_KEY}"
      },
      "models": {
        "my-model": {
          "name": "My Model",
          "limit": {
            "context": 200000,
            "output": 65536
          }
        }
      }
    }
  }
}

Sintaxis de Variables de Entorno

Usa la sintaxis {env:VARIABLE_NAME} para referenciar variables de entorno en tu configuracion:

{
  "provider": {
    "myprovider": {
      "options": {
        "apiKey": "{env:MY_PROVIDER_API_KEY}"
      }
    }
  }
}

Esto te permite mantener las credenciales sensibles fuera de tus archivos de configuracion.

Limites del Modelo

Los campos limit ayudan a OpenCode a entender la ventana de contexto y los limites de salida de tus modelos:

{
  "provider": {
    "myprovider": {
      "models": {
        "my-model": {
          "name": "My Model",
          "limit": {
            "context": 200000,
            "output": 65536
          }
        }
      }
    }
  }
}
  • context: Tokens de entrada maximos que el modelo puede procesar
  • output: Tokens de salida maximos que el modelo puede generar

Headers Personalizados

Puedes agregar headers personalizados a las solicitudes API:

{
  "provider": {
    "myprovider": {
      "options": {
        "headers": {
          "Authorization": "Bearer custom-token",
          "X-Custom-Header": "value"
        }
      }
    }
  }
}

Solucion de Problemas

  1. Verificar autenticacion: Ejecuta opencode auth list para verificar credenciales
  2. Problemas con proveedores personalizados:
    • Verifica que el ID del proveedor coincida entre /connect y la configuracion
    • Confirma el paquete npm correcto
    • Verifica el endpoint API en options.baseURL