Manual de uso de Switch En desarrollo
Conecta cualquier cliente OpenAI a Switch
Una vez iniciado, Switch expone localmente un endpoint compatible con la API de OpenAI; basta con cambiar una línea de base_url para que todas las solicitudes se enruten automáticamente a través de Switch.
Integración rápida
Una vez iniciado, Switch expone localmente un endpoint compatible con la API de OpenAI en http://localhost:19090/v1 (el puerto predeterminado del gateway de Switch es 19090). Cambia el base_url de tu aplicación/SDK a esta dirección y todas las solicitudes se enrutarán automáticamente a través de Switch. Pon cualquier valor en api_key (por ejemplo, switch); Switch utiliza la provider key de la configuración.
Apunta el
base_urldel cliente al endpoint local de Switch, pon cualquier valor enapi_key(por ejemplo,switch) y realiza las solicitudes con normalidad:bashcurl http://localhost:19090/v1/chat/completions \ -H "Content-Type: application/json" -H "Authorization: Bearer switch" \ -d '{"model":"gpt-4o","messages":[{"role":"user","content":"Hello"}]}'pythonfrom openai import OpenAI client = OpenAI( base_url="http://localhost:19090/v1", api_key="switch", ) resp = client.chat.completions.create( model="gpt-4o", messages=[{"role": "user", "content": "Hello"}], ) print(resp.choices[0].message.content)javascriptimport OpenAI from "openai"; const client = new OpenAI({ baseURL: "http://localhost:19090/v1", apiKey: "switch", }); const resp = await client.chat.completions.create({ model: "gpt-4o", messages: [{ role: "user", content: "Hello" }], }); console.log(resp.choices[0].message.content);Con el SDK de OpenAI (Python / Node.js) solo cambias
base_url/baseURLyapi_key; el resto de la llamada se mantiene igual. Switch utiliza la provider key de la configuración para realizar el enrutamiento real, y el cliente no necesita conocer el proveedor de destino.
Por qué api_key puede tener cualquier valor
api_key del lado del cliente solo sirve como marcador de posición; basta con poner switch.Uso en herramientas de programación con IA
En todas las herramientas, indica http://localhost:19090/v1 como API Base / dirección del endpoint, y switch como API Key.
Uso en herramientas de programación con IA
En todas las herramientas, indica http://localhost:19090/v1 como API Base / dirección del endpoint, y switch como API Key:
Ajustes (Ctrl+,) → busca «AI» → cambia «OpenAI API Base» a esa dirección → guarda; el autocompletado y el chat pasarán automáticamente por Switch.
Edita ~/.continue/config.json y, en cada elemento de model, define "provider": "openai", "apiBase": "http://localhost:19090/v1" y "apiKey": "switch"; en "model" pon deepseek-chat / gpt-4o, etc.
Ajustes → Configuración de API → selecciona «OpenAI compatible personalizado» → indica la dirección y la Key → «Probar conexión».
Ajustes → Modelos de lenguaje → OpenAI → indica la API Key y la dirección del endpoint.
Monitorización, conmutación y streaming
Monitorización de solicitudes
La pestaña «Registros» muestra los registros de solicitudes en tiempo real, con los campos: hora (marca de tiempo), modelo, proveedor (destino de enrutamiento real), duración (ms), Token (prompt/completion) y estado (200 / 4xx-5xx). Con «Exportar CSV» puedes exportar los registros de los últimos 7 días para el cálculo de costes.
Conmutación de proveedor con un clic
Al hacer clic en el icono de la barra de menús (macOS) / la bandeja del sistema (Windows) puedes: cambiar el «proveedor activo actual», desactivar temporalmente un proveedor (depuración) y ver un resumen del consumo de hoy.
Respuestas en streaming
Compatible por completo con las respuestas en streaming SSE, que se transmiten directamente desde el proveedor de destino: tras chat.completions.create(..., stream=True), itera sobre chunk.choices[0].delta.content.
Balanceo de carga
Cuando configuras varios proveedores para un mismo modelo, puedes distribuir las solicitudes por turnos (round-robin) o por peso.
Avanzado: balanceo de carga
Cuando configuras varios proveedores para un mismo modelo, puedes distribuir las solicitudes por turnos (round-robin) o por peso:
{
"routing": {
"rules": [
{
"pattern": "deepseek-chat",
"providers": [
{ "name": "Lurus API", "weight": 70 },
{ "name": "DeepSeek Official", "weight": 30 }
],
"strategy": "weighted_random"
}
]
}
}Solución de problemas
Despliega el síntoma correspondiente para ver los pasos de resolución.
Solución de problemas
"connection refused" — conexión rechazada
Switch no está iniciado o el puerto es incorrecto. Comprueba el proceso y el puerto:
- Proceso: Windows
tasklist | findstr LurusSwitch/ macOS·Linuxps aux | grep lurus-switch - Puerto:
curl http://localhost:19090/v1/models
401 / 403 — fallo de autenticación
La API Key del proveedor está mal configurada. Vuelve a introducirla en la interfaz de configuración y haz clic en «Probar» para verificar la conectividad.
Latencia anormalmente alta
- Comprueba en los registros si el enrutamiento llega al proveedor correcto.
- Una latencia alta en proveedores extranjeros (OpenAI / Anthropic) es normal (300-1500 ms).
- Cambia a un nodo nacional de Lurus API (normalmente < 200 ms).
La aplicación de macOS no responde
Haz clic derecho en la barra de menús → «Salir» y reinicia, o ejecuta en la terminal:
pkill -f LurusSwitch && open -a "Lurus Switch"