--- language: - es license: apache-2.0 library_name: peft base_model: HuggingFaceTB/SmolLM2-360M-Instruct pipeline_tag: text-generation tags: - lora - peft - llama - distillation - education - uai --- # SmolLM2-360M + LoRA · IA generativa para ejecutivos (español) **Autor:** Cristian Orellana Arce **Curso:** Tópicos Avanzados en IA 2 · Máster en Inteligencia Artificial, Universidad Adolfo Ibáñez **Fecha de entrenamiento:** 19 de octubre de 2026 Adaptador LoRA que destila respuestas de un modelo profesor (`gpt-6-luna`) en un estudiante pequeño que corre en CPU. Explica conceptos de IA generativa a ejecutivos de empresas chilenas, con ejemplos de negocio. Corresponde a la corrida final **c4_360m** del informe del taller. **Uso educativo y experimental.** La nota final del juez es 2,33/10 (umbral aceptable: 7). El modelo inventa definiciones con fluidez y no debe usarse para tomar decisiones. ## Contenido del repositorio | Archivo | Qué es | |---|---| | `adapter_model.safetensors` | Pesos LoRA entrenados (≈ 8,7 M parámetros, 34,8 MB) | | `adapter_config.json` | Configuración LoRA (base, rango, módulos) | | `tokenizer.json`, `tokenizer_config.json`, `chat_template.jinja` | Tokenizer y plantilla de chat del modelo base | | `probar_modelo.py` | Script mínimo para cargar el modelo y hacerle una pregunta | | `resultados.png` | Pérdida por paso, nota antes/después y nota por tema | Es un **adaptador**, no un modelo completo: al cargarlo se descarga automáticamente el modelo base [HuggingFaceTB/SmolLM2-360M-Instruct](https://huggingface.co/HuggingFaceTB/SmolLM2-360M-Instruct) (≈ 720 MB). SHA-256 de `adapter_model.safetensors`: `7d64f30459f68e568a642faeb54bc0fabbac88881223e6d8397311eacace48c5` ## Uso ```bash pip install -r requirements.txt python probar_modelo.py "¿Qué es RAG y cuándo conviene usarlo?" ``` ```python from peft import AutoPeftModelForCausalLM from transformers import AutoTokenizer modelo = AutoPeftModelForCausalLM.from_pretrained("corellana1990/ejercicio") tok = AutoTokenizer.from_pretrained("corellana1990/ejercicio") ``` ## Entrenamiento 60 pares pregunta-respuesta generados por el profesor sobre seis temas (Fundamentos de LLM, Ingeniería de prompts, RAG, Agentes de IA, Ajuste fino, Evaluación y LLMOps) y 12 preguntas de examen que nunca se usaron para entrenar. | Parámetro | Valor | |---|---| | Modelo base | SmolLM2-360M-Instruct | | Épocas / lote | 3 / 4 | | Tasa de aprendizaje | 5e-4 (coseno con calentamiento) | | LoRA r / alpha / dropout | 16 / 32 / 0,05 | | Módulos | q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj | | Tokens máximos ejemplo / respuesta | 320 / 120 | | Semilla | 42 | | Hardware | CPU, Mac con 8 GB de RAM (≈ 15 min de entrenamiento) | | Pérdida inicial → final | 2,99 → 2,02 | ## Evaluación Juez LLM (`gpt-6-luna`), escala 1–10, sobre las 12 preguntas del examen fijo. | Tema | n | Base | Con LoRA | |---|---:|---:|---:| | Agentes de IA | 3 | 2,67 | 2,67 | | Ajuste fino | 2 | 1,50 | 2,50 | | Fundamentos de LLM | 2 | 1,00 | 2,00 | | Ingeniería de prompts | 3 | 2,00 | 2,33 | | RAG | 2 | 1,50 | 2,00 | | **Promedio** | **12** | **1,83** | **2,33** | Aprobación (nota ≥ 7): 0 % antes y después. El examen no incluyó preguntas de Evaluación y LLMOps. ## Limitaciones - Aprende el tono y el vocabulario del dominio, pero no los hechos: inventa definiciones (p. ej., describe LoRA como "una red neuronal"). - Respuestas a veces cortadas por el límite de 120 tokens. - Evaluación acotada: 12 preguntas y un solo juez LLM. ## Licencias SmolLM2 se distribuye con licencia Apache 2.0. Los datos de entrenamiento se generaron con un modelo de OpenAI, cuyos términos restringen usar sus salidas para crear modelos que compitan con OpenAI; este adaptador es solo educativo.