PTENES
LOCAL IA // guía de ingeniería
Arquitecturas ↗
Un manual práctico para ejecutar IA en tu propio hardware

La Guía de IA Local
Ingeniería Guía

Ejecuta IA de nivel avanzado en un hardware que te pertenece.

2026 edición Prioridad local 4 vistas 15 secciones

Cuatro maneras de lograrlo: la Guía es la referencia completa, el Recorrido cuenta la historia de la compilación de principio a fin, Motores es cómo elegir un motor de inferencia.

Nuevo y el más claro de todos: una página complementaria de planos de arquitectura, con un diagrama del sistema y una explicación en lenguaje cotidiano para cada configuración, desde una sola laptop hasta un clúster doméstico.

Empieza aquí en 60 segundos

La IA de gran escala suele funcionar en la nube de otra persona. Eso cuesta dinero, puede cambiar o dejar de funcionar sin previo aviso y significa que tus datos salen de tus manos. Esta guía trata sobre cómo ejecutarla en tu propia computadora: más barato, privado y tuyo. La contrapartida es que tú lo configuras y te encargas de mantenerlo.

La idea completa en tres pasos:

  1. Ejecuta un modelo en tu propia máquina con un programa gratuito (llama.cpp), en la computadora que ya tienes.
  2. Apúntale tu herramienta de IA cambiando una configuración para que use tu modelo en lugar de la nube.
  3. Añade más solo cuando sea necesario: velocidad, más usuarios, trucos para bases de código grandes o seguridad, una cosa a la vez.

Todo lo que sigue detalla esos tres pasos. ¿Eres nuevo? Consulta la guía o el planos de arquitectura primero.

00

Toda la pila en una vista general

De arriba abajo: del propósito al silicio
En lenguaje sencillo

Este es el mapa de todas las piezas y cómo se organizan. No necesitas todas las capas. La mayoría de las personas usa solo las de abajo (una máquina, un motor, un modelo) y agrega las superiores cuando se topa con un límite.

La ingeniería de IA local va más allá de instalar una app de chat. Hay una pila completa debajo, y esta guía la cubre de principio a fin.

Por quéSoberanía, privacidad, costo fijo, sin límites de solicitudes, resiliencia ante la retirada repentina de un proveedor
AgentesClaude Code / opencode / Droid / Kimi-CLI apuntados a un endpoint local
ArnésEnrutamiento (DSPy / GEPA), compiladores de contexto (RLM), memoria (MemAgent / Honcho)
ServiciovLLM / llama.cpp / SGLang / ktransformers, con AIBrix en Kubernetes
ModelosPesos abiertos: Qwen, GLM, DeepSeek, Kimi, MiniMax, Gemma, Nemotron
ComprimirCuantización (GGUF / AWQ / FP8 / NVFP4 / BitNet) + compresión de caché KV (TurboQuant)
HardwareGB10 / Ryzen AI 395 / 4x A6000 / Apple Silicon / cajas de borde con 7 años
SeguridadEjecución en sandbox (Hyperlight / Firecracker), controles de instalación de confianza cero (Aegis)
01

Por qué usar IA local

Los argumentos, con pruebas

El argumento no es «lo local es más inteligente que Claude». Es «ciertos razonamientos nunca deberían llegar a la API de otra persona», además de las ventajas económicas concretas. El subsidio es una trampa: la programación barata en la nube estaba subsidiada por capital de riesgo y la factura está por llegar.

$133k
Por mes, extrapolado a partir de un agente que gastó $14.06 en menos de 5 minutos ($3/min)
40x
Impacto del reajuste de precios de Copilot. «Tu plan de $19 por puesto se convirtió en un problema de $1,550. 40 veces más, no un 40% más».
$15k
El mayor gasto mensual en agentes en la nube por ingeniero registrado en startups
$0
Costo marginal local por token después de la inversión inicial. Sin facturas inesperadas ni telemetría.
  • La nube no es determinista y su rendimiento se degrada sin avisar. Un experimento de $43 descubrió que la calidad de salida es "una onda sinusoidal de genialidad y galimatías" vinculada a la carga y la hora del día: cuantización agresiva hasta 2-bit, GPU spin-down, system prompts intercambiados. Lo local es "determinísticamente tonto", pero predecible y tuyo.
  • El riesgo del proveedor es real y puede aparecer de repente. Caídas del servicio, cambios en la retención de datos de 5 años, límites de uso semanales, suspensiones por controles de exportación de modelos enteros. «La caída del servicio es temporal. Los pesos son para siempre».
  • El contrapunto honesto. Lo local tiene que ver con la resiliencia y la privacidad, no con superar a los modelos de frontera en capacidad bruta. Ejecuta localmente lo que puedas y envía fuera solo los problemas realmente difíciles, valiosos y que se puedan comprimir. La opción híbrida también es la única solución real para la IA en la sombra.
02

Hardware

Los equipos usados en la práctica

Un conjunto representativo de equipos va desde un «cajón de calcetines» hasta un «calefactor», todos son equipos reales bajo carga.

EquipoSilicioMemoriaRol
NVIDIA GB10 / ZGX NanoGrace-Blackwell, CUDA cap 12.1128GB unificadaEquipo compacto para agentes de uso diario. Del tamaño de la palma de la mano, de 33 a 74W, ejecuta DeepSeek V4 con contexto de 1M.
HP Z8 Fury G5Xeon + 4x RTX A6000 48GB~192GB VRAM / 477GB RAMLa «bestia». Récords de rendimiento, entrenamiento y MoE gigantescos. ~1.8kW, A6000s a entre 84 y 90C.
HP Z2 Mini G1aAMD Ryzen AI MAX+ PRO 395128GB unificadaEl lado de AMD / ROCm. «Exocortex» de bolsillo.
MacBook Air / ProApple Silicon M3 / M4 / M524 a 32GBCliente SSH ligero; modelos pequeños en Metal / MLX; inferencia WebGPU en el navegador.
ThinkPad X280 de 2018i5-8350U, solo CPU16GBPrueba extrema en el borde: Qwen3-8B a ~3.27 tok/s, ~16W con batería.
clúster k8s "Z14 Mecha"1x Z8 + 3x Z2 (NVIDIA + AMD)564GiB VRAMKubernetes con proveedores mixtos, "un centro de datos en un clóset".
  • El hardware antiguo y la buena ingeniería ganan. "No es el auto, es quien lo conduce." Las A6000 de hace 5 años superan en rendimiento a las API SaaS.
  • Fuerza más VRAM en Ryzen AI 395. Tiene una capacidad nominal de 96GB, pero un modo de BIOS «edge AI server» y ajustes de Linux GTT / TTM liberan el conjunto completo de 128GB: Qwen3-Coder-30B BF16 con un contexto de 1M, 115GB de uso de memoria y 24.4 tok/s.
  • Vigila las temperaturas en Strix Halo. Se apagó por temperatura porque thermald no reconocía el nuevo CPUID; la solución fue thermald --ignore-cpuid-check.
  • La red es el cómputo. Una A6000 se puede compartir por LAN con una ThinkPad mediante un controlador de GPU virtual, tunelizando CUDA por QUIC / TLS / UDP. DGX Spark es un juguete para aprender, no para producción.
03

Inferencia y puesta a disposición

Dos motores hacen el 90% del trabajo
En lenguaje sencillo

Un motor de inferencia es el programa que ejecuta el modelo: carga los pesos, recibe tu solicitud y transmite la respuesta. El modelo es el bloque del motor; esto es todo el auto que lo rodea. vLLM es el de servicio pesado, diseñado para muchos usuarios a la vez. llama.cpp es el todoterreno que funciona en casi cualquier equipo.

vLLM

El motor de serving para producción. Rutas compatibles con OpenAI, Anthropic y Ollama, batching continuo, prefill por bloques y caché de prefijos. Compilado desde el código fuente para modelos disponibles desde el primer día.

llama.cpp

El motor más fácil de usar y para el edge. GGUF, llama-server, funciona con CUDA / Metal / ROCm / Vulkan. Código fuente editado directamente para trabajar con KV y cuantización.

SGLang

Decodificación especulativa EAGLE, parsers de herramientas y razonamiento de GLM. Una ruta de servicio para modelos específicos.

ktransformers

Descarga híbrida a VRAM + RAM para modelos enormes. Así ejecutó Kimi K2, con 1T de parámetros, de forma local.

AIBrix

plano de control nativo de k8s: escalado automático con conocimiento de LLM, enrutamiento distribuido de caché KV, LoRA de alta densidad. Una «plataforma de IA empresarial» capaz.

shim fake-ollama

Un proxy de Rust / axum que hace que Copilot, Cline y Roo crean que hablan con Ollama mientras el tráfico llega a vLLM / llama.cpp.

El patrón plug-and-play que se repite constantemente: apunta cualquier agente de programación basado en la nube a un endpoint local.

# Redirige cualquier agente compatible con Anthropic a pesos locales
exportar ANTHROPIC_BASE_URL=http://localhost:8080 # llama.cpp
exportar ANTHROPIC_BASE_URL=http://localhost:8000 # vLLM
# Claude Code ahora "simplemente funciona" con tu propio modelo

Cuando un agente solo habla un dialecto, ponle una capa de compatibilidad. Claude Code Router (ccr) traduce Claude Code a backends compatibles con OpenAI; fake-ollama cubre el dialecto de Ollama. Las configuraciones serias evitan Ollama y prefieren vLLM y llama.cpp para tener más control.

La división que lo determina todo es entre prefill y decode. Prefill lee el prompt y está limitado por la capacidad de cómputo. Decodificación genera un token a la vez y está limitado por el ancho de banda de memoria. Un prompt corto con una respuesta larga depende del ancho de banda y del procesamiento por lotes; un prompt largo con una respuesta corta depende de los kernels de atención y del prellenado por fragmentos. Adapta el motor a esa forma, a tu interconexión y a tu formato de cuantización.

Tu situaciónUsa
Laptop, edge o hardware poco comúnllama.cpp
Flujos centrados en MacMLX / MLX-LM
Inferencia local en una sola RTXExLlamaV2
De 2 a 4 o más GPUs NVIDIA/CUDAExLlamaV3
Inferencia general en producciónvLLM
Contexto largo / MoE / enrutamientoSGLang
Máximo rendimiento en NVIDIATensorRT-LLM
Orquestación de clústerNVIDIA Dynamo

Esa es la versión de una página. La Pestaña Engines incluye el desglose completo motor por motor, los cuellos de botella reales, recetas de estrategia de hardware y cómo medirlos con honestidad.

04

El panorama de los modelos de pesos abiertos

Y cómo elegir
En lenguaje sencillo

Estos son los cerebros reales que puedes descargar y ejecutar, en su mayoría gratis y abiertos. Los nombres cambian cada pocas semanas, pero la regla no: elige el más pequeño que haga bien tu trabajo, no el más grande que encuentres.

Qwen3.x / 3.6

La familia estrella, de 0.6B a 480B-A35B. Qwen3-Coder-Next (~80B / 3B activos) es el asistente de programación diario predeterminado. "Qwen es el nuevo Llama."

GLM-4.x / 5

Z.ai, MIT. «Opus en casa». GLM-4.7-Flash es la opción «rápida, buena y barata»; superó a los demás en llamadas a herramientas por una fracción del costo de Opus.

DeepSeek V3.x / V4

"Alma de desarrollador sénior de una empresa del Fortune 500" para backends. V4-Flash: 284B / 13B activos, contexto de 1M, Sparse Attention ~9x más barato.

Kimi K2.x

Moonshot, 1T / 32B activos. Nativo para enjambres de agentes, hasta 300 subagentes en paralelo.

MiniMax M2.x

~230B / 10B activos. «Anthropic en una botella», reducido con NVFP4 para que quepa en un solo GB10.

Gemma 4 / Nemotron

Híbridos de Mamba-Transformer de Google con licencia Apache-2.0 y NVIDIA. Además: Ling / Ring, ERNIE, Hunyuan, LongCat.

  • La eficiencia es la nueva escalabilidad. Más grande no significa mejor. Un modelo denso de 27B o un MoE con 3B activos en la frontera de Pareto supera a un gigante de 1T para la mayoría de los trabajos.
  • Adapta el modelo al idioma y al trabajo. DeepSeek para backends empresariales, no para JavaScript de startups. Modelos pequeños y diminutos para tareas de agentes repetitivas y específicas.
  • Los benchmarks públicos rara vez predicen si algo se adapta a tus necesidades. La eficiencia en tokens, el costo y la facilidad de uso en tus propias tareas son mejores criterios de selección.
  • La dispersión de MoE es la clave. Una enorme cantidad total de parámetros y muy pocos parámetros activos por token es lo que permite que un comportamiento de vanguardia quepa en la memoria de un equipo de consumo.
★

Evalúalo tú mismo: evaluaciones

La tabla de clasificación no es tu trabajo
En lenguaje sencillo

Que un modelo esté en lo más alto de una tabla de clasificación pública casi no te dice nada sobre si es bueno para tu trabajo. La solución es una evaluación: un conjunto pequeño de tareas reales tuyas por el que haces pasar cada modelo candidato, y luego te quedas con el que gana en esas tareas, no en el gráfico.

Cómo hacer una evaluación rápida sin framework: reúne entre 10 y 30 tareas que realmente haces (un error real que corregir, una función que escribir, un documento que resumir), cada una con la respuesta que aceptarías. Ejecuta todos los modelos candidatos con todas ellas. Califícalos como aprobados o reprobados, o simplemente compara las salidas A/B para decidir cuál implementarías. Conserva el ganador en tu conjunto de tareas. Ese resultado vale más que cualquier benchmark, porque se mide con el trabajo que te importa.

Funciona en ambos sentidos, y ese es precisamente el punto. A veces, los modelos abiertos ya superan a los modelos insignia cerrados en evaluaciones del mundo real (un modelo abierto superó hace poco a un modelo cerrado de primer nivel en una evaluación de un framework web en producción), y a veces no superan los tuyos. Solo lo averiguas probándolos con tus propias tareas. Para calificar a gran escala, puedes usar un modelo potente como evaluador, pero normalmente basta con revisar 20 ejemplos para decidir.

05

Compresión

Cuantización y caché KV
En lenguaje sencillo

Los modelos y la memoria que necesitan son enormes, así que los haces más pequeños. La cuantización almacena los números con menos precisión, como guardar una foto en un JPEG más pequeño: es un poco menos exacto, pero ocupa menos espacio y aún se ve bien. La caché KV es la memoria a corto plazo que el modelo tiene de la conversación actual; comprimirla es lo que permite que un contexto enorme quepa en una tarjeta gráfica pequeña.

Aquí es donde la ingeniería local se vuelve difícil y se consiguen la mayoría de las mejoras. Formatos de pesos: GGUF (Q2_K a Q8_0), AWQ de 4 bits, FP8, NVFP4 / MXFP4 y ternario BitNet de 1.58 bits.

APEX

Precisión mixta consciente de MoE en llama.cpp estándar. Los bits por experto y por capa superan a Q8_0 e incluso a F16 en perplejidad, con la mitad del tamaño.

Destilación de BitNet

Convierte LLM FP a ternario de 1.58 bits: ~10x menos memoria, inferencia en CPU 2.65x más rápida y precisión cercana a FP16.

Personalizado de 2 bits

Un GGUF personalizado de DeepSeek-V4 (IQ2XXS-w2Q2K) es lo que hace que un modelo de 284B quepa físicamente.

TurboQuant (el método de Google, implementado en la ruta Triton de vLLM) comprime la caché KV a entre 2.5 y 3.5 bits por token mediante el manejo de valores atípicos, una transformación MSE de Hadamard, codebooks de agrupamiento de Lloyd y una proyección de signo de 1 bit con QJL. Esto fue lo que mantuvo 4.7M tokens of KV cache resident para alcanzar 3,426 tok/s.

# vLLM con compresión de caché KV mediante TurboQuant
vllm serve /models/target \
  --tensor-parallel-size 4 --attention-backend TRITON_ATTN \
  --kv-cache-dtype turboquant35 --enable-turboquant \
  --turboquant-metadata-path /models/target/turboquant_kv.json
06

Ingeniería de contexto

La habilidad más importante
En lenguaje sencillo

El contexto es todo lo que el modelo puede ver a la vez. Como un escritorio, deja de funcionar cuando lo llenas demasiado. El truco es dejar de volcar toda la base de código en el escritorio y permitir que el modelo busque solo las pocas páginas que necesita, justo cuando las necesita.

RLM

Modelos de lenguaje recursivos. Carga una base de código de 32M tokens en una variable de Python REPL; el modelo raíz escribe código para recorrerla y crea subagentes que devuelven símbolos resumidos, no muros de texto. Entre un 15% y un 40% en tareas de largo plazo, sin degradación del contexto.

MemAgent

El megacontexto es un problema de memoria, no de atención. RL por fragmentos sobre una memoria de tokens fija: QA de 3.5M tokens con menos del 5% de pérdida y escalado lineal, en un modelo base con un contexto de apenas 8K.

Compresión óptica

El «momento JPEG». Renderiza texto como imágenes para un VLM. DeepSeek-OCR: decodificación del 97% con una compresión de 10x. Glyph: 10k palabras convertidas en ~3k tokens visuales.

Atención dispersa

DeepSeek Sparse Attention reduce el prefill de 128K de ~$0.70 a ~$0.10 por Mtok.

96.39%
Tasa de aciertos de la caché de prefijos durante una sesión local de Claude Code de 6 horas (46.3M tokens de prompt, solo ~1.3M de cómputo real de prefill). Prueba de que el plan «ilimitado» en la nube es una lotería de caché, no una cuestión de física.

Un awk comando de una línea contra vLLM /metrics lo demuestra: prefix_cache_hits_total / prefix_cache_queries_total. La idea: el costo marginal es casi cero, así que los límites son puro teatro de precios.

Más allá de una sesión: memoria local y recuperación

La ingeniería de contexto se ocupa de una sola conversación. Para el conocimiento que debería persistir entre sesiones, crea una capa de memoria privada completamente en tu propia máquina: embeddings locales para indexar tus notas y documentos, además de un reordenador local que vuelve a ordenar los resultados más relevantes para que el modelo vea los pocos fragmentos mejores, no solo los que se parecen. El reordenador es la parte que la mayoría se salta, y es lo que hace que la recuperación local sea precisa. Nada sale de tu máquina.

No es solo texto

Los modelos locales también procesan voz e imágenes. Los modelos multimodales abiertos (de la clase Gemma) interpretan imágenes y funcionan completamente sin conexión; los modelos de voz en el dispositivo te permiten dictar y transcribir de forma privada, sin la nube. Se aplican las mismas reglas para ser dueño de tu IA: elige un modelo adecuado, ejecútalo localmente y mantén los datos en la máquina.

07

Optimización del rendimiento

Cómo hacer que la inferencia sea realmente rápida
En lenguaje sencillo

El rendimiento es la cantidad de palabras por segundo que obtienes. Lo sorprendente es que el límite suele ser la velocidad con que la máquina mueve datos en la memoria, no la rapidez con que hace cálculos. Así que las mejoras reales vienen de una organización y planificación más inteligentes, no de una tarjeta gráfica más grande.

  • Pilas de decodificación especulativa. DFlash (generación preliminar con difusión por bloques, aceleración de ~6x) más DDTree (árbol de borradores en una sola pasada, verificación con atención de árbol, sin pérdida). Observa la longitud media de aceptación en los registros.
  • La ubicación de los expertos de MoE está limitada por HBM (limitado por la velocidad a la que la memoria de la tarjeta mueve datos, no por sus cálculos). Para alcanzar 370 TPS con 4x A6000: fija el hilo del router a la memoria más cercana, reorganiza la caché KV para que los expertos activos queden en los bancos de memoria más rápidos y establece la profundidad de la cola en ~64 para ocultar la latencia.
  • Separación entre daemon diurno y nocturno. Baja latencia interactiva durante el día, trabajo por lotes asíncrono con contexto largo por la noche, el mismo hardware.
ConfiguraciónResultado
Qwen3.5-35B AWQ, 4x A6000, TurboQuant 3.53,426 tok/s con contexto de 1M, caché KV residente de 4.7M tokens
MiniMax M2 BF16/FP8, 4x A6000, vLLM + AIBrix620 tok/s, 6,000 sesiones simultáneas con un 100% de éxito, ~1.8kW
GLM-4.7-Flash en un solo GB10~1,470 tok/s generación máxima, 195 concurrentes, cero en cola
Gemma-4 31B AWQ en UNA A6000129 simultáneas subagentes, 100% de éxito
DeepSeek V4-Flash, contexto de 1M, un solo GB1080 a 91 tok/s por agente
Gemma4 2.3B en una pestaña del navegador (WebGPU, MacBook Air)80 tok/s, 2GB de RAM por pestaña, completamente sin conexión
Qwen3-8B en una CPU i5 de 20183.27 tok/s a ~16W
08

Agentes de programación con modelos locales

La mejora en el uso diario

El patrón siempre es el mismo: toma un agente diseñado para la nube y apúntalo a pesos locales.

Claude Code sin interfaz gráfica, sin cuenta opencode (32 concurrentes) Factory Droid Kimi-CLI Cursor Cline Kilo Roo Mistral Vibe "16 sistemas en una sola máquina con GPU"
Arnés > modelo
En la programación con agentes, el arnés y la ingeniería de contexto suelen importar más que el modelo base. Los enjambres locales bien configurados pueden competir con modelos de vanguardia en bases de código heredadas.

Una vez que el endpoint es tuyo, la interfaz es portátil: cualquier dispositivo que pueda mantener una conexión puede funcionar como cliente, y una laptop puede ejecutar todo el ciclo completamente sin conexión con un modelo local pequeño.

09

Enjambres y orquestación

A escala, el trabajo pasa a ser coordinar
En lenguaje sencillo

Un enjambre no es más que muchas copias del agente trabajando al mismo tiempo, que convierten a un trabajador en todo un equipo. La parte difícil ya no es el trabajo en sí, sino repartir las tareas y evitar que los trabajadores se estorben entre sí.

Con más de 10,000 agentes y una proporción de IA a personas de 35:1, no hay una interfaz de usuario humana; el backlog es el HUD.

  • Enjambres. Iniciar, ejecutar, informar y terminar. Los enjambres autoorquestados reducen un análisis exhaustivo con OpenClaw de 3.5 horas y 19M tokens a ~10 minutos, con resultados idénticos en un 90%.
  • Aislamiento. Un git-worktree por agente, o AgentFS (un archivo .db de SQLite que contiene archivos, estado y tool_calls, de modo que cp agent.db snapshot.db es viajar en el tiempo y puedes consultar el comportamiento del agente con SQL).
  • El código heredado es un grafo, no un corpus de documentos. Una herramienta como dede expone un grafo de dependencias de Roslyn como una skill para que los agentes consulten el alcance del impacto en lugar de dividir a ciegas 40 repos en fragmentos RAG.
  • Bucle sin interfaz gráfica. temporizadores de systemd más flock además de etiquetas de issues de Radicle como máquina de estados. Primero sin conexión; las personas hacen el merge al final.
10

Seguridad y confianza cero

El modelo escribe, el sistema restringe y el sandbox contiene
En lenguaje sencillo

Una vez que un agente puede ejecutar comandos, trátalo como a un nuevo pasante: es útil, pero no le darías todas las llaves el primer día. Esta configuración le permite sugerir acciones mientras un verificador las aprueba y una sala sellada contiene cualquier error.

Hyperlight

CNCF, Rust. MicroVM aisladas por hardware que se inician en ~1ms, con llamadas al entorno invitado en microsegundos y capacidad de guardar y restaurar instantáneas, para que un rm -rf alucinado se revierta en microsegundos.

Firecracker + AgentFS

aislamiento de microVM para agentes, verificado formalmente con Quint.

Aegis

Una barrera de instalación de confianza cero. Planes de ejecución firmados con Ed25519, registros de auditoría encadenados mediante hashes SHA-256, IA arquitectónicamente incapaz de escalar privilegios: nunca obtiene acceso root ni genera argv; se aplica mediante std::process::Command sin shell.

Higiene de la cadena de suministro

Fija cada artefacto a un SHA-256, desactiva los scripts del ciclo de vida de npm, genera un SBOM, firma con cosign y aplica controles con Trivy y semgrep. «¿Tu stack puede resistir pip install?»

11

Mejora personal y entrenamiento local

Entrena en la misma máquina
En lenguaje sencillo

También puedes mejorar un modelo en tu propia máquina, no solo usarlo. El truco más barato es dejar que aprenda de sus propias mejores respuestas. No necesitas un centro de datos para conseguir una mejora real.

Autodestilación

Apple SSD: SFT con resultados propios del modelo sin verificar, sin RL, verificador, docente ni ejecución. Qwen3-30B pasó del 42.4% al 55.3% de pass@1 en LiveCodeBench, un +30% relativo.

GEPA + DSPy

La optimización genética de Pareto para prompts y skills converge en ~50 iteraciones frente a 5,000 pruebas de fuerza bruta y recopila automáticamente las sesiones de alto éxito.

Modelos recursivos diminutos

TRM (7M params, llamadas recursivas a sí mismo) alcanza un 45% en ARC-AGI-1, superando a modelos miles de veces más grandes. RSA mejora Qwen3-4B en +29.9 en AIME sin verificadores.

Entrenamiento desde cero

nanochat de principio a fin en 4x A6000. Bucles de RL con el verificador de préstamos de Rust (prompt, cargo check, recompensa) alcanzaron una tasa de compilación del 71.8% en un entorno aislado sin privilegios de root.

Cierra el ciclo

La forma más barata de mejorar por cuenta propia: dale al agente una manera de verificar sus resultados (pruebas, un compilador, un verificador) y luego haz que repita el ciclo. Redacta, verifica y corrige hasta que pase. Así es como los equipos ejecutan enjambres de agentes que mejoran por sí mismos, sin necesidad de entrenarlos.

Posentrenamiento abierto

Las pilas de RL detrás de los grandes modelos abiertos también son abiertas. Una de ellas ajustó posteriormente un modelo de clase frontier en unos dos días. Puedes usar las mismas herramientas para ajustar posteriormente tu propio modelo con tus propios datos.

12

Casos de uso relacionados

Que demuestran la idea
  • Ingeniería inversa, completamente local. Ghidra más un agente local a 80 tok/s descompilaron un binario de 6.9MB en 110 segundos (9,426 funciones, más de 250 APIs de Windows, 7 documentos generados automáticamente). «Tres semanas de trabajo de ingenieros de ingeniería inversa se convierten en una mañana de domingo.»
  • OCR privado. GLM-OCR (0.9B) supera a Gemini y GPT en el análisis de documentos mientras se ejecuta en vLLM.
  • La privacidad como capacidad. Qwen3.5-35B local desanonimizó textos con una precisión de ~90%. La idea es que tu estilo de escritura es un dato biométrico, así que nunca debería salir de tu máquina. El mismo enfoque usó un modelo local y mitmproxy para aplicar ingeniería inversa a la API de una freidora de aire.
  • IA de borde en tiempo real / OT. CASA: percepción a 100Hz, decisión a 10Hz, acción en menos de 10ms, con contratos de decisión (TTL, consenso multimodelo, una comprobación de cordura clásica con Z-score y un registro de auditoría SHA-256). «Un agente debería ser un controlador PID, no un estudiante de filosofía que escribe una tesis».
El caso de uso decisivo: agentes siempre activos y ambientales

Esto es algo que solo puedes hacer en local. Como un modelo local es ilimitado y no tiene costo por llamada ni límite de solicitudes, puedes dejar agentes en ejecución las 24 horas. Hay quienes realizan análisis de seguridad continuos en su propio código, vigilan una base de datos para detectar anomalías y rastrean la web cada veinte minutos en busca de oportunidades, todo el día, todos los días. En las API en la nube eso costaría más que el hardware; en local, solo pagas la electricidad. Una flota de trabajadores incansables que nunca duerme: solo es posible cuando el modelo es tuyo.

Úsalo desde cualquier lugar, de forma privada (el truco de la red mesh)

Crea una malla privada (Tailscale) entre todas tus máquinas y tu teléfono, y cualquier dispositivo podrá usar desde cualquier lugar del mundo un modelo que se ejecute en tu equipo de casa, con conexión cifrada y sin pasar nunca por la internet pública. Combínala con un agente orquestador (Hermes u OpenClaw) que cargue modelos y distribuya el trabajo entre tus máquinas, como una persona de TI a la que le hablas en lenguaje natural. Así es como un montón de computadoras se convierte en una nube personal de IA que te pertenece.

13

Producción a escala

Hiperescala en casa

k8s + AIBrix

El plano de control. Autoescalado consciente de los LLM basado en gpu_cache_usage_perc, caché KV distribuida, KubeRay, LoRA de alta densidad.

Alta disponibilidad para un equipo

2x Ubuntu + MicroK8s, etcd on DRBD, Pacemaker VIP, LINSTOR, MetalLB, ArgoCD canary. Failover under 60s, serving Qwen3-Coder-30B at ~90 tok/s.

Fábrica de programación con IA

Definition of Done como criterios de compilación: bloquea las fusiones por debajo del 85% de cobertura; un agente de seguridad rechaza las PR vulnerables. "Trata la IA como un equipo de ingeniería."

14 / La economía

El costo está dominado por caché, no la capacidad de cómputo

Por eso los planes de tarifa fija tienen límites de uso (las flotas a gran escala saturan la infraestructura de los proveedores) y por eso «ilimitado» es un anclaje psicológico. El costo marginal de un token local es prácticamente cero después de la inversión inicial.

88.7%
De las consultas de un solo turno pueden responderse localmente (estudio de Stanford sobre inteligencia por vatio)
80.4%
Reducción del consumo energético con enrutamiento híbrido local y en la nube; reducción del 73.8% en costos de cómputo
45%
Reduce costos incluso con un enrutador local con solo un 60 % de precisión
15

La guía inicial

De la IA local en ocho pasos
Elige una máquina que ya tengas. Una MacBook Air, una GPU para juegos, incluso un ThinkPad antiguo. "No existe una guía perfecta. Solo tienes que empezar."
Instala llama.cpp, descarga un GGUF (empieza con Qwen3-Coder-30B o GLM-4.7-Flash) y ejecuta llama-server.
Apúntale tu agente actual. Configura ANTHROPIC_BASE_URL en localhost y ejecuta Claude Code, o usa Claude Code Router / fake-ollama para otras herramientas.
Da el salto a vLLM cuando necesitas rendimiento y concurrencia; agrega caché de prefijos y una cuantización de la caché KV.
Añade ingeniería de contexto (RLM para repositorios grandes, un grafo de dependencias como skill) antes de recurrir a un modelo más grande.
Ejecuta el agente en un sandbox (Firecracker / Hyperlight) y restringe las instalaciones (el patrón Aegis) en cuanto pueda escribir en el disco.
Escalar horizontalmente con AIBrix en k8s solo cuando una máquina realmente sea el cuello de botella.
Mantén un enfoque híbrido. Ejecuta el 90% localmente, deriva el problema difícil ocasional a la nube y ten un plan de contingencia para el día en que un proveedor devuelva budget_exceeded.
★

Profundiza: constrúyelo desde los primeros principios

Para cuando quieras entender, no solo usar
En lenguaje sencillo

El resto de esta guía trata sobre cómo usar bien la IA local. Esta parte es para quienes sienten curiosidad: construir realmente la cosa para que las reglas dejen de parecer magia. El objetivo es construir, ajustar y lanzar un modelo pequeño, no estudiar teoría para siempre.

Un camino sin rodeos desde "qué es un token" hasta "entrené un mini-GPT", en cinco fases. Sáltate lo que ya sabes y vuelve a ver lo que se te dificulta.

Fase 0, fundamentos. Solo la matemática de matrices y Python suficientes para que no te intimiden. Sin desviarte durante cinco años.
Fase 1, un motor de autograd desde cero. Construye algo pequeño que haga retropropagación para que el entrenamiento deje de ser una caja negra.
Fase 2, un mini-GPT desde cero. Tokenizer, embeddings, atención, un bloque transformer, muestreo. Conéctalo todo manualmente una vez.
Fase 3, ajusta el modelo de verdad. Implementa LoRA y ajusta un modelo pequeño con datos reales que te importen.
Fase 4, hazlo eficiente y publícalo. Caché KV, FlashAttention, cuantización, un bucle de servicio sencillo. Ahora es usable.

Dos complementos gratuitos: un manual de entrenamiento de 214 páginas que recorre todo el proceso (preentrenamiento, entrenamiento intermedio, posentrenamiento, tokenización, datos, infraestructura y los problemas reales que pueden surgir), y un único proyecto de código abierto de ~8000 líneas (nanochat) que cubre el proceso de principio a fin: entrenar el tokenizador, preentrenar, entrenar con conversaciones, ajustar con supervisión, opcionalmente aprender por refuerzo y luego servirlo con una caché KV y conversar con él. Lee el manual y construye el proyecto.

16

Glosario en lenguaje sencillo

Cada término técnico explicado en una línea
Token
Un fragmento de texto, más o menos una palabra o parte de una. Los modelos leen y escriben en tokens, y pagas por token.
Inferencia
El modelo que realmente se ejecuta para convertir tu solicitud en una respuesta. El inference de "serving" significa hacerlo para muchas solicitudes a la vez.
Prefill y generación
Dos fases de una solicitud. Prefill es cuando el modelo lee tu prompt; decode es cuando escribe la respuesta palabra por palabra.
Ventana de contexto
Cuánto texto puede ver el modelo a la vez. Como un escritorio, deja de funcionar bien cuando le amontonas demasiadas cosas.
Caché KV
La memoria a corto plazo del modelo sobre la conversación actual. Crece con el contexto y consume rápidamente la memoria de la tarjeta gráfica.
Caché de prefijos
Reutilizar el trabajo ya realizado sobre texto que el modelo había visto antes, para que el contexto repetido sea casi gratis. Aquí es donde se esconde la mayor parte del costo en la nube.
Cuantización
Guardar los valores del modelo con menos precisión para reducir su tamaño, como guardar una foto en un JPEG más pequeño. Es un poco menos exacto, pero cabe.
GGUF, AWQ, FP8, NVFP4
Formatos de archivo para esos modelos reducidos. Solo necesitas uno para el que tu motor esté optimizado; no son intercambiables.
Mezcla de expertos (MoE)
Un modelo enorme que solo activa una parte pequeña y relevante de sí mismo para cada palabra, así que funciona rápido a pesar de su tamaño.
Parámetros activos frente a totales
El modelo es enorme en teoría (total), pero solo se activa una pequeña parte por palabra (activa). La parte activa es la que determina la velocidad y la memoria.
Decodificación especulativa
Adivina varias palabras de forma económica y luego compruébalas todas en una pasada. Si las adivinanzas son correctas, obtienes un gran aumento de velocidad gratis.
RAG
El enfoque anterior: buscar fragmentos relevantes y pegarlos en el prompt. Funciona bien con documentos, pero es torpe para bases de código completas.
RLM (modelo de lenguaje recursivo)
En vez de leerlo todo, el modelo escribe un pequeño programa para buscar lo que necesita y obtiene solo la respuesta. Así no se satura la ventana.
vLLM y llama.cpp
Los dos programas principales para ejecutar y servir un modelo. vLLM es potente para muchos usuarios; llama.cpp funciona en casi cualquier lugar.
Rendimiento y latencia
El rendimiento es la cantidad de palabras por segundo para todos. La latencia es cuánto tarda en aparecer la primera palabra. Optimizas para una cosa o la otra.
Interconexión
La conexión entre tarjetas gráficas (NVLink, PCIe, la red). Cuando es lenta, se convierte en el verdadero cuello de botella, no los chips.
Sandbox
Una sala sellada y desechable donde un agente puede actuar sin tocar tu equipo real. Un comando incorrecto se revierte en lugar de causar daños.
Local primero / híbrido
Ejecuta casi todo en tu propio hardware y envía a la nube solo el problema difícil ocasional. La mayor parte del ahorro, con una válvula de seguridad.
QAT (entrenamiento consciente de la cuantización)
Un modelo entrenado para reducirse, en vez de reducirlo después del entrenamiento. Conserva más calidad en tamaños pequeños, así que las versiones QAT (como las de Gemma) funcionan muy bien con poca memoria. Prefiere una versión QAT cuando encuentres una.
Arnés vs. modelo vs. servicio
Tres cosas distintas que la gente suele confundir. El harness es la aplicación que llama al modelo (Claude Code, Cowork). El servicio es el motor que lo ejecuta (vLLM, MLX). El modelo son solo los pesos. La mayoría de los problemas de «no funciona» en realidad están en el harness.
Evaluación
Un pequeño conjunto de tareas reales tuyas, con las respuestas que aceptarías, que usas para poner a prueba cada modelo y elegir al ganador. La única puntuación que refleja tu trabajo, a diferencia de una clasificación pública.
Descarga de trabajo (ejecutar un modelo más grande que tu VRAM)
Mantén la mayor parte del modelo en la RAM normal del sistema y solo la parte activa en la GPU. Esto permite que un equipo pequeño use modelos mucho más grandes. La desventaja: la RAM del sistema es más lenta y se convierte en el cuello de botella. Funciona especialmente bien con mezclas de expertos (descarga los expertos inactivos). Herramientas: descarga parcial de llama.cpp, KTransformers.
Malla privada (Tailscale)
Una red privada y cifrada entre todos tus dispositivos y tu teléfono, para que cualquiera de ellos pueda acceder desde cualquier lugar a un modelo que se ejecuta en tu equipo de casa, sin pasar por la internet pública. Convierte un montón de computadoras en una nube personal de IA que te pertenece.
Agentes ambientales
Agentes que siguen funcionando 24/7 porque en local no hay cargos por llamada ni límites de frecuencia: análisis de seguridad continuos, vigilancia de anomalías y búsqueda de oportunidades. Un caso de uso cuyo costo la nube no puede igualar.
17

Preguntas frecuentes

Lo que la gente realmente pregunta
¿Necesito una GPU cara?
No. Empieza con la computadora que ya tienes. Un modelo funciona en una laptop normal, solo que más lento. Compra hardware solo cuando lo que tienes ya no te alcance.
¿Un modelo local es tan bueno como ChatGPT o Claude?
Para la mayoría de las tareas cotidianas de programación y escritura, los buenos modelos abiertos son lo bastante capaces. Para los problemas más difíciles, las grandes nubes siguen liderando, por eso «principalmente local, con la nube para el problema difícil ocasional» es el punto ideal.
¿Es difícil de configurar?
El primer modelo funciona en pocos minutos con un programa gratuito. Las partes avanzadas (serving, escalado, sandboxing) son opcionales y las agregas solo cuando realmente las necesitas.
¿Es gratuito?
El software y los modelos son gratis. Pagas la electricidad y tu propio tiempo, además del hardware si escalas. No hay cobro por uso ni facturas sorpresa.
¿Es privado y seguro?
Sí, ese es precisamente el objetivo: nada sale de tu máquina. Si dejas que un agente ejecute comandos, ponlo primero en un entorno aislado, una sala sellada donde puedas deshacer cualquier error.
¿Mi configuración quedará obsoleta?
Los nombres de los modelos cambian constantemente, pero el método no. Cambiar por un modelo más nuevo suele requerir cambiar una sola línea, así que te mantienes al día sin reconstruir nada.
¿Cuándo debería ir más allá del notebook?
Cuando más de una persona o herramienta necesita el modelo, o te parece demasiado lento. Entonces agrega un equipo dedicado y, más adelante, un clúster. Crece paso a paso.
¿Y si todavía necesito un modelo de frontera de vez en cuando?
Guarda una clave en la nube como respaldo y envíale solo los problemas difíciles que surjan en raras ocasiones. Tienes costos locales y privacidad por defecto, con toda la potencia disponible cuando la necesitas.
Interactivo

Puedo hacerlo ¿ejecutar?

Elige tu hardware y un modelo. La calculadora indica si cabe en la memoria, cuál será la velocidad aproximada y cuánto espacio quedará. La capacidad determina qué cabe; el ancho de banda determina la velocidad.

Tu configuración

El modelo

Define los valores
0 GB
pesos del modelo
0 GB
caché KV en este contexto (estimación)
0 GB
memoria total necesaria
0
palabras estimadas por segundo
memoria utilizada0 / 64 GB

Estas son estimaciones deliberadamente simples para establecer expectativas, no un benchmark. Los pesos son exactos; la caché KV y la velocidad son aproximadas (las cifras reales dependen del modelo específico, el diseño de atención, la cuantización KV, la longitud del prompt y de si usas MLX, llama.cpp, vLLM o SGLang). La velocidad de decodificación supone que el límite es el ancho de banda de memoria, lo que ocurre en casi todos los usos locales de un solo flujo.

La construcción completa, en orden

El Paso a Paso

Cómo pasar realmente de una suscripción en la nube a una operación de IA soberana con hardware propio. Lee de principio a fin. Da más peso a los aprendizajes recientes, porque este campo se reinventa cada pocas semanas.

00

La reflexión: por qué empezar

Enfoque reciente, 2026

Antes de cualquier hardware, la decisión es económica y política. A lo largo de 2026, la situación se aclaró. La era barata de programar en la nube consistía en usar capital de riesgo para ganar cuota de mercado, y el reajuste de precios ya llegó: facturación basada en el uso, multiplicadores por modelo y límites semanales que te dejan «programar 30 minutos y luego esperar 4.5 horas». Un agente con consumo medido gastó aproximadamente $14 en menos de cinco minutos, lo que equivale a más de $130,000 al año. Dicho sin rodeos: tu plan de $19 se convirtió en un problema de $1,550; 40 veces más, no un 40 por ciento.

La segunda revelación es más discreta y más condenatoria. Los resultados de la nube no son estables. Un experimento controlado encontró que la calidad oscilaba en "una ola sinusoidal de genialidad y disparates" según la carga y la hora del día, algo consistente con cuantización silenciosa, GPU suspendidas y prompts de sistema sustituidos a escondidas. En local obtienes un modelo "determinísticamente tonto", pero nunca cambia por debajo de ti.

Luego llegaron los acontecimientos que convirtieron una preferencia en una tesis. Interrupciones de varias horas. Cambios en la retención de datos durante cinco años. Modelos de frontera completos suspendidos de la noche a la mañana por directivas de exportación. Cada uno dejó claro lo mismo. Si tu flujo de trabajo depende de la API de un proveedor, una decisión que no tomaste y contra la que no puedes reclamar puede dejarte en una situación crítica.

Una salvedad honesta que vale la pena repetir: esto no afirma que la IA local supere a Claude en inteligencia bruta. Se trata de resiliencia y privacidad. El objetivo final es un enfoque híbrido. Ejecuta casi todo localmente y envía afuera solo los problemas difíciles, poco frecuentes y que se puedan comprimir. Esta estrategia también es la única solución real para la IA en la sombra, porque para evitar que la gente pegue secretos en un chat hay que ofrecerle algo local más rápido y mejor.

01

Cómo elegir el hardware

Reciente: era GB10

No necesitas un centro de datos. La máquina más usada en 2026 es la NVIDIA GB10, un equipo Grace-Blackwell con 128GB de memoria unificada que cabe en un cajón de calcetines y consume entre 33 y 74 vatios, pero aun así ejecuta DeepSeek V4 con un millón de tokens de contexto. La lección que sigue demostrando es que la memoria unificada más una interconexión moderna supera a presumir de VRAM en bruto para el trabajo con agentes.

Si quieres rendimiento, en el otro extremo del conjunto de equipos está una HP Z8 Fury con cuatro tarjetas RTX A6000, alrededor de 192GB de VRAM. Algo fundamental: esas A6000 tienen cinco años. «No es el auto, es quien conduce». Una buena ingeniería en una Ampere antigua supera en rendimiento a las API SaaS, y vale la pena esforzarse de verdad por adaptar modelos nuevos a silicio antiguo que ya no tiene soporte, en vez de comprar la tarjeta más reciente.

La opción con mejor relación calidad-precio es AMD. El Ryzen AI MAX+ PRO 395 (Strix Halo) viene con 128GB de memoria unificada. Un truco reciente y muy práctico: está clasificado para 96GB de memoria GPU, pero un modo de BIOS «servidor de IA de borde» y ajustes de GTT y TTM en Linux permiten aprovechar los 128GB completos, suficientes para alojar Qwen3-Coder-30B en BF16 con un contexto de un millón de tokens y una huella de 115GB. Vigila las temperaturas: el chip es tan nuevo que el daemon térmico no reconoció su CPUID y provocó un apagado hasta que pases thermald --ignore-cpuid-check.

Dos ideas que conviene asimilar desde el principio. Primero, la red puede ser la capacidad de cálculo: una sola A6000 puede compartirse por la LAN con una laptop ligera mediante un túnel de CUDA sobre QUIC. Segundo, el umbral es increíblemente bajo. Un agente de programación funciona en una ThinkPad i5 de 2018 a tres tokens por segundo con batería. Puedes empezar con lo que tienes hoy en tu escritorio.

02

Primer encendido: un modelo, un comando

La ruta de entrada de 10 minutos

La forma más rápida de poner en marcha un modelo local es llama.cpp. Instálalo, descarga un GGUF (una buena primera opción es Qwen3-Coder-30B o GLM-4.7-Flash) y empieza llama-server. Ahora tienes un endpoint compatible con OpenAI en localhost.

El paso que hace que todo encaje es el plug-and-play. Casi todos los agentes de programación leen una variable de entorno de base URL, así que apuntas la herramienta en la nube a tu propio servidor y simplemente funciona.

exportar ANTHROPIC_BASE_URL=http://localhost:8080 # llama.cpp
# inicia Claude Code. Ahora se comunica con tu modelo, sin cuenta.

Cuando una herramienta solo habla un dialecto, le pones una capa de compatibilidad. Hay fake-ollama, un pequeño proxy de Rust que responde a la API de Ollama, para que VS Code Copilot, Cline y Roo crean que se comunican con Ollama, aunque el tráfico llega en realidad a tu motor real. Claude Code Router hace la misma traducción para conectar Claude Code con backends de estilo OpenAI. El patrón se generaliza: el agente es solo un cliente y tú controlas el servidor al que se conecta.

Las configuraciones serias evitan deliberadamente Ollama y prefieren llama.cpp y vLLM, porque lo importante es controlar el batching, el caching y la cuantización, no usar una interfaz amigable que los oculte.

03

Cómo elegir tus modelos en 2026

Reciente: la avalancha de pesos abiertos

El mayor cambio del año es que los pesos abiertos, en su mayoría de laboratorios chinos, alcanzaron la frontera. La idea central: terminó la era de los modelos de frontera exclusivos de la nube; ahora la frontera está en tu escritorio. Las familias que vale la pena ejecutar son Qwen (la estrella, de 0.6B a 480B, con Qwen3-Coder-Next como modelo de uso diario), GLM de Z.ai (la línea «Opus en casa», con GLM-4.7-Flash como opción rápida, buena y económica), DeepSeek (el especialista de backend, «el alma de un desarrollador sénior de una empresa Fortune 500»), Kimi K2 (nativo para enjambres, con un billón de parámetros), MiniMax M2 (el programador «Anthropic en una botella») y Gemma junto con Nemotron para modelos más pequeños y arquitecturas híbridas.

Las reglas de selección son coherentes y van a contracorriente. La eficiencia es la nueva escalabilidad; más grande no significa mejor. Un modelo denso de 27B o una mezcla de expertos con 3B activos en la frontera de Pareto supera a un gigante de un billón de parámetros para casi todo el trabajo, y las pruebas lo respaldan: se ha informado que enjambres de agentes de programación locales superan a modelos de vanguardia en algunas bases de código heredadas. Los benchmarks públicos rara vez predicen si algo se adapta a tus necesidades; la eficiencia de tokens, el costo y la facilidad de uso en tus propias tareas son mejores criterios de selección. Y elige el modelo según la tarea: DeepSeek para Java y C# empresariales, modelos pequeños para tareas de agentes repetitivas y específicas, no un modelo para todo.

El hilo conductor de la arquitectura es la dispersión. La mezcla de expertos, con una enorme cantidad total de parámetros pero pocos parámetros activos por token, es justamente lo que permite que el comportamiento de frontera quepa en la memoria de consumo. Al leer una especificación, el número importante es el de parámetros activos, no el total.

04

Uso avanzado de vLLM

Cuando un usuario se convierte en muchos

llama.cpp te permite empezar a ejecutar. vLLM te da velocidad y concurrencia. Es el motor de servicio para producción, que expone a la vez rutas compatibles con OpenAI, Anthropic y Ollama, con batching continuo, prefill por fragmentos y caché de prefijos. Para modelos nuevos, lo compilas desde el código fuente con una versión nightly de PyTorch para obtener compatibilidad desde el primer día; además, hay parches para ejecutar modelos de frontera en GPU antiguas no compatibles.

Lo más importante que revela vLLM es dónde está realmente el costo. Durante una sesión local de programación de seis horas, se midió una tasa de aciertos de la caché de prefijos del 96 por ciento: de 46 millones de tokens de prompt, solo alrededor de 1.3 millones requirieron cómputo real de prefill. Todo lo demás se sirvió desde la caché. La implicación es que el costo de la programación con agentes está dominado por la caché de prefijos (trabajo reutilizado sobre texto que el modelo ya vio), no por la generación, por eso los planes planos en la nube tienen límites de uso y por eso lo «ilimitado» es teatro de precios, no física.

Valores predeterminados prácticos que se repiten en configuraciones reales: activa el almacenamiento en caché de prefijos, establece un presupuesto generoso de tokens por lotes, ajusta max sequences a tu concurrencia y elige un backend de atención compatible con la cuantización de tu caché KV. Luego observa el endpoint de métricas: las cifras de tasa de aciertos y utilización de KV te indican si el cuello de botella está en la caché, la memoria o el cómputo mucho antes de que tengas que adivinar.

05

La técnica de la compresión

Reciente: la caché KV

Aquí es donde la ingeniería local se vuelve difícil y se consiguen la mayoría de las mejoras. Dos capas se comprimen: los pesos y la caché KV. Para los pesos, los formatos son GGUF, AWQ, FP8, NVFP4 y, en el extremo, BitNet ternario de 1.58 bits, que ahorra aproximadamente 10x de memoria y ofrece una precisión cercana a FP16 tras un calentamiento de destilación. APEX es una opción favorita reciente: precisión mixta que tiene en cuenta la mezcla de expertos en llama.cpp estándar; supera a Q8 e incluso a F16 en perplejidad con la mitad de tamaño, al asignar bits por experto y por capa.

Pero la obsesión reciente, y la palanca de mayor impacto, es la caché KV. La batalla es por el ancho de banda de memoria, no por los FLOPs. TurboQuant de Google, implementado dentro de la ruta Triton de vLLM, comprime la caché a dos y medio o tres y medio bits por token mediante el manejo de valores atípicos, una transformación de Hadamard, libros de códigos de agrupamiento y una proyección de signo de un bit. Eso permite que un equipo mantenga 4.7 millones de tokens de caché KV en la memoria de la GPU y alcance 3,426 tokens por segundo en esas A6000 antiguas.

vllm serve /models/target \
  --attention-backend TRITON_ATTN \
  --kv-cache-dtype turboquant35 --enable-turboquant

Para los modelos realmente grandes, enviar la caché comprimida al disco permite ejecutar un DeepSeek V4 de 284B con un contexto de un millón de tokens en una sola caja del tamaño de la palma de la mano. Adopta este modelo mental: los tokens de contexto ahora son recursos de cómputo y almacenamiento que administras, no un búfer gratuito que llenas.

06

El desafío del contexto

Reciente: la gran idea

Todo lo anterior es infraestructura. Esta es la habilidad que distingue un juguete de un sistema. La idea central, repetida durante todo el año y la más compartida: deja de saturar la ventana de contexto y dale al modelo un entorno. El rendimiento en tareas densas cae en picada después de unos dieciséis mil tokens, así que una ventana de un millón de tokens no es la respuesta: es la trampa.

El arma principal es el modelo de lenguaje recursivo (Recursive Language Model). Carga una base de código de 32 millones de tokens en una variable de REPL de Python. El modelo raíz nunca ve la avalancha. Escribe código para buscar con grep, extraer fragmentos y recorrer el repo, y genera subagentes que devuelven símbolos y variables resumidos, no muros de texto. El resultado es que no hay degradación del contexto y se pasa del 15 al 40 por ciento en tareas de largo horizonte. La idea: RAG preguntaba qué hay en el documento; RLM pregunta qué puedes hacer que haga el documento.

Importan dos complementos. MemAgent trata el contexto enorme como un problema de gestión de memoria, no de atención: el aprendizaje por refuerzo por fragmentos sobre una memoria de cantidad fija de tokens permite recuperar 3.5 millones de tokens con menos de cinco por ciento de pérdida y escala linealmente, incluso con un modelo base que tiene una ventana de 8K. Y el «momento JPEG»: representar texto como imágenes para un modelo de visión. DeepSeek-OCR decodifica con 97 por ciento de precisión y una compresión de diez veces, y Glyph convierte diez mil palabras en unos tres mil tokens visuales.

En particular, para las bases de código, el nuevo enfoque es que el código es un grafo, no un corpus de documentos. Una herramienta como dede expone un grafo real de dependencias como una skill para que el agente consulte el alcance del impacto («qué se rompe si cambio este endpoint») en lugar de dividir a ciegas cuarenta repos en fragmentos RAG. La navegación supera a la recuperación.

07

Conectar tus agentes de programación

La recompensa diaria

Con un endpoint local rápido y una ingeniería de contexto real, el flujo de trabajo diario es simple: toma el agente que ya te gusta y cambia su destino. Es normal ejecutar dieciséis sistemas de desarrollo con IA distintos en una estación de trabajo con una GPU. Claude Code headless sin cuenta es el entorno principal; opencode, cuando quieres más concurrencia (32 en paralelo frente a los tres de Claude Code en la misma GPU), además de Droid, Kimi-CLI, Cursor, Cline, Kilo, Roo y Mistral Vibe, todos apuntando a localhost.

Aquí vale la pena comparar el costo en tokens. El servidor MCP de GitHub cuesta aproximadamente 54,000 tokens solo para cargar su especificación, antes de cualquier llamada. La ayuda equivalente de CLI ocupa 562 tokens y ya forma parte de los datos de entrenamiento del modelo. Las skills cuestan entre 30 y 50 tokens hasta que las activas. Para los agentes, las herramientas de línea de comandos y las skills que se revelan progresivamente suelen ser más económicas, rápidas y fáciles de depurar que los servidores MCP.

Otro tema reciente es "todo en todas partes": cuando el endpoint es tuyo, el cliente es portátil. Cualquier dispositivo que pueda abrir una conexión puede convertirse en cliente, incluso laptops completamente desconectadas. La idea es que ser dueño del servidor libera la interfaz.

08

Adoptando múltiples agentes

Reciente: supervisar, no programar

Pasar de un agente a un enjambre cambia tu trabajo: de escribir código a coordinar procesos. Con diez mil agentes y una proporción de IA a humanos de 35 a 1, la lección recurrente es que, más allá de cierto punto, ya no hay ninguna interfaz humana: el backlog se convierte en la interfaz.

El patrón es iniciar, ejecutar, informar y terminar. Los enjambres autoorquestados que deciden cuándo terminar reducen una revisión profunda de una base de código de tres horas y media y diecinueve millones de tokens a unos diez minutos, con resultados idénticos en un noventa por ciento. Para el aislamiento, el paso es pasar de los worktrees de git a AgentFS, donde todo el entorno de ejecución del agente —archivos, estado y llamadas a herramientas— vive en un solo archivo SQLite. Eso significa cp agent.db snapshot.db es viajar en el tiempo y puedes ejecutar consultas SQL sobre lo que realmente hicieron tus agentes.

En la cima está el ciclo de orquestación, y el enfoque reciente en producción es deliberadamente sencillo y prioriza el funcionamiento sin conexión: agentes sin interfaz gráfica controlados por temporizadores de systemd y bloqueos de archivos, con una cola descentralizada de incidencias (Radicle) que actúa como máquina de estados. Un ticket marcado como aprobado y en cola se bloquea, se trabaja, se modifica y se marca como terminado; al final, una persona integra los cambios. La cola es el HUD, la coordinación es el cuello de botella; la generación, no.

09

Protección del sistema

Reciente: el modelo escribe, el arnés restringe

Un agente que puede escribir en el disco es, dicho sin rodeos, un desarrollador júnior con claves de API y ambición. La división del trabajo es estricta: el modelo probabilístico solo sugiere; el código determinista decide y hace cumplir las reglas. En cuanto tu agente puede actuar, lo ejecutas en un entorno aislado y le pones controles.

Para el aislamiento, recurre a Hyperlight, una micro-VM de Rust que crea aislamiento de hardware en aproximadamente un milisegundo, con llamadas al invitado en microsegundos y restauración de instantáneas, de modo que un comando destructivo alucinado se revierte en microsegundos. Firecracker con AgentFS es la opción más pesada, con verificación formal. Para instalaciones y acciones de shell, Aegis es una barrera de confianza cero donde cada plan de ejecución se firma con Ed25519 y se registra en un libro mayor encadenado por hashes y a prueba de manipulaciones, y la IA es arquitectónicamente incapaz de escalar privilegios: nunca obtiene acceso root, nunca genera el vector de argumentos y se aplica mediante una API de procesos sin shell. Por defecto, sudo, curl-pipe-bash y las instalaciones de paquetes no planificadas están prohibidos.

La conversación reciente sobre la cadena de suministro, reforzada tras un incidente real de envenenamiento, extiende estas medidas a las dependencias: fija cada artefacto con un hash, desactiva los scripts del ciclo de vida de los paquetes, genera una lista de materiales de software, firma las imágenes y aplica controles con escáneres. Una prueba práctica: si tu stack puede resistir una dependencia comprometida pip install. Algunas configuraciones van más allá y descentralizan el propio plano de control, con herramientas como Radicle e IPFS en una malla privada.

10

Aumentando la velocidad

Reciente: HBM, no FLOPs

Cuando funciona y es seguro, lo ajustas. El hallazgo recurrente es que la velocidad de servicio local depende del ancho de banda de memoria y del enrutamiento de expertos, no de la potencia de cálculo bruta. Para obtener 370 tokens por segundo de cuatro A6000, fija el hilo del router a un nodo NUMA (el banco de memoria físicamente más cercano a ese procesador), reorganiza la caché KV para que los expertos activos queden en los bancos de memoria más rápidos, fija la profundidad de cola alrededor de 64 para ocultar la latencia y reduce el escalado rope por cliente (las matemáticas que permiten que un modelo procese textos más largos). Nada de eso es «comprar una GPU más grande».

En cuanto a algoritmos, añade decodificación especulativa (adivinar varias palabras a bajo costo y luego verificarlas todas en un solo paso): DFlash redacta un bloque entero con un solo paso de difusión para lograr una aceleración de aproximadamente seis veces, y DDTree verifica un árbol de borradores con atención de árbol sin perder información. Un truco reciente de cincuenta líneas que vale la pena conocer es DeepConf: poda las secuencias de razonamiento según la confianza del propio modelo en los tokens y detiene antes las cadenas débiles. Alcanza una precisión casi perfecta en AIME con hasta un 85 por ciento menos de tokens y sin entrenamiento.

Las cifras resultantes son la prueba de toda la disciplina: 3,426 tokens por segundo con un contexto de un millón de tokens en tarjetas antiguas; 620 tokens por segundo con seis mil sesiones concurrentes en un solo equipo; un modelo DeepSeek de un millón de tokens a 80 a 91 tokens por segundo en una máquina del tamaño de la palma de la mano; y un modelo de 2.3B que funciona en una pestaña del navegador a 80 tokens por segundo, completamente sin conexión.

11

Enseñarle a mejorar por sí mismo

Reciente: entrenar en el mismo escritorio

La última capa es que puedes entrenar y mejorar modelos en el mismo hardware desde el que los sirves, y los métodos recientes lo hacen barato. La autodestilación destaca: un modelo ajustado con sus propias respuestas no verificadas, sin aprendizaje por refuerzo, verificador ni modelo docente, hizo que un modelo de 30B pasara del 42 al 55 por ciento de tasa de aprobación en un benchmark de programación; una ganancia relativa del treinta por ciento por casi nada.

Para prompts y skills, usa DSPy con GEPA, un optimizador genético de Pareto que converge en unas cincuenta iteraciones frente a miles de pruebas de fuerza bruta y recopila automáticamente tus sesiones de alto éxito como señal de entrenamiento. La sorpresa recurrente de las investigaciones recientes es que los modelos recursivos diminutos tienen un rendimiento extraordinario: una red recursiva de siete millones de parámetros supera a modelos miles de veces más grandes en razonamiento abstracto, y la autoagregación recursiva mejora en treinta puntos un modelo 4B en matemáticas difíciles, sin verificador.

Incluso puedes entrenar desde cero en tu escritorio (nanochat en cuatro A6000) y ejecutar ciclos de refuerzo donde un modelo escribe Rust y el compilador es la función de recompensa, alcanzando una tasa de compilación del 72 por ciento dentro de un entorno aislado sin privilegios de root. La idea no es que debas preentrenar en casa un modelo de frontera. Es que ahora el posentrenamiento, la destilación y la combinación de modelos están bajo tu control, lo que completa el ciclo de soberanía.

12

Escalar más allá de una máquina

Hiperescala en casa

Cuando una sola máquina realmente se convierte en el cuello de botella, recurres a Kubernetes y AIBrix, el plano de control preferido, que agrega escalado automático consciente de LLM basado en la utilización de la caché, enrutamiento distribuido de la caché KV y gestión de adaptadores de alta densidad sobre vLLM. Un clúster doméstico de proveedores mixtos ejecuta nodos NVIDIA y AMD uno al lado del otro, programados en conjunto.

Para un equipo pequeño hay una receta completa de alta disponibilidad: dos nodos con MicroK8s, etcd replicado, una IP virtual flotante administrada por Pacemaker, almacenamiento en espejo y deploys canary, con conmutación por error en menos de un minuto y un modelo de programación que sirve alrededor de noventa tokens por segundo. Y la capa de gobernanza se trata como código: la definición de terminado se convierte en puertas de compilación, donde un umbral de cobertura bloquea los merges y un agente de seguridad rechaza las pull requests vulnerables. La recomendación recurrente: trata el enjambre como una organización de ingeniería con políticas, determinismo y auditoría, no como un asistente.

13

Hacia dónde va todo esto

Reciente: la frontera de la frontera

Las ideas más recientes apuntan más allá de la capa de aplicaciones. La provocación es concebir la IA como infraestructura del sistema operativo en vez de como una app: una pequeña red neuronal que se ejecuta en el espacio del kernel, intercepta eventos mediante eBPF y responde en menos de cien microsegundos; solo recurre a un modelo de CPU y luego a un clúster de GPU cuando hace falta, de modo que la mayor parte del trabajo nunca sale del ring cero y las llamadas a GPU se reducen en tres cuartas partes.

Alrededor de eso están los otros temas que vale la pena explorar: la red como cómputo, con inferencia canalizada entre equipos y mallas de modelos descentralizadas entre pares; agentes que se mejoran a sí mismos, donde la mejora recursiva es «un archivo YAML» y las tareas cron se adentran en el espacio latente; y un impulso constante por descentralizar el código, los pesos y el cómputo para que ninguna plataforma sea un cuello de botella.

Las prácticas recurrentes en todo esto: ejecuta los pesos localmente, invierte en el sistema que rodea al modelo, comprime de forma agresiva, dale al modelo un entorno en vez de una ventana de contexto cada vez mayor, aísla cualquier cosa que pueda actuar y diseña de modo que los servicios en la nube sigan siendo opcionales.

La capa de software que transforma el hardware en inferencia

Los Motores

Una guía de campo de 2026 sobre motores de inferencia de LLM. La regla por encima de todas las demás: no eliges primero el motor; eliges una estrategia de hardware, una forma de carga de trabajo y un modelo de servicio. El motor viene después.

La sección tres de la Guía nombró los motores principales: vLLM, llama.cpp y SGLang. Esta es la capa de decisión que está debajo: todos los principales motores de inferencia en 2026, el hardware y las cargas de trabajo para las que sirve cada uno, y cómo elegir sin adivinar.

00

El principio central

En lenguaje sencillo

El modelo es lo que sabe cosas. El motor es todo lo que lo hace utilizable: organiza las solicitudes, administra la memoria y devuelve las palabras. La idea de esta pestaña es que elijas el motor al final, después de conocer tu hardware y cómo lo vas a usar.

Un motor de inferencia no es el modelo. Es el controlador del tráfico, el administrador de memoria, el despachador del kernel, el planificador, el encargado de la caché, el planificador del paralelismo, la interfaz de API y, a veces, el marco de despliegue. El mejor motor se adapta a tu jerarquía de memoria, interconexión, formato de cuantización, objetivos de latencia y rendimiento, arquitectura del modelo y madurez operativa. Elige la estrategia y el motor se hará evidente.

La carga de trabajo tiene dos fases, y esa división explica casi todo. Prefill lee el prompt y crea la caché inicial; requiere mucho cómputo. Decodificación genera un token a la vez, leyendo repetidamente los pesos y la caché; está limitado por el ancho de banda de memoria. La velocidad de decodificación depende más del ancho de banda de memoria que del rendimiento máximo de cómputo.

  • Prompt breve, respuesta larga: la decodificación es lo que más pesa, así que el ancho de banda de memoria y el procesamiento por lotes son importantes.
  • Prompt largo, respuesta corta: predomina el prefill, por lo que importan los kernels de atención y el prefill por fragmentos.
  • Muchos usuarios: la calidad del planificador importa, así que también importan el batching continuo, la paginación de la caché y la equidad.
  • Contexto largo: la caché KV es el factor dominante, así que importan la atención paginada, la cuantización KV y la descarga.
  • MoE: el enrutamiento de expertos es lo que más pesa, así que el paralelismo entre expertos y la interconexión son importantes.
  • Multinodo: el interconector es el factor dominante, por lo que importan NVLink, RDMA, el paralelismo de canalización y la desagregación.
01

La guía de decisión de una página

Empieza aquí
Tu situaciónUsaFamilia
Laptop, edge o hardware poco comúnllama.cppportátil
Flujos centrados en MacMLX / MLX-LMApple
Inferencia local en una sola RTXExLlamaV2CUDA doméstico
De 2 a 4 o más GPUs NVIDIA/CUDAExLlamaV3CUDA doméstico
Inferencia general en producciónvLLMproducción
Contexto largo / MoE / enrutamientoSGLangproducción
Máximo rendimiento en NVIDIATensorRT-LLMproducción
Orquestación de clústerNVIDIA Dynamoorquestación

Todo lo que sigue explica por qué. En resumen: el motor depende de tu hardware, tu tráfico y tu tolerancia a la complejidad operativa.

02

Lo que realmente hace un motor

Como mínimo, un motor carga los pesos, tokeniza la entrada, ejecuta el paso hacia adelante, muestrea tokens, mantiene la caché KV y transmite los resultados. Los motores avanzados añaden procesamiento por lotes, planificación, almacenamiento en caché de prefijos, cuantización, ejecución paralela, servicio de API, métricas y ejecución distribuida. El tema recurrente en todos los avances es el mismo: el rendimiento de inferencia depende del movimiento de memoria y la planificación.

Las técnicas emblemáticas atacan todas ese tema. PagedAttention abordó la fragmentación de la caché KV al dividirla en bloques, lo que aumentó la utilización y permitió lotes más grandes. FlashAttention usó mosaicos conscientes de la E/S para reducir el tráfico hacia la memoria de alto ancho de banda. Decodificación especulativa genera tokens preliminares baratos y los verifica en paralelo. Nada de esto acelera el cálculo de la GPU. Mueve menos datos de memoria y los programa mejor.

03

Los verdaderos cuellos de botella

819 GB/s
Ancho de banda de la memoria unificada del Apple M3 Ultra. Te permite cargar modelos que no cabrían en la VRAM de un equipo de consumo.
3.35 TB/s
Ancho de banda de memoria de NVIDIA H100 SXM. Los atiende más rápido una vez que el modelo cabe. Que quepa no significa que sea rápido.
  • Ancho de banda de memoria, no solo capacidad de VRAM. La VRAM determina qué cabe. El ancho de banda determina la velocidad de decodificación. Capacidad no es lo mismo que ancho de banda.
  • Crecimiento de la caché KV. Crece con el tamaño del lote y la longitud del contexto, así que las cargas de trabajo con contextos largos se quedan sin memoria incluso cuando los pesos caben. PagedAttention es la solución.
  • Interconexión. Cuando un modelo cruza los límites entre GPU, pagas un costo de comunicación: el paralelismo de tensores necesita all-reduce frecuente; el paralelismo de expertos necesita all-to-all. Sin NVLink, el paralelismo de pipeline puede superar al paralelismo de tensores.
  • Calidad del planificador. Admitir batching no es lo mismo que contar con un scheduler listo para producción que decida qué solicitudes agrupar, cómo comparten el acelerador prefill y decode, y cómo evitar que algunas solicitudes queden sin atención.
  • Sobrecarga del entorno de ejecución. CUDA graphs, fusión de kernels, muestreo, tokenizer, HTTP, cambio de LoRA y decodificación estructurada. A escala, esas molestas sobrecargas del dos por ciento se acumulan y exigen atención.
04

Las cuatro familias

portátil Entornos de ejecución locales

llama.cpp, MLC LLM, ONNX Runtime GenAI, OpenVINO. Les importa una sola cosa: que funcione aquí, en el hardware que tengas.

Apple Memoria unificada

MLX y MLX-LM. Diseñados para aprovechar la gran memoria compartida de Apple y su pila, primero en Mac.

CUDA doméstico Motores de cuantización

ExLlamaV2 y ExLlamaV3. Haz que un equipo con 3090 / 4090 / 5090 rinda al máximo con pesos de pocos bits.

producción Motores de servicio

vLLM, SGLang, TensorRT-LLM, TGI, LMDeploy. Usuarios concurrentes, caché KV, batching, paralelismo, observabilidad, costo por token.

Por encima de todo esto está un capa de orquestación como NVIDIA Dynamo, que coordina flotas, prefill y decode desagregados, enrutamiento y escalado automático entre varios motores.

05

Motor por motor

portátil

llama.cpp

El rey de la portabilidad. Apple Silicon mediante Metal, x86 mediante AVX y AMX, además de RISC-V, CUDA, AMD HIP, Vulkan, SYCL y offload híbrido de CPU y GPU. Su servidor HTTP es mucho más que un juguete: rutas compatibles con OpenAI y Anthropic, reranking, batching continuo, multimodalidad, restricciones de JSON Schema, llamadas a funciones y decodificación especulativa.

VeredictoÚsalo cuando importen más la portabilidad, el funcionamiento sin conexión, GGUF o la descarga híbrida que el servicio a escala de flota. No lo uses para producción con varias GPU o varios nodos; su backend RPC está documentado como frágil e inseguro.
Apple

MLX / MLX-LM

El framework de arreglos de Apple y su paquete para LLM. El dato clave es la memoria unificada: la CPU y la GPU comparten un mismo conjunto, así que la pregunta pasa de «¿cabe en la VRAM?» a «¿cabe en la memoria y esta puede alimentar a la GPU lo bastante rápido?». Los modelos cuantizados grandes caben donde una tarjeta de 24GB no podría. También es más lento que HBM.

VeredictoÚsalo para trabajar con ML y LLM, sobre todo en Mac. Para ofrecer servicio público con alta concurrencia, empieza con una pila de servicio real; el propio servidor de MLX-LM advierte que no es para producción.
CUDA doméstico

ExLlamaV2

El motor CUDA local para entusiastas. Atención paginada, batching dinámico, caché de prompts, deduplicación de la caché KV, streaming y decodificación especulativa. La palabra que debes recordar es local: hace que los modelos cuantizados EXL2 sean rápidos en tarjetas de consumo.

VeredictoLa opción ideal para un equipo con una sola 3090 / 4090 / 5090 que ejecuta un asistente de programación o chat local.
CUDA doméstico

ExLlamaV3

Extiende la filosofía a multi-GPU y MoE local. Añade el formato EXL3 basado en QTIP, paralelismo flexible de tensores y expertos para hardware de consumo, un servidor compatible con OpenAI mediante TabbyAPI y soporte multimodal.

VeredictoLa frontera para 2 a 4+ GPU NVIDIA de consumo o MoE local. Espera más asperezas a cambio de mayor capacidad; algunos modelos no admiten su paralelismo.
producción

vLLM

El servidor de producción de código abierto predeterminado y el primer motor que la mayoría de los equipos debería evaluar. PagedAttention, batching continuo, prefill por bloques, caché de prefijos, amplia cuantización (FP8, MXFP4, NVFP4, INT8/4, GPTQ, AWQ, GGUF), decodificación especulativa y prefill/decode desagregados. Paralelismo de tensores, pipeline, datos, expertos y contexto; API de OpenAI y Anthropic, multi-LoRA, en NVIDIA, AMD y más.

VeredictoSi alguien dice «necesitamos servir modelos abiertos en producción», este es el punto de partida predeterminado. No elimina la necesidad de pensar en sistemas: aún debes ajustar el procesamiento por lotes, la disposición del paralelismo y el enrutamiento.
producción

SGLang

el primo de vLLM con mentalidad de sistemas, para cuando la carga de trabajo es complicada: salidas estructuradas, contexto largo, MoE y enrutamiento. Usa caché de prefijos con RadixAttention y ofrece como diferencial la desagregación entre prefill y decode: separa el prefill, que exige mucho cómputo, del decode, que exige mucha memoria, en instancias especializadas para que los prefills largos no disparen la latencia del decode.

VeredictoPara los equipos cuyo cuello de botella ya no es «¿podemos ejecutarlo?», sino «¿podemos ejecutarlo con tráfico hostil sin disparar la latencia, la memoria y el costo?»
producción

TensorRT-LLM

La pila de máximo rendimiento de NVIDIA. Crea motores TensorRT optimizados con kernels personalizados de atención, GEMM y MoE, separación de prefill y decode, paralelismo amplio de expertos y decodificación especulativa. B200 carga FP4 con kernels optimizados; H100 y posteriores ejecutan FP8, que puede duplicar el rendimiento y reducir a la mitad la memoria frente a 16-bit.

VeredictoSi estás comprometido con NVIDIA y te importa el máximo rendimiento, debe formar parte de la comparación. Cambias portabilidad por rendimiento: resulta complicado con AMD, Apple o modelos experimentales que cambian rápidamente.
orquestación

NVIDIA Dynamo

Una capa de orquestación distribuida sobre motores como vLLM, SGLang y TensorRT-LLM. Desagregación, enrutamiento inteligente que tiene en cuenta KV, caché KV multinivel y escalado automático.

VeredictoRecurre a él cuando servir con un solo motor ya no sea suficiente y estés coordinando una flota.

El resto del campo. TGI es el servidor de producción de Hugging Face; es una buena opción cuando importan la integración con HF y la simplicidad. MLC LLM es un motor universal centrado en la compilación para distribuir en navegadores, móviles y aplicaciones nativas. ONNX Runtime GenAI impulsa Foundry Local y Windows ML en CPU, CUDA, DirectML, WebGPU y más; es la mejor opción para implementar aplicaciones. OpenVINO GenAI es la opción de Intel para Xeon, Arc y NPU. LMDeploy es un kit de herramientas CUDA con TurboMind, una alternativa a vLLM y SGLang.

Una exclusión tajante. No uses Ollama para nada serio. Es agradable, pero para trabajar de verdad recurre a llama.cpp (control y portabilidad) o a una pila de servicio adecuada (concurrencia, seguridad, observabilidad). Las capas de conveniencia ocultan justo los controles de batching, caché y cuantización que necesitas.
06

Recetas de estrategia de hardware

HardwareReceta
Servidor solo con CPUPrimero, llama.cpp. OpenVINO para Intel Xeon. ONNX Runtime GenAI para aplicaciones o despliegues de ONNX.
MacBook / Mac StudioMLX / MLX-LM para trabajar de forma nativa en Mac. llama.cpp para portabilidad con GGUF.
Una sola RTX 3090 / 4090 / 5090ExLlamaV2 para EXL2. llama.cpp para GGUF. vLLM si atiendes a varios usuarios.
Doble o cuádruple RTX de consumoExLlamaV3 para cuantización multi-GPU o MoE. vLLM si importa el comportamiento de serving. SGLang para enrutamiento / contexto largo.
nodo 8x H100 / H200Empieza con vLLM o SGLang. Evalúa TensorRT-LLM si solo usarás NVIDIA y el rendimiento lo justifica. Usa Dynamo con varios nodos.
clase B200 / GB200 / GB300Compara el rendimiento de TensorRT-LLM, SGLang y vLLM. Añade Dynamo para el enrutamiento de la flota y el escalado automático.
AMD MI300 / MI325 / MI355vLLM o SGLang en ROCm. No des por sentado que los benchmarks de NVIDIA se trasladan sin cambios.
Intel Xeon / Core Ultra / ArcOpenVINO GenAI u OpenVINO Model Server. ONNX Runtime GenAI para integrar en aplicaciones.
Navegador, móvil, nativo de la appMLC LLM / WebLLM o ONNX Runtime GenAI.
07

Evaluación del rendimiento: qué medir

Mal benchmark: "Obtuve 180 tokens por segundo." Eso casi no dice nada sin conocer el modelo, los pesos, la forma de la carga de trabajo y la concurrencia detrás de esa cifra.

Modelo

Modelo exacto, arquitectura, cantidad de parámetros, parámetros activos de MoE.

Pesos

Dtype, formato de cuantización, tamaño de grupo, calibración.

Motor

Versión, commit, backend, flags.

Hardware

SKU de GPU, capacidad y ancho de banda de la memoria, interconexión, CPU, RAM.

Carga de trabajo

Distribuciones de longitud de entrada y salida, concurrencia, streaming, prefijos compartidos y salida estructurada.

Métricas

TTFT, TPOT, latencia de extremo a extremo, p50/p95/p99, tokens y solicitudes por segundo, tasa de aciertos de KV-cache, rendimiento de prefill frente a decode, costo por millón de tokens.

  • Nunca compares motores usando solo los tokens por segundo de un único usuario.
  • Prueba la distribución real de tus prompts y respuestas, con una concurrencia realista.
  • Separa prefill de decode. Mide p95 y p99, no solo los promedios.
  • Mide el margen de memoria disponible con la longitud de contexto objetivo, y la reutilización de la caché si tienes prefijos repetidos.
  • Compara por separado el rendimiento de la salida estructurada, LoRA y multi-LoRA; las gramáticas y los adaptadores añaden sobrecarga.
  • Vuelve a probar después de cada actualización de controlador, CUDA, ROCm, modelo o motor.
08

Errores comunes

  • Elegir basándose únicamente en la capacidad de VRAM. La VRAM determina qué cabe; el ancho de banda y el planificador determinan la velocidad. Una máquina grande con memoria unificada puede alojar modelos enormes, pero una H100 decodifica más rápido cuando el modelo cabe en ella.
  • Paralelismo de tensores con una interconexión lenta. Sin NVLink ni NVSwitch, prueba el paralelismo de canalización.
  • Ignorar la caché KV. Con contextos largos y alta concurrencia, se convierte en el factor limitante. La atención paginada, el almacenamiento en caché de prefijos, la cuantización de KV y la desagregación son imprescindibles a escala.
  • Tratar los motores locales como servidores de producción. La producción implica seguridad, observabilidad, control de contrapresión, enrutamiento, escalado automático y comportamiento conforme al SLA. Los servidores llama.cpp y MLX-LM son capaces y prácticos, pero este último advierte que no es para producción.
  • Suponiendo que los formatos de cuantización sean portables. GGUF, EXL2, EXL3, AWQ, GPTQ, FP8, FP4, MLX y ONNX no son intercambiables. El formato adecuado es aquel para el que tu motor tiene kernels optimizados.
  • Ignorar la arquitectura del modelo. Las variantes densas, MoE, con atención híbrida, multimodales y de contexto largo exigen distintas partes de un motor. Una amplia compatibilidad no significa que todas las optimizaciones funcionen igual de bien.
  • Confiar en gráficos de benchmark sin considerar la forma de la carga de trabajo. Un gráfico para un modelo 8B con 1K de entrada y 128 de salida dice poco sobre un agente de programación con contexto de 80K o un servicio RAG con 500 usuarios concurrentes.
09

El mapa final con criterio

Usuario de IA local

llama.cpp para control. MLX en Mac. ExLlamaV2 o V3 para rendimiento local en CUDA.

Crear un agente local

llama.cpp para portabilidad. MLX en Apple Silicon. vLLM para simular la producción localmente.

Ofrecer servicio a un equipo interno

Empieza con vLLM. Pásate a SGLang para salidas estructuradas, contexto largo, varios LoRA, MoE o enrutamiento.

Ofrecer servicio a clientes a gran escala

Compara el rendimiento de vLLM, SGLang y TensorRT-LLM. Si el enrutamiento y la desagregación son importantes, vale la pena prestar atención a SGLang y Dynamo.

NVIDIA para centros de datos

TensorRT-LLM para máximo rendimiento, vLLM para flexibilidad, SGLang para servicio complejo, Dynamo para la orquestación de flotas.

Edge, app, navegador, Windows

llama.cpp, MLC LLM, ONNX Runtime GenAI u OpenVINO, según la pila.

El principio final. Los motores de inferencia tienen consecuencias. Elige el motor solo después de poder responder lo siguiente:

  • ¿Qué hardware tengo realmente y el modelo cabe en la memoria rápida o solo en la memoria del sistema/unificada?
  • ¿Mi cuello de botella es la decodificación o el prellenado? ¿Qué longitudes de contexto y niveles de concurrencia importan?
  • ¿Se comparten los prompts lo suficiente como para usar el almacenamiento en caché de prefijos? ¿El modelo es denso, MoE, multimodal o híbrido?
  • ¿Necesito comodidad local, servicio en producción u orquestación de flotas?
  • ¿Qué formato de cuantización tiene kernels optimizados en el motor de destino?
  • ¿Mi interconexión es PCIe, NVLink, NVSwitch, Ethernet, RDMA o Thunderbolt?
  • ¿Estoy optimizando la latencia, el rendimiento, el costo, la privacidad, la portabilidad o la velocidad de desarrollo?
10

Notas de campo: kernels y ancho de banda

Novedades desde el campo, 2026
En lenguaje sencillo

Dos ideas que explican por qué el mismo modelo puede sentirse rápido con una configuración y lento con otra. Primero, el modelo es solo un plano; el trabajo real ocurre en pequeños programas llamados kernels, y los buenos son mucho más rápidos. Segundo, el límite de tu máquina es el producto de tres factores, no un solo número grande.

Un kernel es una rutina pequeña y específica para el hardware que realiza una tarea: una multiplicación de matrices, un paso de atención, una normalización, un paso de muestreo. Un buen motor fusiona estas rutinas para que la GPU no escriba resultados parciales en la memoria una y otra vez. Los kernels malos hacen que la gente diga "este modelo es lento". Los buenos hacen que el mismo modelo vuele. Por eso importa tanto elegir el motor de la guía de decisión.

La fórmula de hardware: lo que tu equipo puede hacer equivale a capacidad × ancho de banda × pila de software. La capacidad (memoria) te dice qué cabe. El ancho de banda te dice cuánto puede respirar el equipo. La pila de software (motor más kernels) determina cuánto aprovechas realmente de esas especificaciones. La mayoría compra capacidad, se olvida del ancho de banda e ignora la pila, y luego culpa al modelo.

14.5 → 64
tok/s en 2x RTX 3090 solo con pasar a vLLM y usar paralelismo tensorial entre ambas tarjetas. El mismo hardware, ~4x más rápido.
32 → 110
tok/s en una RTX PRO 6000 al pasar a SGLang. La misma tarjeta, ~3x más rápido; todo gracias a la pila de software.

Hardware según el ancho de banda de memoria (el número que determina la velocidad de decodificación), referencia más reciente:

HardwareMemoriaAncho de banda
RTX PRO 6000 Blackwell96 GB1792 GB/s
RTX 509032 GB1792 GB/s
RTX 409024 GB1008 GB/s
Radeon PRO W790048 GB864 GB/s
Mac Studio M3 Ultrahasta 512 GB819 GB/s
MacBook Pro M5 Max128 GB460 a 614 GB/s
MacBook Pro M5 Pro64 GB307 GB/s

Fíjate en el patrón: una GPU de escritorio pequeña puede tener mucho más ancho de banda que una laptop grande, por eso una RTX 4090 de 24 GB decodifica más rápido que una Mac de 64 GB cuando el modelo cabe en ambas. La capacidad te permite cargarlo; el ancho de banda te permite ejecutarlo. El equipo inicial al que llegan muchas personas: dos RTX 3090 usadas, un modelo abierto de 27B a 31B, tu agente favorito y una herramienta de búsqueda autoalojada; así puedes programar en casa con calidad de frontera por unos cientos de dólares.

El punto ideal de 24 GB

Una regla muy repetida en el sector: no existe un gran modelo que necesite más de 24 GB y menos de ~256 GB. Así que una sola tarjeta de 24 GB (una RTX 3090 usada, por unos $700) ejecuta el mejor modelo que cualquiera puede ejecutar, a menos que tenga diez veces más memoria que tú. Por eso, el equipo económico rinde muy por encima de lo que cuesta.

IA local con presupuesto limitado: qué comprar y ejecutar:

PresupuestoHardwareLo que ejecutas
$0una laptop o cualquier GPU de 8 GB que tengasun modelo QAT pequeño (de la clase Gemma) para chat y subagentes; con cuantización dinámica y descarga a memoria, incluso una mezcla de expertos de 26B con contexto largo
~$700una RTX 3090 usada, 24 GB (el punto ideal)un modelo de programación de 27B a 32B (de la clase Qwen3, GLM-4.7-Flash) con calidad de nivel de frontera, la mejor relación calidad-precio en IA local
~$2,000dos 3090 usadas (48 GB) o un AMD Strix Halo (128 GB unificada)una mezcla de expertos más grande y un contexto mucho más largo, servidos con vLLM o SGLang
~$5,000+MacBook Pro M5 Max (128 GB) o un NVIDIA DGX Sparklos grandes modelos MoE (de la categoría de MiniMax y DeepSeek V4 Flash)

El stack de software sigue determinando cuánto rendimiento obtienes: dos 3090 usadas con vLLM y paralelismo de tensores superan varias veces a las mismas tarjetas con un runner básico. Compra memoria y luego consigue velocidad con el motor adecuado.

Ejecuta modelos más grandes que tu VRAM

Si un modelo no cabe, no siempre necesitas una GPU más grande. Con la descarga, la mayor parte del modelo reside en la RAM normal del sistema y solo la parte activa se ejecuta en la GPU. Así, hay quienes ejecutan una mezcla de expertos de 753B en una sola computadora de escritorio (a 4 bits, con una decodificación de alrededor de 13 a 15 palabras/s) y un MoE de 26B en una iGPU de 8 GB a ~20 palabras/s, leyendo directamente el conjunto compartido de RAM. El costo es la velocidad: la RAM del sistema es más lenta y se convierte en el cuello de botella. Funciona muy bien con MoE, porque puedes descargar los expertos inactivos y mantener la parte activa en la GPU. Herramientas: descarga parcial de llama.cpp o KTransformers para MoE grandes.

O reúne varias máquinas económicas

La otra forma de superar el límite de un solo equipo es combinar máquinas. Herramientas como exo (de código abierto y gratuita) conectan varias computadoras comunes en un único conjunto de memoria, así que cuatro Mac minis pueden ejecutar un modelo de 235B que ninguna podría cargar por sí sola. Es la opción económica para usar un modelo grande: apila equipos baratos en vez de comprar uno caro. El inconveniente es el mismo que con el offload: el enlace entre máquinas es más lento que la memoria dentro de una sola, por lo que favorece el throughput por encima de una latencia ágil.