Balùa · Qwen2.5-VL-3B — identificación de alimentos (adaptador LoRA, destilado 7B→3B)
Adaptador LoRA para Qwen/Qwen2.5-VL-3B-Instruct
que, dada la foto de un plato, devuelve un JSON en español con los alimentos visibles
y una ración estimada. Entrenado para la app personal Balùa (estimación de calorías a
partir de una foto, on-device).
El modelo identifica qué alimentos hay (y sugiere ración); no calcula calorías. En la app, el usuario ajusta la ración y una tabla nutricional local convierte a kcal. Así se evita que el modelo "alucine" números. Las calorías resultantes son una estimación orientativa, no un valor médico.
Formato de salida
{"alimentos": [{"nombre": "pollo", "racion": "media"},
{"nombre": "arroz", "racion": "grande"}]}
racion ∈ {pequeña, media, grande}.
Datos de entrenamiento (destilación visual 7B→3B)
Dataset propio natzx94/balua-food-es: fotos cenitales de Nutrition5k reetiquetadas con Qwen2.5-VL-7B (temperatura 0, ≤4 alimentos visibles, nombres genéricos en español). Frente a las etiquetas por gramos originales, las etiquetas visuales son más consistentes con lo que un VLM puede ver, y el 3B las aprende mejor.
Entrenamiento
- Método: LoRA (PEFT),
r=16,alpha=32, dropout 0.05, solo atención del lenguaje (q/k/v/o_proj); vision encoder congelado. bf16 (sin 4-bit). - Datos: 2.942 ejemplos de train, 2 épocas, lr 1e-4, batch efectivo 8.
Métricas (val 326 fotos, etiquetas visuales 7B, mismo prompt)
| Métrica | v3 (actual) | v2 |
|---|---|---|
| F1 alimentos (canónico) | 0,667 | 0,646 |
| F1 alimentos (por grupos) | 0,669 | 0,648 |
| Accuracy alimento principal | 0,709 | 0,702 |
| JSON válido | 1,000 | 1,000 |
v3 (actual): añade ~18 platos reales de comida casera española (fotos propias + correcciones de usuario de la app, sobremuestreados ×4, incluidos platos poco comunes como carpaccio de ballena o pastel de reno) y unifica el prompt de entrenamiento con el de inferencia. v2: corrigió ~48 etiquetas que el 7B dejó en inglés (mushrooms, pork) — salida 100 % en español. v1: primera destilación 7B→3B.
Licencia y atribución
Apache 2.0 (heredada del base). Las imágenes del dataset requieren atribución a Nutrition5k (Thames et al., CVPR 2021, CC BY 4.0). Proyecto personal, uso educativo/investigación.