Añade modelos del catálogo en la nube a Jan sin dejar el enfoque local-first.
Updated 2026-07-29
Jan ejecuta modelos en tu máquina por diseño, y su configuración de Model Providers acepta cualquier endpoint compatible con OpenAI para los días en que lo local no basta: añade un proveedor, configura la Base URL a https://api.apisrouter.com/v1, pega una clave, y los ids de Claude, GPT, Gemini y DeepSeek se suman a tu alineación local.
Respuesta rápida: un proveedor en Settings.
Abre Settings en Jan y ve a Model Providers. Haz clic en el control de más junto a la lista de proveedores para añadir un proveedor personalizado, dale un nombre (APIsRouter), y en las versiones recientes elige el formato OpenAI API cuando el diálogo lo pregunte (Jan v0.8.1 añadió un selector de formato OpenAI-o-Anthropic; para un gateway elige OpenAI). Luego rellena los dos campos que importan: Base URL https://api.apisrouter.com/v1 y tu clave de API. Añade los modelos que quieras por id: la documentación de Jan es explícita en que la propiedad id debe coincidir con el nombre de modelo que sirve el endpoint, así que copia los ids del listado del catálogo (claude-sonnet-4-6, gpt-5.4-mini, gemini-3.5-flash) en lugar de escribirlos de memoria. Guarda, y los ids aparecen en el selector de modelo junto a lo que sea que ejecutes localmente. Las etiquetas se han movido entre versiones (versiones más antiguas llamaban a esta área Remote Engines), así que trata proveedor, formato, URL, clave, modelos como el esqueleto estable.
Name: APIsRouter
API Format: OpenAI (v0.8.1+ selector)
Base URL: https://api.apisrouter.com/v1
API Key: sk-YOUR-APISROUTER-KEY
Models: add ids that match the endpoint, e.g.
claude-sonnet-4-6, gpt-5.4-mini, gemini-3.5-flashCómo trata Jan a los proveedores remotos.
Jan (menloresearch en GitHub, unas 44K estrellas) es el cliente de escritorio local-first: los modelos se descargan a tu máquina, corren a través de llama.cpp, y funcionan sin conexión, con la app incluso exponiendo su propio servidor compatible con OpenAI en http://127.0.0.1:1337/v1 para otras herramientas. Los proveedores remotos son el segundo carril deliberado, para modelos demasiado grandes para correr localmente o tareas que ganan con calidad de vanguardia. Un proveedor personalizado en formato OpenAI es una descripción de endpoint simple: base URL, clave, ids de modelo declarados. Las conversaciones contra esos ids salen como peticiones estándar de chat-completions con el id como el string del modelo, así que un gateway multi-proveedor necesita exactamente una entrada. Claude para escritura cuidadosa, DeepSeek para resumen de volumen, Gemini para velocidad, una clave detrás de todos ellos. El encaje filosófico es mejor de lo que suena al principio. Los usuarios local-first tienden a ser deliberados sobre qué sale de la máquina, y un gateway mantiene el carril remoto igual de deliberado: un endpoint que cortafuegar, un log de uso que leer, un saldo que solo se mueve cuando elegiste enviar algo fuera. Nada del carril local cambia; tus modelos descargados siguen funcionando sin conexión exactamente como antes.
Declarar modelos: el contrato del id.
Jan no recupera el catálogo de un endpoint personalizado por ti; los modelos que declaras son los modelos que obtienes, y el id es el contrato. La ortografía autorizada viene del listado /v1/models del gateway, sufijos de versión incluidos. Un id declarado que se desvía del listado produce errores de no encontrado solo cuando se selecciona ese modelo, lo que se lee como un proveedor inestable hasta que comparas los strings. Declara con deliberación. Un selector local-first funciona mejor cuando las filas remotas son pocas y con propósito: un id rápido para los turnos remotos del día a día (gpt-5.4-mini o claude-haiku-4-5-20251001), un id de vanguardia para el trabajo que justifica dejar la máquina (claude-sonnet-4-6), y cualquier especialista que gane tu carga de trabajo (deepseek-v4-flash para resúmenes multilingües largos, gemini-3.5-flash cuando la latencia es la característica). Cada fila es fácil de añadir después; un catálogo pegado entero es ruido que desplazas cada día. Si también usas el servidor de API local de Jan para servir a otras herramientas, mantén claro el modelo mental: ese servidor es Jan siendo un proveedor en 127.0.0.1:1337/v1; la entrada de proveedor personalizado es Jan siendo un cliente. Los dos son independientes, y configurar uno nunca afecta al otro.
curl -s https://api.apisrouter.com/v1/models \
-H "Authorization: Bearer $APISROUTER_API_KEY" | head -50
# declare these ids verbatim in the provider's model listElegir qué conversaciones salen de la máquina.
Como el uso remoto está prepagado y medido por clave, el coste del carril remoto es un número que lees, no una suscripción que adivinas. Corre un mes de tu división real y el log de uso te dice exactamente cuánto cuesta salir de la máquina, por modelo, por día.
- Los turnos remotos cotidianos, preguntas rápidas, reescrituras, traducciones, pertenecen al nivel rápido: gpt-5.4-mini y claude-haiku-4-5-20251001 responden rápido y mantienen el saldo casi quieto.
- claude-sonnet-4-6 es el escalón superior para trabajo que un modelo local visiblemente no puede llevar: redacción larga y cuidadosa, revisión de código sutil, análisis que vas a reenviar.
- gemini-3.5-flash se gana su fila por la latencia; para turnos interactivos cortos se siente lo más cercano a la capacidad de respuesta de un modelo local.
- deepseek-v4-flash es la elección de volumen para resumir documentos largos que no le darías a un modelo local pequeño.
- Mantén el material privado enteramente en modelos locales; la separación entre carriles es el punto de ejecutar Jan en primer lugar.
Pago por uso · por debajo del precio oficial
Selected models are priced below official list prices. Exact input, output, cache, and per-request prices are shown for each model.
| Modelo | Precio oficial | Nuestro precio |
|---|---|---|
| Claude Haiku 4.5 20251001 | $1.00 / $5.00 per M | $0.80 / $4.00 per M |
| Claude Sonnet 4.6 | $3.00 / $15.00 per M | $2.40 / $12.00 per M |
| GPT-5.4 mini | $0.75 / $4.50 per M | $0.60 / $3.60 per M |
| Gemini 3.5 Flash | $1.50 / $9.00 per M | $1.20 / $7.20 per M |
| DeepSeek V4 Flash | $0.14 / $0.28 per M | $0.10 / $0.30 per M |
Modos de fallo específicos de Jan.
Los errores de no encontrado en un modelo específico son el contrato del id: el id declarado no coincide con la ortografía del endpoint. Compara contra la salida de /v1/models carácter por carácter. Los fallos de autenticación en cada petición son el campo de clave. Un proveedor que se guarda pero nunca responde suele tener un problema de Base URL: el sufijo /v1 debe estar presente, ya que Jan añade rutas como /chat/completions a la base que le das, y un segmento duplicado o faltante produce 404. Si el proveedor se creó en una versión más antigua, revisa el formato de API: v0.8.1 introdujo el selector OpenAI-o-Anthropic, y una entrada de gateway accidentalmente configurada al formato Anthropic habla el dialecto equivocado a un endpoint /v1/chat/completions. Y recuerda qué carril estás depurando. Los fallos de modelo local (VRAM, cuantización, ajustes de llama.cpp) y los fallos remotos (URL, clave, ids) comparten una ventana de chat pero nada más; el selector de modelo muestra a qué carril pertenece una conversación fallida antes de que empieces a tirar del hilo equivocado.
Quién añade un carril de gateway a Jan.
- Usuarios local-first que ocasionalmente necesitan calidad de vanguardia y quieren ese carril ocasional sobre un saldo prepago en lugar de una suscripción de proveedor.
- Desarrolladores en máquinas que no pueden correr bien modelos locales grandes, usando Jan como interfaz y el gateway para el trabajo pesado.
- Usuarios deliberados con la privacidad que quieren exactamente un endpoint remoto que razonar, cortafuegar y auditar, en lugar de uno por proveedor.
- Personas que comparan salida local frente a la nube en tareas reales, donde los candidatos remotos son filas declaradas, no cuentas nuevas.
- Desarrolladores sin acceso a la facturación de un proveedor concreto. El acceso mediante recarga sin necesidad de tarjeta elimina la dependencia de registrarse en cada proveedor.
Verifica el endpoint y depura el primer turno remoto.
Haz curl al listado de modelos y a una chat completion primero; con ambos pasando, todo lo que queda está en la entrada de proveedor. Esto también te da las ortografías exactas de id para declarar. Dentro de Jan, envía un mensaje corto con el id remoto rápido. Los errores de autenticación son la clave; no encontrado es el id; el silencio o los 404 son la forma de la Base URL. Si el carril remoto funciona pero se siente lento con el id de vanguardia, eso es latencia del modelo, no un problema de configuración; los modelos de razonamiento se toman su tiempo en turnos largos. Una vez que los turnos remotos fluyen, la consola de APIsRouter muestra el modelo por petición, el recuento de tokens y el gasto. Para un usuario local-first esta lectura es inusualmente satisfactoria: es el registro completo de todo lo que alguna vez salió de la máquina, por modelo, por día, con el carril local contribuyendo exactamente nada a él.
curl -s https://api.apisrouter.com/v1/chat/completions \
-H "Authorization: Bearer $APISROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"gpt-5.4-mini",
"messages":[{"role":"user","content":"ping"}]}'Preguntas frecuentes
¿Cómo añado un proveedor personalizado compatible con OpenAI a Jan?
Settings, Model Providers, luego el control de más para añadir un proveedor. Nómbralo, elige el formato de API OpenAI en las versiones que lo pregunten (v0.8.1+), configura Base URL https://api.apisrouter.com/v1, pega tu clave, y declara ids de modelo que coincidan con el listado del endpoint.
¿Por qué mi modelo declarado devuelve no encontrado?
Jan envía el id declarado tal cual como el string del modelo, y su documentación exige que el id coincida exactamente con el nombre de modelo del endpoint. Extrae el listado de /v1/models y copia la ortografía, sufijos de versión incluidos, en lugar de escribir ids de memoria.
¿Añadir un proveedor remoto cambia cómo funcionan los modelos locales?
No. Los modelos locales siguen corriendo en el dispositivo a través de llama.cpp, sin conexión incluido. La entrada de proveedor añade un carril remoto separado al selector, y las conversaciones solo tocan la red cuando eliges un id remoto.
¿Debería la Base URL incluir /v1?
Sí: https://api.apisrouter.com/v1. Jan añade rutas como /chat/completions a la base que configures, así que un /v1 faltante da 404 y uno duplicado también. Si las peticiones fallan, lee la URL compuesta en el error antes de cambiar cualquier otra cosa.
¿Puede Jan alcanzar Claude y Gemini a través de una entrada de proveedor?
Sí. En el formato OpenAI el id del modelo viaja como un string simple, así que claude-sonnet-4-6, gemini-3.5-flash, gpt-5.4-mini y deepseek-v4-flash pueden declararse todos bajo una entrada, facturados a través de una clave, y cambiarse por conversación.
¿Es esto lo mismo que el servidor de API local de Jan?
No. El servidor local en 127.0.0.1:1337/v1 es Jan sirviendo sus modelos locales a otras herramientas. La entrada de proveedor personalizado es Jan consumiendo un endpoint remoto. Son características independientes que resultan compartir el formato de transmisión de OpenAI.