Instructions to use NovaIALATAM/Amaru-VL-3B with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- PEFT
How to use NovaIALATAM/Amaru-VL-3B with PEFT:
from peft import PeftModel from transformers import AutoModelForCausalLM base_model = AutoModelForCausalLM.from_pretrained("unsloth/Qwen2.5-VL-3B-Instruct") model = PeftModel.from_pretrained(base_model, "NovaIALATAM/Amaru-VL-3B") - Transformers
How to use NovaIALATAM/Amaru-VL-3B with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("image-text-to-text", model="NovaIALATAM/Amaru-VL-3B") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] pipe(text=messages)# Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("NovaIALATAM/Amaru-VL-3B", dtype="auto") - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use NovaIALATAM/Amaru-VL-3B with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "NovaIALATAM/Amaru-VL-3B" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "NovaIALATAM/Amaru-VL-3B", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }'Use Docker
docker model run hf.co/NovaIALATAM/Amaru-VL-3B
- SGLang
How to use NovaIALATAM/Amaru-VL-3B with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "NovaIALATAM/Amaru-VL-3B" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "NovaIALATAM/Amaru-VL-3B", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "NovaIALATAM/Amaru-VL-3B" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "NovaIALATAM/Amaru-VL-3B", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }' - Unsloth Studio
How to use NovaIALATAM/Amaru-VL-3B with Unsloth Studio:
Install Unsloth Studio (macOS, Linux, WSL)
curl -fsSL https://unsloth.ai/install.sh | sh # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for NovaIALATAM/Amaru-VL-3B to start chatting
Install Unsloth Studio (Windows)
irm https://unsloth.ai/install.ps1 | iex # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for NovaIALATAM/Amaru-VL-3B to start chatting
Using HuggingFace Spaces for Unsloth
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for NovaIALATAM/Amaru-VL-3B to start chatting
Load model with FastModel
pip install unsloth from unsloth import FastModel model, tokenizer = FastModel.from_pretrained( model_name="NovaIALATAM/Amaru-VL-3B", max_seq_length=2048, ) - Docker Model Runner
How to use NovaIALATAM/Amaru-VL-3B with Docker Model Runner:
docker model run hf.co/NovaIALATAM/Amaru-VL-3B
BIENVENIDOS A AMARU
Detalles del Modelo
- Nombre del Modelo: Amaru-VL-3B
- Versión del Modelo: 1.0
- Desarrollador/Organización: NovaIA, laboratorio de IA de Grupo Neura
- Fecha de Lanzamiento: Agosto 2025
- Licencia: cc-by-4.0
- Idioma(s): Español (principalmente, con capacidades multilingües heredadas del modelo base)
- Repositorio: NovaIALATAM/Amaru-VL-3B
- Contacto: Para más información, contactar a NovaIA a través de su sitio web.
Descripción del Modelo
Amaru-VL-3B es un modelo de lenguaje multimodal (VLM) fine-tuneado mediante LoRA a partir del modelo base Qwen2.5-VL-3B. Desarrollado por NovaIA, el laboratorio de inteligencia artificial de Grupo Neura, este modelo está diseñado para ser un experto en las culturas precolombinas del Perú, abordando las limitaciones de los grandes modelos de lenguaje que a menudo cometen errores en tareas relacionadas con el patrimonio cultural latinoamericano. Amaru representa el primer acercamiento hacia un LLM latinoamericano especializado, manteniendo las capacidades generales de generación de texto del modelo base para tareas de propósito general, mientras integra conocimiento profundo sobre civilizaciones ancestrales peruanas como Chavín, Moche, Nazca, Chimú, Lambayeque y otras.
El modelo soporta entradas multimodales (texto e imágenes) y es útil para tareas como análisis de artefactos arqueológicos, respuestas a preguntas históricas, generación de descripciones culturales y más. Fue entrenado con un total de aproximadamente 5 millones de tokens, combinando datasets abiertos y privados para asegurar precisión histórica y cultural.
Arquitectura: Basado en Qwen2.5-VL-3B, un modelo de visión-lenguaje con aproximadamente 3 mil millones de parámetros, optimizado para eficiencia con soporte para cuantización (e.g., 4-bit) y long context.
Objetivos Principales:
- Proporcionar conocimiento preciso sobre culturas precolombinas peruanas.
- Servir como base para aplicaciones educativas, de investigación y de preservación cultural en América Latina.
- Mantener versatilidad para generación de texto general.
Usos
Usos Directos
- Análisis Multimodal: Identificación y descripción de imágenes relacionadas con artefactos, arquitectura o iconografía precolombina (e.g., máscaras Lambayeque, cerámica Moche).
- Preguntas y Respuestas: Consultas sobre historia, rituales, economía y arte de civilizaciones peruanas.
- Generación de Texto: Creación de contenido educativo o narrativo sobre patrimonio cultural, así como tareas generales de lenguaje.
Ejemplo de Carga y Uso
El modelo se carga fácilmente con Unsloth para inferencia eficiente. Aquí un ejemplo:
from unsloth import FastVisionModel, FastTextModel
import torch
from transformers import TextStreamer
from PIL import Image
import requests
from io import BytesIO
model_id = "NovaIALATAM/Amaru-VL-3B"
# Cargar modelo y tokenizer con Unsloth
base_model, tokenizer = FastVisionModel.from_pretrained(
model_name=model_id,
max_seq_length=8192,
dtype=None,
load_in_4bit=False,
use_gradient_checkpointing="unsloth",
)
FastVisionModel.for_inference(base_model)
# Imagen de ejemplo
path_image = "https://cloudfront-us-east-1.images.arcpublishing.com/infobae/WARBZQ3A65BQRLN3D63I3JJBIY.jpg"
response = requests.get(path_image, timeout=10)
response.raise_for_status()
image = Image.open(BytesIO(response.content))
messages = [
{"role": "system", "content": [
{"type": "text", "text": "Amaru, eres un experto conocedor de diferentes culturas precolombinas del Perú."}]},
{"role": "user", "content": [
{"type": "image", "image": image},
{"type": "text", "text": "¿Qué es esto?"}
]}
]
inputs = tokenizer(
images=image,
text=tokenizer.apply_chat_template(messages, add_generation_prompt=True),
add_special_tokens=False,
return_tensors="pt",
).to("cuda")
text_streamer = TextStreamer(tokenizer, skip_prompt=True)
_ = base_model.generate(**inputs, streamer=text_streamer, max_new_tokens=2048,
use_cache=True, temperature=0.05, min_p=0.1)
Usos en Aplicaciones Downstream
- Integración en chatbots educativos para museos o plataformas de aprendizaje.
- Fine-tuning adicional para tareas específicas en patrimonio cultural o turismo.
- Uso en herramientas de IA para investigación arqueológica.
Usos Fuera de Alcance
- No se recomienda para aplicaciones médicas, legales o de alta precisión sin validación adicional.
- Evitar usos que promuevan desinformación histórica o cultural.
- No está optimizado para idiomas no latinos o contextos no relacionados con el conocimiento base.
Sesgos, Riesgos y Limitaciones
- Sesgos: El modelo hereda sesgos potenciales del modelo base Qwen2.5-VL-3B y de los datasets de entrenamiento. Dado el enfoque en culturas peruanas, podría subrepresentar otras culturas latinoamericanas o globales. Los datasets abiertos (CuPer_Text y CuPer_Images) fueron curados para precisión, pero los privados podrían introducir sesgos no documentados.
- Riesgos: Posibles alucinaciones en respuestas fuera del dominio precolombino, como en modelos de IA generales. En temas sensibles como rituales indígenas, podría generar contenido inexacto si no se guía adecuadamente.
- Limitaciones:
- Rendimiento inferior en idiomas no españoles o en contextos modernos no relacionados.
- Requiere hardware GPU para inferencia eficiente (soporte para cuantización mitiga esto).
- No evaluado exhaustivamente; se recomienda validación humana para usos críticos.
- Recomendaciones:
- Usar prompts específicos (e.g., "Actúa como un experto en culturas precolombinas del Perú") para maximizar precisión.
- Usar una temperatura baja para evitar alucinaciones: temperature = 0.05
Detalles del Entrenamiento
Datos de Entrenamiento
El modelo fue fine-tuneado con un total de ~5 millones de tokens, incluyendo:
- CuPer_Text (abierto, cc-by-nc-4.0): 4,144 muestras (3,268 train, 876 test), ~650,000 tokens. Formato: Preguntas y respuestas en texto sobre culturas precolombinas peruanas (e.g., historia, arquitectura, rituales). Creado por NovaIA para asegurar precisión cultural.
- CuPer_Images (abierto, cc-by-nc-4.0): 4,247 muestras (3,396 train, 851 test), ~2.2 millones de tokens. Formato: Preguntas, imágenes y respuestas en texto, enfocadas en aspectos visuales como artefactos, estructuras y iconografía (e.g., acueductos Nazca, máscaras Lambayeque).
- Datasets Privados: Datos adicionales curados por NovaIA, contribuyendo al total de 5 millones de tokens, con énfasis en conocimiento histórico validado.
Todos los datos están en español y centrados en culturas como Lambayeque, Moche, Nazca, Chavín y Chimú.
Procedimiento de Entrenamiento
- Método: Fine-tuning LoRA (Low-Rank Adaptation) sobre Qwen2.5-VL-3B para eficiencia.
- Hiperparámetros: No especificados públicamente; optimizados para contexto largo (hasta 8192 tokens) y multimodalidad.
- Hardware: Entrenado en infraestructura de NovaIA, compatible con Unsloth para aceleración.
- Duración: No detallada, pero enfocado en precisión cultural sobre volumen.
Impacto Ambiental
- Estimación de Carbono: El fine-tuning con LoRA es eficiente, estimando un impacto bajo (~equivalente a unas horas de GPU A100). No se calculó formalmente.
- Eficiencia: Soporte para cuantización 4-bit reduce el consumo en inferencia.
Citación
Si utilizas este modelo en tu investigación o aplicación, por favor cita como:
@misc{amaru_vl_3b_2025,
title = {Amaru-VL-3B: Modelo Multimodal Especializado en Culturas Precolombinas del Perú},
author = {NovaIA - Grupo Neura},
year = {2025},
publisher = {Hugging Face},
url = {https://huggingface.co/NovaIALATAM/Amaru-VL-3B}
}
Más Información
Para más detalles sobre los datasets:
- Downloads last month
- 7
