Moondream: el modelo de visión que cabe partout
Moondream es una familia de modelos abiertos de visión-lenguaje que describen una imagen, responden a una pregunta, detectan, señalan y segmentan. Moondream 2 (1,9 mil millones de parámetros, Apache 2.0) requiere aproximadamente 2 GB de VRAM en int4; la versión 0,5B, 816 MiB. Las generaciones 3 y 3.1 (9 mil millones en total, 2 activos) requieren aproximadamente 10 GB de VRAM y una licencia que solo prohíbe revender Moondream mismo como servicio alojado.
Los modelos multimodales impresionantes pesan decenas de gigabytes y ocupan una tarjeta gráfica entera. Moondream aborda el problema desde el extremo opuesto: una familia de modelos de visión compactos, cuya versión más pequeña cabe en menos de un gigabyte, para describir una imagen, responder a una pregunta o localizar un objeto en un ordenador común. Esta guía, actualizada al 28 de septiembre de 2026, distingue las cuatro variantes, cuantifica su consumo según su desarrollador, explica las licencias e indica qué no debes pedirle a Moondream.
#Una familia, no un modelo
Moondream es publicado por M87 Labs. Su autor original, Vikhyat Korrapati, lo describe en el repositorio de GitHub como «a tiny vision language model that kicks ass and runs anywhere». El nombre Moondream designa hoy cuatro variantes con características muy diferentes, y las guías más antiguas suelen confundirlas.
| Variante | Arquitectura | Peso y memoria | Contexto | Licencia |
|---|---|---|---|---|
| Moondream 2 (0,5B) | 500 millones de parámetros, diseñado como modelo destinatario de la destilación para sistemas embebidos | int4: descarga de 375 MiB, 816 MiB en memoria | No especificado | Licencia Apache 2.0 para el repositorio de código (licencia del modelo no especificada) |
| Moondream 2 | Modelo denso, 1,9 mil millones de parámetros, actualizado desde marzo de 2024 | Archivo de 3,85 GB; int8: 2 624 MiB de VRAM; int4: 2 002 MiB | 2.000 tokens | Apache 2.0 |
| Moondream 3 Preview | Mezcla de expertos, 9 mil millones en total, 2 mil millones activos por token; 64 expertos, 8 activados | Aproximadamente 18,5 GB en BF16, o 10,51 GB en FP8 | 32 000 tokens | Business Source License 1.1 con cláusula «No Third-Party Service» |
| Moondream 3.1 9B A2B | Mezcla de expertos, 9,0 mil millones en total, 2,0 activos; 8 expertos, 2 activados, 1 compartido | Expertos en FP8, al menos 10 GB de VRAM según la ficha | 32 768 tokens | Moondream Model License 1.0, en vigor desde el 7 de julio de 2026 |
La diferencia de escala cambia la naturaleza de los usos. Un modelo de 2 mil millones de parámetros se carga en un portátil sin tarjeta gráfica o en una máquina embarcada. Un modelo de 9 mil millones de parámetros, aunque active solo 2 por token, debe mantener todos sus pesos en memoria: por eso la generación 3 requiere decenas de gigabytes, con un archivo FP8 de 10,51 GB para la vista previa. La documentación de Moondream especifica que un Mac mini M4 de base con 16 GB puede alojar Moondream 2, pero que los pesos de Moondream 3 superan su memoria unificada.
#Lo que sabe hacer
Tu ChatGPT privado y gratuito en tu máquina en 1 hora — LM Studio, Ollama, Open WebUI, tus documentos, sin nube.
- Espacio en línea de por vida
- PDF + archivos
- Reembolsado 30 j
Los modelos Moondream ofrecen capacidades nativas, con salidas estructuradas en lugar de texto libre que haya que interpretar. Según la ficha de la versión 3.1, cada una tiene un contrato de salida fijo.
- Query (responder a una pregunta)
- Pregunta en lenguaje natural sobre la imagen, respuesta libre. Es la función de uso general. La ficha especifica que no hay una medida de confianza calibrada: formula preguntas verificables.
- Caption (describir)
- Descripción en tres longitudes: short, normal o long. La ficha advierte que una descripción larga ofrece mayor exhaustividad a cambio de un mayor riesgo de alucinación y que no debe analizarse para obtener recuentos ni coordenadas.
- Detect (detectar)
- Cuadros delimitadores para cualquier expresión, con coordenadas normalizadas entre 0 y 1 desde la esquina superior izquierda. Hasta 200 cuadros por llamada, con un umbral predeterminado de 0,30.
- Point (señalar)
- El centro de cada instancia, hasta 64 puntos: más económico que un cuadro delimitador y adecuado para el conteo.
- Segment (segmentar)
- Una máscara por cada objeto correspondiente, hasta 50 instancias; no se proporcionan puntuaciones de confianza para las máscaras.
Moondream 2 ha adquirido estas capacidades por etapas. Su registro de cambios, publicado por el autor, menciona en marzo de 2025 las descripciones largas de imágenes, el etiquetado con vocabulario abierto y un conteo mejorado (CountBenchQA de 80 a 86,4). En abril de 2025, mejora la lectura de documentos y gráficos (ChartQA de 74,8 a 77,5). En junio de 2025 llega un modo de razonamiento anclado, activado mediante reasoning=True en la función query, que sacrifica velocidad a cambio de precisión, así como una generación de texto entre un 20 y un 40 % más rápida según el autor. Estas cifras son las del autor, obtenidas en sus propias evaluaciones: úsalas para situar la evolución, no para comparar con otro modelo.
Un detalle sobre su uso: Moondream no trabaja con la imagen completa, sino que la divide. Según sus preguntas frecuentes, redimensiona la imagen para que una cuadrícula de bloques de aproximadamente 378 × 378 píxeles la cubra, con un máximo de 12 bloques locales más una vista global, lo que equivale a aproximadamente 1,7 millones de píxeles para los bloques locales. La ficha de la versión 3.1 confirma una división adaptativa en un máximo de 12 bloques, para imágenes PNG, JPEG o WebP de hasta 4096 píxeles en el lado más largo. Por tanto, una foto de 12 megapíxeles se reduce considerablemente antes del análisis: para leer un detalle, recorta primero la zona.
#Lo que consume
| Medición | Moondream 2 (0,5B) | Moondream 2 (1,9B) |
|---|---|---|
| Memoria en ejecución, int8 | 996 MiB | 2624 MiB |
| Memoria en ejecución, int4 | 816 MiB | 2002 MiB |
| Descarga, int4 | 375 MiB | No especificado |
| Velocidad, RTX 3090, int4 con compile() | No indicada | 184 tokens por segundo |
Estas cifras provienen de la página de modelos de Moondream: el contexto importa, se trata de una tarjeta RTX 3090, en int4 con compile(), y de una velocidad de generación de texto, no de un tiempo por imagen. El tiempo por imagen depende del tamaño de la salida y del número de fragmentos de imagen. La misma página indica que la cuantización int4 reduce la memoria en un 42 % con una pérdida de precisión del 0,6 %, sin especificar la evaluación; considéralo una afirmación del editor.
Para la generación 3.1, el hardware soportado por el motor Photon es una tarjeta NVIDIA Ampere o más reciente bajo Linux o Windows, o un Mac Apple Silicon bajo macOS 13 o posterior, con Python 3.10 a 3.14. La ficha del modelo indica también NVIDIA SM75 y superiores, con al menos 10 GB de VRAM, una versión GGUF para procesadores x86 o ARM y MLX para Apple Silicon. La documentación enumera finalmente tarjetas Jetson, entre las que se encuentra la Jetson Orin Nano de 8 GB, entre las plataformas soportadas.
#Tres formas de lanzarlo
- 01Con la biblioteca moondream y PhotonInstala el paquete y luego carga el modelo: los pesos se descargan desde Hugging Face en la primera llamada, y no se requiere ninguna clave de API para los modelos base, según la documentación. Photon solo funciona en GPU NVIDIA Ampere o más recientes, o en Mac con Apple Silicon.
- 02Con TransformersEl repositorio vikhyatk/moondream2 se carga con AutoModelForCausalLM. Especifica la revisión: el autor advierte que el modelo se actualiza frecuentemente y recomienda fijar la versión en producción. La opción trust_remote_code=True ejecuta código proporcionado por el repositorio: actívala solo si confías en la fuente.
- 03Con OllamaLa página de moondream en Ollama indica 1,7 GB y un contexto de 2 000 tokens. Se actualizó por última vez hace dos años, antes de las versiones de 2025 de Moondream 2, y no cubre las generaciones 3. Verifica que ofrezca las capacidades que necesitas antes de adoptarla.
Recuerda que la función detect devuelve coordenadas normalizadas: multiplícalas por el ancho y el alto de la imagen original para obtener coordenadas en píxeles.
- Panorama de modelos multimodales en local
- Fuente: la documentación oficial para ejecución local
- Fuente: la ficha de Hugging Face de Moondream 2
#Los usos en los que gana
- 01Indexar una biblioteca de fotosGenerar una descripción por imagen para poder buscar en una colección de fotos mediante texto. El coste por imagen determina la viabilidad, y ahí es donde un modelo pequeño tiene ventaja. Usa descripciones cortas: las largas pueden inventar detalles.
- 02Filtrar antes de recurrir a un modelo grandeHacer una selección preliminar para enviar al modelo costoso solo las imágenes que lo merezcan. La capacidad point sirve para contar; la capacidad detect, para recortar automáticamente la zona que se analizará después.
- 03Describir imágenes para la accesibilidadProducir textos alternativos por lotes en un sitio existente, en local y sin enviar las imágenes a un servicio de terceros. Revisa una muestra: una descripción de imagen sigue siendo una hipótesis.
- 04Monitorear un flujoPlantear una pregunta cerrada sobre imágenes sucesivas en una máquina modesta que funciona de forma continua. El modelo de 0,5B está diseñado para ajustarse a una tarea muy específica, lo que mejora considerablemente su precisión según M87 Labs.
Una buena práctica se desprende de la ficha de la versión 3.1: plantea preguntas cerradas y precisas. Un modelo pequeño responde bien a «¿La persona lleva un casco en la cabeza?» y se dispersa con «analiza esta escena».
#Lo que no se le debe pedir
La ficha de la versión 3.1 dedica una sección entera a sus limitaciones, lo cual es raro y valioso. Describe los fallos más comunes en evaluación, y los umbrales que proporciona sirven de referencia para los modelos de la misma familia.
- textos pequeños
- El texto de menos de unos 10 píxeles a la resolución del mosaico suele leerse mal o ignorarse: primero recorta y amplía la zona.
- Pequeños objetos
- detect no detecta los objetos cuyo lado más largo mide menos de 12 píxeles: usa point en una zona recortada.
- Escenas cargadas
- Por encima de unas 50 instancias, disminuye la exhaustividad de la detección y los objetos idénticos adyacentes se fusionan. Los conteos superiores a 50 son poco fiables.
- Lectura imprecisa del texto
- Sobre texto borroso, estilizado o parcialmente oculto, el modelo puede generar una cadena plausible pero falsa, sin señal de baja confianza. Para un documento completo, un motor de OCR es más seguro.
- Usos críticos
- La interpretación médica y las decisiones jurídicas o financieras basadas en documentos sin revisión humana se declaran fuera del alcance. El resultado de un modelo pequeño debe revisarse.
#Licencias: lo que puedes hacer
| Modelo | Licencia | Lo que permite, en resumen |
|---|---|---|
| Moondream 2 | Apache 2.0 | Uso libre, incluido el uso comercial, con las condiciones habituales de Apache 2.0 |
| Moondream 3 Preview | Business Source License 1.1 con cláusula «No Third-Party Service» | Uso personal, de investigación y la mayoría de los usos comerciales; no se permite una oferta de pago que compita con M87 Labs, incluido el acceso alojado o un SDK de pago que incorpore los pesos |
| Moondream 3.1 | Moondream Model License 1.0, con código fuente disponible, en vigor el 7 de julio de 2026 | Uso comercial, ajuste fino, cuantización y redistribución autorizados; se requiere una licencia aparte para ofrecer el propio Moondream como servicio alojado de propósito general |
Para indexar tu propia biblioteca de fotos o describir las imágenes de tu sitio, ninguna de estas licencias plantea problemas: se permite el uso interno o como componente de un producto. La limitación solo afecta a quien quiera vender el acceso a Moondream en sí, por ejemplo, mediante una API general de visión alojada. En caso de duda sobre un uso comercial, lo que prevalece es la licencia, no este resumen.
#Moondream o un modelo de visión grande
La pregunta que debes hacerte no es «¿cuál es el mejor?», sino «¿cuántas imágenes y para qué decisión?». Unas pocas imágenes al día y preguntas abiertas: elige el modelo más grande que tu tarjeta admita. Miles de imágenes y una pregunta cerrada repetida: un modelo pequeño hace posible el proyecto.
Una arquitectura en cascada combina ambos: el modelo pequeño procesa todo y señala los casos interesantes; el modelo grande solo interviene en esos casos. En una colección extensa, es el esquema que ofrece la mejor relación entre calidad y tiempo de cálculo. La capacidad de detección de Moondream sirve entonces como filtro: recorta el objeto y el modelo grande analiza la zona recortada.
- Modelos multimodales en local con Ollama
- Qwen3-VL local
- PaddleOCR: el OCR que entiende la página
- Fuente: el repositorio GitHub de Moondream
- Fuente: la página de modelos de Moondream
#FAQ
¿Es Moondream gratuito?+
¿Se necesita una tarjeta gráfica?+
¿Sabe leer un documento escaneado?+
¿Moondream o un modelo de visión más grande?+
¿Se puede usar en muchas imágenes seguidas?+
¿Se puede afinar para una tarea específica?+
¿Un comentario, un error, una precisión? Avísanos, eso mejora la guía para todos.