LocalAI: la alternativa open source para una IA totalmente local

Si te interesa montar tu propia IA en casa o en tus servidores sin depender de nadie, LocalAI se ha convertido en una de las referencias clave del ecosistema open source. No es un simple proyecto más: es toda una familia de herramientas pensada para servir como sustituto directo de la API de OpenAI y otras plataformas comerciales, pero corriendo de forma local, con control total sobre tus datos y sin necesidad obligatoria de GPU.
Lejos de ser solo un servidor de modelos, LocalAI ha evolucionado hacia una plataforma completa de agentes, memoria semántica, generación multimodal y despliegue distribuido, todo ello con una arquitectura modular que se adapta tanto a hardware muy modesto como a infraestructuras avanzadas con GPU, Jetson o clusters distribuidos.
¿Qué es LocalAI y por qué se habla tanto de él?
LocalAI es un proyecto de código abierto bajo licencia MIT que actúa como API REST compatible con la especificación de OpenAI (y servicios similares como Anthropic o Elevenlabs), pero ejecutándose enteramente en tu propia máquina o en tu infraestructura on-premise. Es mantenido por Ettore Di Giacinto y por una comunidad muy activa, y ya acumula decenas de miles de estrellas en GitHub, lo que refleja un interés enorme por soluciones de IA que no dependan de la nube.
La idea principal es que puedas usar tus clientes, SDKs y herramientas pensadas para la API de OpenAI sin tener que cambiar el código, simplemente apuntando los endpoints a tu instancia de LocalAI. Desde ahí, puedes correr LLMs, generar imágenes, audio, usar TTS, hacer búsqueda semántica, detección de objetos y más, todo en modo local, sin enviar datos fuera.
Una de las ventajas más llamativas es que no necesitas obligatoriamente una GPU: muchos modelos pueden ejecutarse únicamente con CPU, lo que abre la puerta a montarlo en un NAS, un NUC, un servidor antiguo o cualquier máquina con un mínimo de recursos, ajustando el tamaño y la cuantización de los modelos a tus limitaciones de hardware.
La familia Local Stack: LocalAI, LocalAGI y LocalRecall
A medida que el proyecto ha crecido, se ha ido transformando en una “familia” de herramientas interconectadas que cubren mucho más que la simple inferencia de modelos. Hoy en día, el llamado “Local Stack” está formado principalmente por tres componentes clave que pueden trabajar juntos o por separado.
Por un lado, LocalAI sigue siendo el pilar central como API OpenAI‑compatible para texto, imágenes, audio y otras modalidades. Se encarga de hablar con los diferentes backends de inferencia (llama.cpp, vLLM, transformers, diffusers, etc.) y de exponer una interfaz estándar que soporta chat, completions, generación de imágenes, TTS, embeddings, reranking, e incluso endpoints experimentales como texto a vídeo.
Junto a él aparece LocalAGI, que actúa como plataforma de gestión de agentes de IA con soporte avanzado para herramientas y flujos agentic. Funciona como un reemplazo mejorado del Responses API de OpenAI, permitiendo definir agentes que pueden razonar, planificar pasos, invocar herramientas externas y coordinar tareas complejas de forma autónoma, pero siempre corriendo de manera local.
El tercer elemento es LocalRecall, diseñado como API REST y sistema de gestión de conocimiento con memoria persistente para agentes. Básicamente, aporta la capa de almacenamiento semántico, vector DB y gestión de contexto de largo plazo, de forma que los agentes y modelos puedan recordar información, documentos y estados de conversaciones a lo largo del tiempo sin tener que depender de servicios externos.
Principales capacidades: más allá de un simple LLM local
Una de las razones por las que LocalAI ha ganado tanta tracción es porque no se limita a servir grandes modelos de lenguaje. El proyecto cubre un abanico muy amplio de capacidades de IA que lo convierten en una especie de “infraestructura genérica” para aplicaciones inteligentes autoalojadas.
En el terreno del lenguaje, LocalAI permite ejecutar LLMs compatibles con múltiples familias de modelos (Llama, Gemma, Qwen, Phi, Mistral, SmollVLM y otros), con soporte para modelos en formato GGUF vía llama.cpp, o a través de backends como transformers o vLLM, según el hardware disponible y las necesidades de rendimiento.
En cuanto a visión y generación multimodal, LocalAI ofrece soporte para modelos de difusión, edición de imágenes, modelos vision‑language y detección de objetos en tiempo real. Esto incluye la integración con proyectos como stable-diffusion.cpp, diffusers de HuggingFace, modelos como FLUX, WAN o Qwen 3 VL, y una API específica para detección de objetos respaldada por rf-detr, que puede funcionar de forma muy eficiente incluso en CPU.
El audio es otro punto fuerte: LocalAI integra backends de reconocimiento de voz, text‑to‑speech y voz en tiempo real con clonación. Encontramos desde whisper.cpp y faster-whisper para transcripción, hasta motores TTS como Bark, Bark‑cpp, Coqui, Kokoro, KittenTTS, Piper, Chatterbox, neutts o Vibevoice, además de modelos de detección de actividad de voz (VAD) como silero‑vad para controlar cuándo hablar o cortar silencios.
Arquitectura modular: binario ligero y backends a la carta
Una de las grandes revoluciones recientes en el proyecto ha sido la transición a una arquitectura totalmente modular en la que el binario principal de LocalAI está separado de los backends. Antes, las imágenes “todo en uno” eran pesadas y contenían de serie todos los motores posibles, lo que complicaba despliegues ligeros y actualizaciones.
Con esta nueva filosofía, la imagen base de Docker y el binario de LocalAI son mucho más pequeños y solo descargan los backends necesarios cuando hace falta. Cuando instalas un modelo desde la galería o mediante ficheros YAML, LocalAI detecta automáticamente tu hardware (CPU, GPU NVIDIA, AMD o Intel) y descarga la variante adecuada del backend que necesita ese modelo.
Además, gracias a este diseño, ahora puedes gestionar backends de forma independiente desde una galería específica, incluso usando versiones de desarrollo. Eso significa que no tienes que esperar a una nueva release de LocalAI para probar el último backend de llama.cpp, whisper.cpp o diffusers: basta con actualizar solo ese componente y el sistema lo usará al vuelo.
Otro detalle práctico muy valorado por quienes trabajan en entornos aislados o con requisitos muy específicos es la posibilidad de cargar backends personalizados simplemente copiando los binarios en una carpeta designada. Sin recompilar contenedores completos, puedes probar compilaciones optimizadas, variantes para arquitecturas concretas o builds parcheadas de los backends sin impactar todo el sistema.
Compatibilidad con múltiples backends de IA
LocalAI integra una lista realmente amplia de backends para cubrir distintos tipos de modelos y casos de uso, con soporte de aceleración adaptado a cada hardware. El corazón de los LLMs suele girar en torno a llama.cpp, vLLM y transformers, pero hay muchos más.
En la parte de LLMs generales, llama.cpp proporciona inferencia eficiente en C/C++ con soporte para CUDA, ROCm, Intel SYCL, Vulkan, Metal y CPU pura, permitiendo ejecutar modelos cuantizados en máquinas sin GPU. vLLM aporta PagedAttention y optimizaciones orientadas a throughput, con aceleración para CUDA y ROCm, mientras que transformers abre la puerta a la extensa colección de modelos de HuggingFace sobre CUDA, ROCm, Intel y CPU.
Para audio, se combinan backends como whisper.cpp y faster-whisper para reconocimiento de voz rápido y portable en CPU o GPU, y una amplia gama de motores TTS: Bark y Bark‑cpp, Coqui, Kokoro, Kitten‑TTS, Piper, Chatterbox, neutts y Vibevoice, cada uno con su equilibrio entre calidad, latencia y requisitos de hardware, abarcando desde CPU pura hasta CUDA, ROCm, Metal o Intel.
En la parte de visión y difusión, el proyecto soporta stablediffusion.cpp como implementación en C/C++ de Stable Diffusion, así como la librería diffusers de HuggingFace para modelos de generación y edición de imágenes más recientes. Dependiendo del backend, se puede aprovechar CUDA, ROCm, Intel SYCL, Metal o simplemente CPU.
Más allá de LLMs, audio e imágenes, LocalAI integra backends específicos como rfdetr para detección de objetos, motores de reranking de documentos y un vector store local‑store, además de integración con la API de HuggingFace para combinar inferencia local y remota cuando sea necesario. Esto convierte la plataforma en algo muy completo para construir sistemas de búsqueda aumentada, asistentes que navegan por documentos o pipelines MLOps locales.
Aceleración: de CPU optimizada a GPU, Metal y Jetson
Para no dejar a nadie fuera, LocalAI ofrece una capa de aceleración muy flexible, con configuraciones para casi cualquier tipo de hardware moderno. Si tienes una GPU NVIDIA, puedes aprovechar CUDA 12 o 13 en la mayoría de backends compatibles, desde llama.cpp hasta diffusers o coqui, ajustando el número de capas en GPU o la carga según tus recursos.
En el caso de gráficas AMD, LocalAI se apoya en ROCm para acelerar backends clave como llama.cpp, whisper, vLLM, transformers, diffusers, rerankers y varios TTS, lo que resulta muy interesante para quienes montan homelabs con tarjetas Radeon. Para hardware Intel, el soporte pasa por oneAPI y otras tecnologías, desplegando aceleración en backends como llama.cpp, whisper, stablediffusion, vLLM, diffusers, rfdetr, rerankers y motores de voz como coqui o bark.
Si trabajas con Mac, la plataforma se integra con Metal y con los backends nativos MLX y MLX‑VLM de Apple, ofreciendo inferencia optimizada en chips M1, M2 y M3+ tanto para LLMs como para modelos multimodales, además del soporte en bark‑cpp y otros componentes compatibles con Metal.
No se olvidan tampoco de escenarios embebidos: hay soporte específico para NVIDIA Jetson con CUDA 12 y 13, permitiendo ejecutar llama.cpp, whisper, stablediffusion, diffusers y rfdetr en dispositivos ARM64 como AGX Orin o plataformas orientadas a edge computing, algo muy útil para proyectos de robótica, seguridad o IoT inteligente.
Y, por supuesto, todo esto se complementa con ejecutables optimizados para CPU, con soporte para conjuntos de instrucciones como AVX, AVX2 y AVX512, además de variantes de backends como whisper.cpp compiladas de forma específica según la capacidad del procesador, evitando errores de “illegal instruction” en máquinas antiguas o de bajo consumo.
Instalación: binarios, script, Docker y AIO
A nivel práctico, el equipo de LocalAI ha puesto bastante empeño en que ponerlo en marcha no sea una odisea. Hay varias vías de instalación según el entorno y el nivel de experiencia, tanto para pruebas rápidas como para despliegues más serios.
Por un lado, puedes empezar con un script instalador que se encarga de descargar el binario adecuado y configurar lo básico. También existen binarios directos para distintas plataformas de escritorio, aunque en macOS, por ejemplo, los DMGs no están firmados por Apple, lo que puede hacer que el sistema los marque como “quarentenados” y requieran un pequeño rodeo para abrirlos (el equipo mantiene issues de seguimiento con soluciones y posibles mejoras).
Otra forma muy habitual es usar Docker para desplegar LocalAI como contenedor autónomo, ya sea para CPU, GPU o imágenes AIO con modelos predescargados. Se pueden elegir imágenes solo CPU, combinadas CPU+GPU o All‑In‑One que incluyen un conjunto inicial de modelos listos para usar, aunque estas últimas ocupan más espacio y en el futuro se ha advertido que algunas variantes “extras” podrían quedar deprecadas en favor del nuevo sistema de gestión de backends.
Al trabajar con Docker, es importante diferenciar entre docker run, que crea y arranca un contenedor nuevo, y docker start, que simplemente levanta uno existente. Si ya has lanzado LocalAI antes y quieres reanudarlo, lo adecuado es usar algo como docker start -i local-ai para no duplicar contenedores ni generar conflictos con nombres ya registrados.
Carga de modelos y detección automática de backend
Una vez tienes LocalAI en marcha, el siguiente paso es cargar los modelos que vayas a usar, ya sea desde la galería oficial o mediante ficheros YAML de configuración. En esta fase es donde entra en juego la lógica de detección automática de hardware y backends.
Cuando seleccionas un modelo en la WebUI o defines uno en YAML, LocalAI analiza las capacidades de tu máquina (tipo de GPU, presencia de NVIDIA, AMD o Intel, soporte de CPU, etc.) y descarga el backend adecuado para esa combinación de modelo y dispositivo. De esta forma, te evitas pelearte a mano con qué binario de llama.cpp, diffusers o whisper.cpp necesitas para tu entorno específico.
Si necesitas más control, la configuración YAML te permite ajustar parámetros como el tamaño de contexto, el número de capas en GPU, el uso de mmap, las cuantizaciones o la definición de herramientas para agentes. Y, gracias a la renovación de la WebUI, ahora es posible editar todo ese YAML directamente desde la interfaz gráfica sin tener que entrar por SSH al servidor ni tocar ficheros a mano.
WebUI renovada: gestión visual de modelos, chat y agentes en LocalAI
La interfaz web ha pasado por una importante remodelación orientada a usuarios avanzados pero sin dejar de ser accesible para quienes solo quieren “trastear” de forma visual. La migración desde HTMX a una combinación de Alpine.js y JavaScript nativo ha mejorado mucho la velocidad y la fluidez de la experiencia, sobre todo en entornos con muchas configuraciones o modelos.
Desde esta WebUI puedes acceder a interfaces de chat, generación de imágenes, audio, gestión de modelos y configuración interna. Existe un listado de modelos con búsqueda difusa, de forma que aunque te equivoques al escribir (por ejemplo, “gema” en lugar de “gemma”), el sistema te mostrará los resultados correctos sin volverte loco afinando el término exacto.
Uno de los puntos más prácticos es que la WebUI permite ver y editar la configuración YAML completa de cada modelo desde el navegador, sin salir de la aplicación. Ahí puedes cambiar el contexto máximo, activar o desactivar soporte multimodal, ajustar parámetros de rendimiento o definir herramientas y MCP servers para agentes, todo con efecto inmediato una vez que guardas los cambios.
Agentes y soporte MCP: IA que usa herramientas de forma local
En sus versiones recientes, LocalAI ha dado un salto importante al incorporar soporte completo para el Modelo de Contexto de Protocolo (MCP) y capacidades agentic avanzadas. Esto permite construir agentes que no solo responden a preguntas, sino que pueden usar herramientas externas, planificar pasos y orquestar tareas complejas.
La integración MCP se basa en el framework desarrollado a partir de LocalAGI y proyectos relacionados como cogito, dando lugar a una forma sencilla de definir “servidores MCP” como contenedores o servicios externos que exponen herramientas. Por ejemplo, puedes tener un servidor MCP que haga búsquedas en DuckDuckGo, otro que consulte APIs internas de tu empresa o que ejecute scripts en tu máquina local.
Desde el punto de vista del desarrollador, basta con configurar estos servidores MCP en el YAML del modelo, sin necesidad de escribir código Python ni librerías específicas. Una vez configurado, puedes usar el endpoint /mcp/v1/chat/completions, compatible con la API de OpenAI, o activar directamente el “Modo Agente MCP” desde la WebUI del chat para que el modelo empiece a invocar herramientas cuando lo considere necesario.
El equipo también ha invertido esfuerzo en mejorar la robustez de la llamada a funciones y el manejo de esquemas JSON, corrigiendo fallos y pánicos que podían aparecer cuando los modelos generaban definiciones de herramientas imperfectas. Con estas mejoras, el uso de herramientas y el flujo agentic resulta mucho más estable en producción.
Hoja de ruta de LocalAI y evolución constante del proyecto
LocalAI se mueve muy rápido, con un roadmap público en forma de issues etiquetados donde se pueden seguir las novedades que van llegando y las que están previstas para próximos meses. La hoja de ruta muestra una secuencia continua de mejoras que cubren tanto nuevas capacidades como refinos internos.
En los últimos años se han añadido funciones como inferencia distribuida, modo federado, P2P para ejecutar LLMs en red, paneles para gestionar swarms de instancias, soporte para modelos y backends nuevos (Flux, MLX‑Audio, WAN, SANA, Bark.cpp, stablediffusion.cpp, etc.), así como un Reranker API y una API de detección de objetos integrada.
También se han producido hitos como la migración de todos los backends fuera del binario principal para reducir peso, la llegada de un nuevo launcher para macOS y Linux, la mejora continua de la WebUI y la incorporación de APIs experimentales como texto a vídeo a través de /v1/videos, que conectan con herramientas de IA local como edición de vídeo local. El roadmap futuro incluye más gestión de memoria dinámica, soporte mejorado para múltiples GPUs, nuevas integraciones agentic y ampliación del ecosistema de herramientas MCP.
Ejemplos de uso en la comunidad y app móvil Local AI Chatbot
El espíritu de LocalAI está muy ligado a la comunidad, como se refleja en las publicaciones del propio creador en foros como r/selfhosted o r/LocalLLaMA, donde se comparte de primera mano la evolución de la arquitectura y se responde a dudas de los usuarios. Muchos comentarios giran en torno a cómo integrar LocalAI como “cerebro” privado de automatizaciones y proyectos personales.
Uno de los casos que ilustran el enfoque “todo local” es la aparición de aplicaciones móviles como Local AI Chatbot de Software Tailor, que ofrecen chat con modelos avanzados directamente en el dispositivo sin conexión a Internet. Esta app permite hablar con modelos como DeepSeek R1, Qwen, Mistral, Llama 3 o Phi de forma totalmente offline, conservando la privacidad al 100 % y aprovechando el hardware del teléfono.
Entre sus características destacan el soporte de múltiples modelos con cambios rápidos de uno a otro, diseño pensado para un consumo eficiente de recursos, y una interfaz limpia para chatear sin complicaciones. Está orientada a usuarios preocupados por la privacidad, profesionales que manejan información sensible, personas en zonas con mala conectividad y entusiastas de la IA interesados en experimentar con modelos locales.
Este tipo de soluciones demuestran cómo el ecosistema en torno a LocalAI y la IA local va más allá del servidor principal, llevando la filosofía de “todo en tu dispositivo” también a móviles, escritorios y otros formatos, con el objetivo de que cualquiera pueda disfrutar de asistentes avanzados sin depender de servicios remotos.
El proyecto LocalAI y su familia de herramientas muestran cómo se puede construir una pila completa de IA privada, extensible, modular y multimodal, capaz de cubrir desde el simple chat hasta agentes complejos con memoria y herramientas, sin renunciar a la libertad del software libre ni al control total de los datos, posicionándose como una alternativa muy seria para quienes no quieren que la inteligencia artificial de sus proyectos dependa de terceros.
