LLM en NVIDIA Jetson Orin: la IA embebida que cabe en la main
El NVIDIA Jetson Orin es la placa que incorpora una auténtica GPU CUDA en una carcasa del tamaño de una baraja de cartas. A diferencia de una Raspberry Pi, el Jetson Orin ejecuta un LLM con aceleración por hardware, lo que lo cambia todo para la IA integrada: robótica, domótica y sensores autónomos. Esta guía cubre la elección de la placa (Nano 8 GB o AGX 64 GB), la instalación de JetPack, el despliegue de Ollama y llama.cpp y los modelos que puedes ejecutar de forma realista según tu memoria, siempre en local.
¿Estás eligiendo un equipo? Nuestras opciones por presupuesto →
Buena relación calidad-precio para la IA local: un GMKtec EVO-X2 64 GB / 1 TB (Ryzen AI Max+ 395).
Un mini-PC es una máquina completa: verifica la memoria disponible y la compatibilidad del motor. No sustituye a macOS/MLX o CUDA.
Comparar todas las opciones por presupuesto, de 800 a 3 500 € →
Presupuesto ajustado: RTX 5060 · Modelos grandes: RTX 5090 · Mac Studio.
Cuando te desplazas: qué portátil elegir para la IA local →
Enlaces de afiliados — posible comisión sin coste adicional para ti. Como socio de Amazon, QuelLLM obtiene un beneficio de las compras que cumplen las condiciones requeridas.
#¿Por qué un Jetson Orin para un LLM?
Un Jetson Orin no es un microcontrolador: es un módulo de sistema en un chip que combina una CPU ARM Cortex, una GPU NVIDIA con núcleos CUDA y Tensor, y memoria unificada compartida entre ambos. En concreto, la GPU accede directamente a la RAM del sistema, sin VRAM separada. Por tanto, un LLM cargado ocupa la memoria unificada, exactamente como en un Mac Apple Silicon, y el cálculo aprovecha la aceleración CUDA.
Eso es lo que distingue radicalmente un LLM en Jetson Orin de una IA en Raspberry Pi: mientras que el Pi tiene dificultades al trabajar solo con la CPU, el Orin delega el procesamiento en la GPU y mantiene velocidades utilizables con modelos de 3B a 8B. Todo ello con un consumo de entre 7 y 60 vatios, con posibilidad de funcionar con batería, sin un ventilador ruidoso ni una torre bajo el escritorio.
- Autonomía de red
- Ninguna dependencia del cloud: el modelo se ejecuta en el propio dispositivo, incluso en un robot móvil o en un lugar aislado sin conexión.
- Latencia previsible
- Sin viajes de ida y vuelta por internet. La respuesta depende únicamente de la GPU local, lo que importa para un bucle de control en tiempo real.
- Confidencialidad
- Los datos de sensores, cámaras o micrófonos nunca abandonan el dispositivo. Esencial en domótica y entornos médicos.
- Ecosistema CUDA
- El mismo stack de software que una GPU de escritorio NVIDIA: Ollama, llama.cpp, PyTorch y TensorRT funcionan, con la salvedad de que requieren compilación para ARM.
#Jetson Orin Nano o AGX: elige tu tarjeta
La línea Orin cubre un factor 8 en memoria y mucho más en potencia. Para un LLM, el criterio decisivo es la RAM unificada: limita exactamente el tamaño del modelo, como la VRAM en una tarjeta gráfica clásica. Aquí están los umbrales que importan.
- Orin Nano 8 GB
- La opción de entrada (~40 TOPS). 8 GB de RAM unificada compartida con el sistema. Apunta a modelos 3B en Q4, o a un 7B que cabe con poco margen si liberas memoria. Ideal para un sensor inteligente o un asistente de voz integrado.
- Orin NX 8 / 16 GB
- Gama media (~70-100 TOPS). La versión de 16 GB permite ejecutar cómodamente modelos de 7B-8B en Q4_K_M. Buen compromiso para la robótica móvil.
- AGX Orin 32 GB
- Estación de computación integrada (~200 TOPS). Ejecuta un modelo de 14B en Q4 con contexto, o varios modelos pequeños en paralelo (visión + lenguaje).
- AGX Orin 64 GB
- El modelo de gama alta (~275 TOPS). Está pensado para modelos de 32B en Q4 (~19 GB), con margen para el contexto y otras cargas. El único de la gama pensado para trabajar en serio con modelos de 32B.
#Requisitos y rol de JetPack
Todo el ecosistema Jetson se basa en JetPack, la distribución de software de NVIDIA. Incluye Ubuntu (L4T, Linux for Tegra), los controladores CUDA, cuDNN, TensorRT y las bibliotecas de GPU. Sin JetPack correctamente flasheado, no hay aceleración: todo se ejecutaría únicamente en la CPU y perderías todas las ventajas de la placa.
- Una tarjeta Jetson Orin
- Nano, NX o AGX, con su alimentación adecuada (el Nano consume hasta 15 W, el AGX hasta 60 W).
- Almacenamiento rápido
- Tarjeta microSD (UHS-I) para probar el Nano, pero se recomienda encarecidamente un SSD NVMe: los modelos ocupan varios GB y la carga se resiente con una tarjeta SD.
- Un PC host con Linux (Ubuntu)
- Necesario para flashear mediante SDK Manager en los AGX/NX. El Nano Developer Kit se instala directamente desde una imagen SD.
- JetPack 6.x
- La rama reciente basada en Ubuntu 22.04, con CUDA 12. Es la plataforma de destino para una pila de software LLM moderna (Ollama y llama.cpp compilados para la arquitectura ARM SBSA).
#1. Flashear JetPack y verificar CUDA
- 01Flashear la imagenPara un Orin Nano Developer Kit, graba la imagen SD oficial en una tarjeta con Balena Etcher, insértala, conecta el equipo y sigue el asistente de Ubuntu. Para un AGX/NX, utiliza NVIDIA SDK Manager en el PC anfitrión, con un cable USB-C y la placa en modo de recuperación.
- 02Actualizar el sistemaEn el primer arranque, actualiza los paquetes. También es el momento de instalar los componentes de JetPack que falten si has utilizado la imagen SD.
- 03Verificar el GPU y CUDAComprueba que CUDA esté presente y que se reconozca el módulo. jtop (instalado mediante el paquete jetson-stats) ofrece una vista en tiempo real de la GPU, de la RAM y del consumo: el equivalente de nvidia-smi para Jetson.
#2. Instalar Ollama en JetPack
Ollama es la vía más rápida para tener un primer modelo. El script de instalación oficial detecta la arquitectura ARM64 y la GPU de Jetson, y configura el servicio systemd. Una vez iniciado, el daemon escucha por defecto en http://localhost:11434, exactamente como en un ordenador de escritorio.
Para una interfaz tipo ChatGPT, añade Open WebUI en un contenedor que apunte al mismo endpoint. En un Nano de 8 GB, limita los servicios: cada uno consume memoria unificada que ya se ha tenido en cuenta para el modelo.
#3. Compilar llama.cpp con CUDA
Ollama basta para la mayoría de los usos, pero compilar llama.cpp manualmente ofrece un control preciso: elección de la cuantización GGUF exacta, ajuste del número de capas transferidas a la GPU y, a menudo, algunos tokens por segundo más. También es la vía si quieres integrar el motor en tu propio binario para un sistema embebido.
#¿Qué modelos funcionan según la memoria?
La regla es la misma que en una GPU de escritorio: con cuantización Q4_K_M (el mejor equilibrio entre calidad y memoria), calcula ~2 GB para un 3B, ~5 GB para un 7B, ~9 GB para un 14B y ~19 GB para un 32B. En Jetson, resta la memoria del sistema de la RAM total para conocer tu presupuesto real.
- Orin Nano 8 GB
- Granite 4.2 3B (~2,2 GB), Qwen 3.5 4B (~3,4 GB) o Gemma 4 E2B (~4,3 GB) en Q4. Un 8B (Granite 4.2 8B, ~5,3 GB) cabe si cierras todo lo demás, pero el margen para el contexto sigue siendo limitado.
- Orin NX 16 GB
- Funciona con comodidad con modelos de 8B–9B (Granite 4.2 8B, Qwen 3.5 9B) en Q4_K_M y con espacio para el contexto. Un modelo de 24B (Mistral Small 24B, ~14 GB) cabe en Q4, aunque deja poco margen.
- AGX Orin 32 GB
- Un modelo de 24B (Mistral Small, gpt-oss 20B) con holgura, o un MoE de 30-35B (Qwen 3.6 35B-A3B, ~23 GB). Espacio suficiente para combinar un modelo de lenguaje y una pila de visión.
- AGX Orin 64 GB
- Un MoE de 30-35B a plena calidad, un modelo de 24B en Q8 o varios modelos cargados simultáneamente. El único nivel pensado seriamente para modelos grandes con margen.
#Consumo y modos de alimentación
La principal ventaja del Jetson es la relación rendimiento/vatio. Cada tarjeta ofrece modos de alimentación (power modes) que limitan el consumo activando más o menos núcleos de CPU y reduciendo la frecuencia de la GPU. Se controlan con nvpmodel, y jetson_clocks fuerza las frecuencias al máximo permitido por el modo.
- Modo de bajo consumo
- En Orin Nano, un modo de 7 W limita considerablemente la velocidad de generación, pero permite usar una batería o una fuente de alimentación USB-C de poca potencia. Adecuado para un sensor que consulta el modelo de forma intermitente.
- Modo de máxima potencia
- El modo MAXN desbloquea toda la GPU. En AGX Orin, el consumo puede alcanzar 60 W: prevé refrigeración (disipador activo) y una fuente de alimentación de capacidad adecuada.
- El equilibrio en la IA embebida
- Muchos proyectos funcionan bien en modo 15-25 W: buen rendimiento en un 3B-7B, disipación manejable, autonomía de batería razonable.
#Casos de uso: robótica y domótica
El Jetson destaca allí donde un LLM debe funcionar lo más cerca posible del mundo físico, sin la latencia de la nube ni fugas de datos. Dos ámbitos predominan en los sistemas embebidos.
- Robótica (ROS 2)
- El LLM actúa como interfaz de lenguaje natural: traducir una instrucción hablada en una secuencia de acciones, describir una escena percibida por la cámara, razonar sobre una tarea. El Jetson aloja tanto la percepción (visión) como el lenguaje en la misma GPU.
- Domótica local
- Un asistente de voz doméstico que controla Home Assistant sin recurrir nunca a la nube. El modelo interpreta las peticiones en lenguaje natural y activa las automatizaciones: el micrófono y los datos permanecen en casa.
- Sensor inteligente autónomo
- En un emplazamiento aislado (agrícola, industrial), el Orin analiza datos localmente y genera resúmenes en lenguaje natural, que se transmiten solo cuando hay una conexión disponible.
- Asistente de campo offline
- Documentación técnica consultable mediante RAG, integrada en un vehículo o un equipo, que funciona sin conexión a la red.
#Frente al Raspberry Pi: la verdadera diferencia
La pregunta siempre vuelve: ¿por qué pagar por un Jetson cuando una Raspberry Pi 5 también ejecuta Ollama? La respuesta se resume en una palabra: la GPU. La Pi no tiene un acelerador aprovechable para la inferencia de LLM; todo se ejecuta en la CPU ARM. El Jetson, en cambio, delega el cálculo en núcleos CUDA.
- Aceleración
- Pi 5: solo CPU, apenas unos pocos tokens por segundo con un 3B. Jetson Orin: GPU CUDA, un rendimiento varias veces superior con el mismo modelo y modelos de 7B-14B realmente utilizables.
- Memoria
- Pi 5 tiene un límite de 8/16 GB de RAM para la CPU. Jetson llega hasta 64 GB de memoria unificada que la GPU puede utilizar, lo que permite ejecutar modelos fuera del alcance del Pi.
- Precio
- El Pi cuesta una fracción de lo que cuesta el Jetson. La diferencia de precio es real: el Jetson se justifica cuando necesitas mayor capacidad de procesamiento o modelos grandes, no para un simple bot de 1B.
- Ecosistema
- El Pi es de propósito general y cuenta con un ecosistema comunitario; el Jetson está orientado a la IA integrada con CUDA, TensorRT y el soporte de NVIDIA para robótica (Isaac).
#Solución de problemas
- Ollama permanece en CPU
- La GPU no se utiliza si JetPack/CUDA no está correctamente instalado o si has flasheado una imagen ARM genérica sin soporte para Tegra. Comprueba nvcc --version y la actividad de la GPU en jtop.
- Out of memory al cargar
- El modelo supera la memoria unificada disponible tras descontar la que utiliza el sistema. Baja a un modelo de menor tamaño (7B → 3B), pasa a una cuantización Q4 más agresiva o cierra los otros servicios.
- Caída drástica de la velocidad de generación
- Limitación del rendimiento por temperatura. Controla la temperatura en jtop, mejora la refrigeración o cambia a un modo nvpmodel que consuma menos pero sea estable.
- Carga del modelo muy lenta
- Modelos almacenados en microSD. Mueve ~/.ollama (o tus GGUF) a un SSD NVMe para que se carguen en segundos en lugar de minutos.
- llama.cpp ignora el GPU
- Opción -ngl ausente o compilación sin CUDA. Recompila con -DGGML_CUDA=ON y ejecuta con -ngl 99.
#Para ir más allá
Jetson comparte la misma pila de software que un PC NVIDIA. Estas guías te permiten ampliar de forma natural tu configuración de sistema embebido:
- LLM en Raspberry Pi 5: IA local embebida
- La comparación directa usando solo la CPU, útil para decidir entre Pi y Jetson según tu proyecto y tu presupuesto.
- Compilar llama.cpp con CUDA
- Para profundizar en la compilación desde el código fuente y los ajustes de GPU, aplicables a la arquitectura ARM del Jetson.
- Elegir tu cuantización (Q4, Q5, Q8, FP16)
- Para ajustar el uso de memoria a la RAM unificada de tu tarjeta Orin.
¿Un comentario, un error, una precisión? Avísanos, eso mejora la guía para todos.