SmolVLM2
SmolVLM2 es el modelo de visión y lenguaje pequeño de Hugging Face. LibreYOLO lo envuelve como detector de objetos de vocabulario abierto y expone su chat libre directamente: pásale una lista de clases para detectar, o hazle una pregunta.
- Tareas
- detection
- Tamaños
- 500m at 512 px
- Instalación
pip install libreyolo- Nivel de compatibilidad
- Nivel hermano, desde v. Una superficie de producto independiente con su propia factoría y su propio contrato.
- Licencias
- Código MIT, pesos Apache-2.0. Uso comercial
Instalación
SmolVLM2 pertenece al nivel VLM-como-detector de LibreYOLO, una superficie de
producto aparte de las familias basadas en checkpoints y con su propia
factoría. Necesita el extra vlm, que además arrastra num2words, una
dependencia del propio procesador de SmolVLM2.
pip install "libreyolo[vlm]"Predicción
Los pesos se descargan de Hugging Face en el primer uso y se cachean en local.
from libreyolo import LibreVLM, SAMPLE_IMAGE model = LibreVLM("smolvlm2-500m")model.set_classes(["cat", "dog"])result = model.predict(SAMPLE_IMAGE, save=True) for box in result.boxes: print(box.cls, box.conf, box.xyxy)from libreyolo import LibreVLM, SAMPLE_IMAGE model = LibreVLM("smolvlm2-500m") # La vía de escape bajo la comodidad de la detección: cualquier pregunta,# no solo una consulta de bounding boxes.answer = model.chat(SAMPLE_IMAGE, "What is the cat doing?")print(answer)Esta familia se carga a través de la factoría LibreVLM(), no de
LibreYOLO(): las familias VLM no declaran ningún cargador de checkpoints, así
que el enrutado por sufijo de archivo que describen otras páginas de modelos no
aplica aquí. set_classes() fija el vocabulario que se le pide encontrar a
SmolVLM2; es persistente, así que sigue en vigor en todas las llamadas
posteriores a predict()/track() hasta que vuelvas a fijarlo. SmolVLM2 no
necesita sobrescribir el parser en LibreYOLO: sigue la misma salida de
plantilla de chat más JSON que el valor por defecto compartido del nivel, así
que ni su prompt de detección ni su formato de cajas son específicos de la
familia. Todas las detecciones llevan la misma confianza de marcador de
posición, así que el filtrado por conf es todo o nada en vez de una
ordenación; iou sí tiene efecto: descarta una caja posterior de la misma
clase en cuanto solapa por encima del umbral con otra ya conservada, porque un
generador que se repite puede emitir cajas casi duplicadas para un mismo
objeto. SmolVLM2 también responde preguntas libres mediante chat(), la misma
vía de escape documentada en la factoría LibreVLM. La CLI de LibreYOLO no
cubre este nivel: no existe una forma libreyolo predict model=... para él.
Consulta predicción para fuentes, streaming y manejo de
resultados.
Variantes
Un solo tamaño en el registro: SmolVLM2-500M-Video-Instruct, que se carga como
LibreVLM("smolvlm2-500m"). SmolVLM2 detecta peor que los modelos de grounding
específicos de este nivel; el propio envoltorio de LibreYOLO lo describe como
una demostración de que una familia nueva no necesita parseo a medida para
funcionar aquí, no como su opción de vocabulario abierto más potente.
LibreYOLO no entrena, valida ni exporta SmolVLM2: train(), val() y
export() lanzan todos NotImplementedError para todas las familias de este
nivel (consulta el nivel de soporte más arriba). Haz el fine-tuning de SmolVLM2
upstream y carga los pesos resultantes si necesitas llevar integrado un
vocabulario propio; revisa a ojo la salida de predict() en vez de una pasada
de validación al estilo COCO, ya que todas las detecciones llevan la misma
confianza de marcador de posición.
Licencia
Comprueba la licencia en el repositorio de Hugging Face de los pesos concretos que descargues. Cada checkpoint de la organización de LibreYOLO incluye una, y no siempre es la misma en toda una familia. Ese repositorio es la fuente autorizada; el resumen siguiente describe qué se aplicaba cuando se verificó esta página por última vez.
Esta es una descripción de las licencias implicadas, no asesoramiento legal. Si la respuesta es importante a nivel comercial, lee las licencias y busca tu propio asesoramiento.
- Trabajo original
- SmolVLM2, Hugging Face (HuggingFaceTB)
- Licencia del proyecto original
- Apache-2.0
- Fuente del proyecto original
- github.com/huggingface/smollm/tree/main/vision
- Código de LibreYOLO
- MIT
- Pesos
- Apache-2.0, distribuidos por sus autores. LibreYOLO no los aloja ni los replica.
- Interpretación
- Apache-2.0 is a permissive license, so these weights can be used in commercial and closed-source products. It asks you to keep its license text and attribution notices with any copy of the weights you redistribute, and it grants a patent license. Both sizes LibreYOLO downloads, SmolVLM2-500M-Video-Instruct and SmolVLM2-2.2B-Instruct, carry this license on their Hugging Face repository.
Cita
@article{marafioti2025smolvlm,
title={SmolVLM: Redefining small and efficient multimodal models},
author={Andrés Marafioti and Orr Zohar and Miquel Farré and Merve Noyan and Elie Bakouch and Pedro Cuenca and Cyril Zakka and Loubna Ben Allal and Anton Lozhkov and Nouamane Tazi and Vaibhav Srivastav and Joshua Lochner and Hugo Larcher and Mathieu Morlon and Lewis Tunstall and Leandro von Werra and Thomas Wolf},
journal={arXiv preprint arXiv:2504.05299},
year={2025}
}Copiado del bloque de cita de los autores en huggingface.co/blog/smolvlm2.