Files
qwen3-6-lora/data/raw/sanitized/plans/es-posible-agregar-mi-inherited-kahan.md

4.9 KiB

Agregar API OpenAI-compatible (OpenWebUI) a GitHub Copilot Chat en VS Code

Contexto

El usuario tiene su propia API compatible con OpenAI servida por una instancia de OpenWebUI en https://ai.p-lao.com/api, y quiere saber si puede usar esos modelos dentro de GitHub Copilot Chat en VS Code (en vez de, o además de, los modelos que Copilot ofrece por defecto).

No se trata de una tarea de código sobre este repositorio (que ni siquiera es un repo git) — es una pregunta de configuración de la extensión GitHub Copilot Chat / VS Code. Investigué el estado actual (julio 2026) de la función BYOK ("Bring Your Own Key") de VS Code, que sí soporta endpoints OpenAI-compatibles self-hosted desde octubre 2025 (Insiders) y ya en stable desde inicios de 2026.

Respuesta corta

Sí, es posible. VS Code Copilot Chat tiene soporte nativo (sin extensiones de terceros) para agregar un proveedor de modelo "Custom Endpoint / OpenAI Compatible", apuntando a cualquier servidor que exponga una API de chat completions compatible con OpenAI — que es exactamente lo que expone OpenWebUI en /api (OpenWebUI expone un endpoint compatible en /api/chat/completions o /v1/chat/completions según versión).

Cómo hacerlo (método recomendado — UI nativa)

  1. Abrir la paleta de comandos (Ctrl+Shift+P) y ejecutar Chat: Manage Language Models.
  2. Elegir "Add Model..." → seleccionar el proveedor "OpenAI Compatible" (a veces listado como "Custom Endpoint").
  3. Completar:
    • Base URL: https://ai.p-lao.com/api (o la ruta específica que exponga chat completions, p. ej. https://ai.p-lao.com/api/chat/completions — confirmar cuál espera el prompt, algunas versiones piden solo el host base y arman el path solas).
    • API Key: el token/API key generado en OpenWebUI (Settings → Account → API Keys).
    • Model ID: el nombre exacto del modelo tal como lo expone OpenWebUI (se puede confirmar con GET /api/models contra tu instancia).
  4. VS Code guarda la API key de forma segura (Secret Storage), no en settings.json en texto plano.
  5. El modelo aparece en el selector de modelos del chat de Copilot (ícono en la vista de Chat) — seleccionarlo ahí para usarlo en conversaciones/agent mode.

Alternativa vía settings.json (legacy, sigue funcionando en stable pero marcada deprecated)

Permite declarar metadata del modelo sin pasar por el diálogo cada vez, pero la API key igual se configura aparte (vía el comando de arriba o un prompt de VS Code):

"github.copilot.chat.customOAIModels": {
  "mi-modelo-openwebui": {
    "name": "Mi modelo (OpenWebUI)",
    "url": "https://ai.p-lao.com/api/chat/completions",
    "toolCalling": true,
    "vision": false,
    "maxInputTokens": 128000,
    "maxOutputTokens": 8000
  }
}

Ajustar toolCalling/vision/límites de tokens según lo que realmente soporte el modelo servido — si se declara toolCalling: true sin que el modelo lo soporte, el agent mode de Copilot fallará al intentar usar herramientas.

Requisitos del lado de OpenWebUI

  • El endpoint debe responder al formato de Chat Completions de OpenAI (POST /chat/completions con streaming SSE) — OpenWebUI lo soporta out-of-the-box vía su capa de compatibilidad OpenAI.
  • Necesita un API key válido generado desde OpenWebUI (no la sesión de usuario web).
  • Si el servidor usa TLS con certificado propio/self-signed, puede haber que confiar en el certificado a nivel de sistema/VS Code para que la conexión no falle.

Notas / limitaciones

  • Esto solo afecta Chat y Agent mode de Copilot. Las sugerencias inline de autocompletado ("ghost text") siguen usando la infraestructura propia de Copilot y no se pueden reemplazar por BYOK.
  • El uso de un modelo BYOK se factura/consume directamente contra tu proveedor (OpenWebUI/modelo detrás), no cuenta contra la cuota de requests de Copilot.
  • Requiere una versión reciente de VS Code (la función pasó a stable en 2026); si el usuario está en una versión vieja, puede necesitar actualizar o usar VS Code Insiders.

Verificación

  1. Tras agregar el modelo, abrir el panel de Chat, hacer clic en el selector de modelo y confirmar que "Mi modelo (OpenWebUI)" aparece en la lista.
  2. Enviar un mensaje simple ("hola, ¿qué modelo eres?") y confirmar que responde usando el modelo remoto (no un modelo de Copilot por defecto).
  3. Si se necesita agent mode con tools, probar un prompt que dispare una tool call y confirmar que el modelo la ejecuta correctamente (valida que toolCalling esté bien configurado).

Fuentes