unileon-robotics/Trasgu-3B
05
<p align="center"> <img src="Utils/Banner-Trasgu.PNG" alt="Trasgu Banner"> </p>
<h1 align="center">Trasgu-3B — llionés (Qwen2.5 + Unsloth, FP16 · PyTorch)</h1>
<p align="center"> <img src="Utils/Logo-Trasgu.png" alt="Trasgu Logo" width="90"> </p>
Finetuning de Qwen2.5-3B con Unsloth en Google Colab, entrenado y evaluado con el dataset [`unileon-robotics/lliones-dict-tr`](https://huggingface.co/datasets/unileon-robotics/lliones-dict-tr) (pares input→output). Este repositorio publica pesos FP16 en formato Transformers (PyTorch). La variante GGUF (incluye F16 y Q5_K_M) está en [Trasgu-3B-GGUF](https://huggingface.co/unileon-robotics/Trasgu-3B-GGUF).
Descripción
Trasgu-3B es un modelo conversacional en llionés (leonés). Se ha realizado finetuning supervisado sobre pares input→output de lliones-dict-tr. Al tratarse de datos estructurados, la señal es explícita y permite evaluación objetiva en la misma distribución de tareas.
Archivos de utilidad
- Banner:
Utils/Banner-Trasgu.PNG - Logo:
Utils/Logo-Trasgu.png - Training notebook:
Utils/Training_Notebook.ipynb - Testing notebook (evaluación):
Utils/Testing_Notebook.ipynb - Configuración de entrenamiento (hiperparámetros y chat template):
Utils/config_entrenamiento.json
Dataset
- Principal (entrenamiento/evaluación): `unileon-robotics/lliones-dict-tr` — dataset estructurado de pares input–output (traducciones, vocabulario, significados llionés↔español). Cada ejemplo se formatea como turno de chat con la chat template de Qwen 2.5 (instrucción → respuesta) antes del finetuning.
- Corpus adicional (no usado en el finetuning): `unileon-robotics/lliones-corpus` — texto no estructurado en llionés. No se utilizó aquí por no aportar señal supervisada como
lliones-dict-tr, pero queda disponible para quien lo necesite.
Metodología de evaluación
Para cada ejemplo del dataset (N = 3000):
- Se consulta el modelo con la entrada (instrucción/pregunta).
- Se compara la salida con la respuesta de referencia mediante dos medidas (0–100):
- Fuzzy (
mean_fuzzy): fuzzy ratio (coincidencia textual aproximada). - Semantic (
mean_semantic): cosine similarity de embeddings con `sentence-transformers/all-MiniLM-L6-v2`.
Puntuación final por ejemplo: score_ejemplo = max(fuzzy, semantic) Agregados: mean_fuzzy, mean_semantic y `mean_similarity` (media de score_ejemplo, métrica final).
Resultados (todas las variantes · 3.000 ejemplos)
Este repositorio corresponde a: Trasgu-3B (F16). Las variantes -GGUF contienen dos artefactos: F16 y Q5_K_M.
Entrenamiento (resumen)
- Base model:
unsloth/Qwen2.5-3B· Framework: Unsloth (LoRA) en Google Colab - Épocas: 3 · max_seq_length: 4096
- Optimización:
paged_adamw_8bit· learning_rate: 2e-4 · lr_scheduler: linear · warmup_ratio: 0.1 · weight_decay: 0.01 - Precisión: FP16
- LoRA: r=128, α=256, dropout=0.1, bias=none; target_modules =
q_proj,k_proj,v_proj,o_proj,gate_proj,up_proj,down_proj,embed_tokens,lm_head - Gradient checkpointing:
unsloth - Quantization (para exportar a GGUF): F16 y Q5_K_M (publicados en el repo -GGUF)
- Chat template: Qwen 2.5; campos:
input, output→text(+append_eos_token=true) - Config detallada:
Utils/config_entrenamiento.json
Notas
- Dominio: métricas en la distribución de
lliones-dict-tr; fuera de ella, el rendimiento puede variar. - Idioma: orientado a llionés; si la instrucción es ambigua puede responder en español.
- Formato: este repo publica FP16 (PyTorch); el repo -GGUF incluye F16 y Q5_K_M.
