Conectar un modelo
Conectar un modelo
Objetivos
- Añadir una conexión de modelo desde la app y elegir el modelo.
- Conocer las particularidades de cada proveedor.
- Conectar un modelo local con el contexto que Nod necesita.
- Entender cómo se usa el modelo en segundo plano y en la comprobación de acciones.
- Saber adónde van tus claves.
Conexiones soportadas
Las conexiones se gestionan en Settings → Models. Selecciona Add connection (o Add si ya tienes una) y busca un servicio.
| Conexión | Qué se configura | Elección inicial |
|---|---|---|
| Google Gemini | API key de AI Studio | Gemini 3.8 Flash, esfuerzo medio |
| OpenAI / ChatGPT | API key o inicio de sesión con ChatGPT | GPT-6.1 Sol / GPT-6 Sol, esfuerzo alto |
| Anthropic | API key | Claude Opus 5.5, esfuerzo alto |
| OpenRouter | API key o inicio de sesión en el navegador | GPT-6.1 Sol, esfuerzo alto |
| Google Vertex AI | API key de Vertex | Gemini 4 Argon, esfuerzo medio |
| Amazon Bedrock | API key y región | Eliges el modelo y el perfil de enrutamiento |
| Azure OpenAI | Endpoint, despliegue, modelo y API key | El modelo del despliegue |
| Cloudflare Workers AI / AI Gateway | Token, ID de cuenta e ID de gateway | Kimi K2.7 Code / GPT-6.1 Sol |
| Otros proveedores con nombre | API key del servicio | Un modelo capaz de esa conexión |
| OpenAI-compatible | Dirección del servidor y clave opcional | Un modelo que ofrezca el servidor |
Entre los otros proveedores están Ant Ling, Baseten, Cerebras, DeepSeek, Fireworks AI, Groq, Hugging Face, Kimi Coding, Meta, MiniMax, Mistral, Moonshot AI, NVIDIA, OpenCode Zen y Go, Qwen Token Plan, Radius, Together AI, Vercel AI Gateway, xAI, Xiaomi MiMo y Z.AI, con sus variantes regionales.
Ni un catálogo ni una clave guardada prueban que tu cuenta tenga crédito o permiso para ejecutar todos los modelos listados.
Conectar un servicio
- Selecciona Settings al pie de la barra lateral y luego Models.
- Selecciona Add connection o Add y elige un proveedor.
- Completa los datos del proveedor y selecciona Connect.
- Selecciona Change junto a Your model para abrir Choose a model.
En el selector puedes buscar por modelo, proveedor o cuenta. Los modelos se agrupan por conexión, con los recomendados primero. Los iconos de imagen, audio y thinking indican las capacidades de cada modelo. Con el teclado: flechas, Inicio y Fin para moverte y Enter para elegir.
Si una clave tiene un formato reconocible de otro proveedor, Nod muestra la discrepancia junto al campo antes de enviarla o guardarla.
Por proveedor
OpenAI con API key
- Elige OpenAI y luego Use an API key.
- Pega la clave en API key y selecciona Connect.
ChatGPT
- Elige OpenAI y luego Sign in with ChatGPT.
- Inicia sesión en la pestaña del navegador que se abre y permite que Nod use tu plan.
- Vuelve a Nod. Si el navegador termina en una página que no carga, copia su dirección completa en Callback URL y selecciona Complete sign-in.
Requiere ChatGPT Plus o Pro. El inicio de sesión escucha en el puerto 1455 donde corre el servidor de Nod; si otro programa usa ese puerto, Nod se detiene con un error antes de abrir OpenAI. Con un servidor remoto no hace falta exponer ese puerto: se usa el campo Callback URL. ChatGPT lista a Nod en Settings → Usage, donde puedes ver y limitar su uso o desconectarlo.
Anthropic
- Elige Anthropic.
- Pega la clave en API key y selecciona Connect.
Nod usa directamente las claves limitadas a un workspace. Con otras claves, conecta solo cuando encuentra exactamente un workspace que acepta la clave; si encuentra varios, eliges uno. Si la detección no está disponible aparece Enter workspace ID manually. Claude en Nod requiere una conexión por API: una suscripción no es una opción de inicio de sesión.
OpenRouter
Elige OpenRouter y luego Sign in with OpenRouter, que crea una clave para Nod en tu navegador, o Use an API key. Los enrutadores openrouter/free y openrouter/auto trabajan con un límite de 8.192 tokens.
Google Gemini
Crea una API key en AI Studio con tu cuenta de Google. Gemini 3.8 Flash tiene un nivel gratuito sujeto a cuotas; Gemini 4 Argon requiere acceso de pago. El nivel gratuito tiene condiciones de uso de datos distintas, así que conviene revisar los términos de Google antes de enviar material privado. Una suscripción a la app Gemini no es una opción de inicio de sesión.
Amazon Bedrock
Necesita una API key de larga duración y la región. Las claves de corta duración caducan en horas. La clave requiere los permisos bedrock:ListFoundationModels y bedrock:ListInferenceProfiles. Nod no usa perfiles ni claves de acceso de AWS.
Google Vertex AI
Usa una API key. No admite archivos de cuenta de servicio.
Azure OpenAI
Requiere endpoint, nombre de despliegue y clave. Cada despliegue es una conexión. No admite Microsoft Entra ID.
Gestionar conexiones
- Manage, junto a un proveedor, muestra sus cuentas y permite añadir o quitar conexiones.
- Reconnect restaura un inicio de sesión que dejó de funcionar. Para una clave o un servidor, hay que añadir los datos de nuevo.
- También puedes pedirle a Nod que cambie a un modelo disponible, desde la app, Telegram o WhatsApp. El cambio se aplica al turno siguiente. Conectar un servicio nuevo sigue requiriendo el flujo privado en la app.
Un modelo para todo
Nod usa la misma elección de modelo en la app, Telegram y WhatsApp. Una tarea que ya está corriendo conserva el modelo con el que empezó.
| Situación | Qué hace Nod |
|---|---|
| Una petición al modelo falla | No cambia de conexión |
| Error temporal del proveedor (sobrecarga, límite de tasa) | Reintenta hasta 3 veces |
| Trabajo en segundo plano, como el mantenimiento de memoria | Usa un modelo más pequeño de la misma conexión si existe, como gpt-6-luna o claude-haiku-5-5 |
| Trabajo en segundo plano y comprobaciones | Usan el razonamiento más ligero que ofrezca su modelo |
Modelos con ventana de contexto pequeña
Con una ventana de contexto inferior a 65.536 tokens, Nod usa instrucciones cortas y carga una herramienta detallada a la vez. Los resultados grandes de herramientas se quedan en archivos del workspace, con una vista previa corta en la conversación. Si una petición sigue sin caber, Nod pide una petición más corta o un modelo con más contexto. Las comprobaciones del servidor sobre acciones, inicios de sesión y pagos no cambian.
Modelos locales
Nod puede usar un modelo que corre en tu equipo o cualquier servidor con API compatible con OpenAI. Funciona en la app de escritorio, en instalaciones desde código y en servidores propios.
Requisitos del servidor de modelos
- Soporte de tool calls. Sin ellas, Nod solo puede chatear.
- Al menos 64.000 tokens de contexto. Las instrucciones y herramientas de Nod ocupan unos 20.000 tokens antes del primer mensaje. La mayoría de servidores arrancan con 4.096 y algunos recortan las instrucciones sin avisar.
- Alcanzable desde el servidor de Nod. En una instalación remota,
localhostes ese servidor. Dentro de Docker,localhostes el contenedor de Nod.
Preparar el servidor
Ollama
ollama pull gpt-oss:20b
OLLAMA_CONTEXT_LENGTH=65536 ollama serve
En ollama.com se puede filtrar por Tools para encontrar modelos compatibles. En la app de Ollama, el contexto se ajusta con Context length en Settings. Dirección para Nod: http://localhost:11434/v1.
LM Studio
- Descarga un modelo con soporte de tools.
- Cárgalo con Context Length en 65.536 o más.
- Inicia el servidor desde la pestaña Developer, o con:
lms server start
Dirección para Nod: http://localhost:1234/v1.
vLLM
vllm serve <model> --max-model-len 65536 --enable-auto-tool-choice --tool-call-parser <parser>
El parser depende del modelo. Dirección para Nod: http://localhost:8000/v1. Si arrancaste con --api-key, añade también esa clave.
llama.cpp
llama-server -m <model>.gguf -c 65536 --jinja
--jinja activa las tool calls. Dirección para Nod: http://localhost:8080/v1.
Conectar Nod al servidor
- Abre Settings → Models, elige Add connection o Add y después OpenAI-compatible. En el onboarding: More providers y luego Your own server.
- Revisa Server address. Si omites
/v1, Nod lo prueba por ti. - Añade una API key solo si el servidor la necesita.
- Selecciona Connect.
Nod comprueba la dirección listando los modelos. Si todavía no elegiste modelo, toma el primero del servidor. Tras descargar o cargar otro modelo, abre Manage junto a OpenAI-compatible y añade de nuevo la misma dirección: Nod actualiza esa conexión y no crea una segunda.
Para comprobar el servidor desde la terminal:
curl http://localhost:11434/v1/models
Configurarlo en .env
En una instalación desde código o en un servidor propio:
LLM_PROVIDER=compatible
OPENAI_COMPATIBLE_BASE_URL=http://localhost:11434/v1
OPENAI_COMPATIBLE_API_KEY=
LLM_MODEL=gpt-oss:20b
Deja OPENAI_COMPATIBLE_API_KEY vacía si el servidor no pide clave y LLM_MODEL vacía para usar el primer modelo del servidor. Si el servidor de modelos no estaba activo cuando arrancó Nod, inícialo, abre Manage y selecciona Load models o Try again.
Qué cambia con un modelo local
| Área | Con un modelo local o compatible con OpenAI |
|---|---|
| Gasto | Nod no conoce los precios. Usage muestra las peticiones como No price y no cuentan para el límite mensual |
| Imágenes | Los modelos de visión de Ollama y LM Studio reciben capturas e imágenes. Los de otros servidores, solo texto |
| Niveles de thinking | Solo con Ollama |
| Trabajo en segundo plano | Usa tu modelo seleccionado |
| Respuestas lentas | El chat muestra una palabra rotatoria, como Joining the dots…. Si el servidor no envía nada durante 30 minutos, Nod deja de esperar |
| Adónde van las peticiones | El chat va a la dirección que escribiste. La búsqueda web, los sitios, las apps y los canales funcionan igual que antes |
Problemas con modelos locales
| Problema | Solución |
|---|---|
| Nod couldn’t list this server’s models | Comprueba que el servidor está activo y que la dirección y la clave son correctas |
| This server has no models Nod can use | Nod necesita un modelo con tools. Descarga o carga uno y reintenta |
| Nod ignora tu pedido, olvida sus herramientas o se repite | El contexto es demasiado pequeño. Súbelo a 65.536 o más y recarga el modelo |
| Un modelo nuevo no aparece | Abre Manage, elige Add connection y escribe la misma dirección |
Can’t load its models junto a un servidor definido en .env | Inicia el servidor, abre Manage y elige Load models o Try again |
| Nod pregunta casi todo, o actúa sin preguntar | Revisa la conexión y el modo del verificador de acciones |
El verificador de acciones
Antes de ejecutar una acción que cambia algo, el servidor consulta a un verificador. Qué modelo cumple ese papel se define con NOD_TRUST_MODEL en la configuración del servidor.
| Valor | Quién decide |
|---|---|
selected | Tu modelo seleccionado, con su nivel de razonamiento más bajo. Es el valor por defecto |
llm | Un modelo pequeño conocido |
decision | El primer modelo de decisión disponible, o un modelo pequeño si no hay ninguno |
NOD_TRUST_MODEL=decision
En modo decision, Nod elige el primero disponible en este orden:
- TypeSafe Jev 1.14 directo, con
TYPESAFE_API_KEY. - Jev 1.14 a través de OpenRouter.
- Perplexity Decider 1.2 a través de OpenRouter.
- OpenAI Decisions, con una API key de OpenAI o a través de OpenRouter.
- El mismo modelo pequeño del modo
llm.
Puntos a tener en cuenta:
- El verificador pequeño puede tener costos de API, que aparecen en Usage.
- Si no hay ningún verificador disponible, Nod no puede aprobar una acción.
- Una decisión fallida o incierta nunca cambia el verificador a un LLM.
- Tu modelo de chat sigue redactando y comprobando las preguntas de confirmación.
- Con un modelo local, la comprobación por defecto usa ese modelo local, y la documentación advierte que los modelos pequeños deciden peor. Se puede elegir como verificador un modelo pequeño de otra conexión o un servicio de decisión.
El capítulo 12 explica qué decide el verificador.
Adónde van tus claves
flowchart LR
Tu(["Tú"]) --> Srv["Servidor de Nod"]
Store[("Almacén cifrado<br/>de claves")] -- "clave" --> Srv
Srv -- "petición + clave" --> Prov["Proveedor de modelos"]
Prov -- "respuesta" --> Srv
Srv -- "respuesta" --> Chat["Chat"]
Sandbox["Workspace<br/>y navegador"]
Srv -. "sin clave" .-> Sandbox
- El servidor añade la clave a cada petición de modelo. La clave nunca entra en el workspace, en el navegador de Nod ni en el contexto del modelo.
- Las claves e inicios de sesión guardados se cifran con la clave de Vault.
- Las claves definidas en
.envse quedan en la memoria del servidor y no se copian a la base de datos. - Cada clave va solo a su propio servicio.
- Tu navegador no guarda la clave, y Nod la elimina de los errores del proveedor.
Actividad
- Conecta un proveedor en Settings → Models y elige un modelo.
- Abre Choose a model e identifica los iconos de capacidades de tres modelos.
- Si usas un modelo local, comprueba con
curlque el servidor lista modelos y que el contexto es de 65.536 o más. - Pide a Nod en el chat que cambie de modelo y verifica el cambio en Settings → Models.
- Anota qué valor de
NOD_TRUST_MODELusa tu instalación.
Autoevaluación
1. ¿Qué planes de ChatGPT sirven para Sign in with ChatGPT?
Plus o Pro. Con otros planes, la página de consentimiento de OpenAI informa de que falta un permiso y el inicio de sesión falla.
2. ¿Qué hace Nod si una petición al modelo falla?
No cambia de conexión. Si el error es temporal, como una sobrecarga o un límite de tasa, reintenta hasta tres veces.
3. ¿Cuánto contexto necesita un modelo local y por qué?
Al menos 64.000 tokens. Las instrucciones y herramientas de Nod ocupan unos 20.000 antes del primer mensaje, y muchos servidores arrancan con 4.096.
4. ¿Qué significa localhost cuando Nod corre en Docker?
El contenedor de Nod, no el equipo anfitrión ni el dispositivo cliente.
5. ¿Qué valor de NOD_TRUST_MODEL se usa por defecto?
selected: el modelo seleccionado, con su nivel de razonamiento más bajo.
6. ¿Entra la clave del proveedor en el workspace?
No. El servidor la añade a cada petición y nunca llega al workspace, al navegador ni al contexto del modelo.
Lista de control
- Tengo al menos una conexión de modelo que funciona.
- Sé cambiar de modelo desde Choose a model y desde el chat.
- Si uso un modelo local, tiene tools y 65.536 tokens de contexto o más.
- Sé qué verificador de acciones usa mi instalación.
- Sé que las claves de
.envno se copian a la base de datos.
Anterior: Primera conversación · Siguiente: Referencia de configuración