GuppyLM: Un LLM de 9M Parámetros Construido desde Cero con Fines Educativos

Qué es GuppyLM
GuppyLM es un modelo de lenguaje diminuto (~9 millones de parámetros) que finge ser un pez llamado Guppy. Está construido desde cero para demostrar cómo funcionan los modelos de lenguaje sin requerir un doctorado o un enorme clúster de GPU. El proyecto incluye generación de datos, creación de tokenizador, arquitectura del modelo, bucle de entrenamiento e inferencia—todo en aproximadamente 130 líneas de código en PyTorch.
Detalles de la Arquitectura
- Parámetros: 8.7M
- Capas: 6
- Dimensión oculta: 384
- Cabezas: 6
- FFN: 768 (ReLU)
- Vocabulario: 4,096 (BPE)
- Secuencia máxima: 128 tokens
- Normalización: LayerNorm
- Posición: Incrustaciones aprendidas
- Cabeza LM: Peso compartido con las incrustaciones
Este es un transformador básico sin GQA, RoPE, SwiGLU o salida temprana—lo más simple posible.
Entrenamiento y Datos
El modelo se entrena en 60,000 conversaciones sintéticas en 60 temas en aproximadamente 5 minutos en una GPU T4 gratuita de Colab. El conjunto de datos (arman-bd/guppylm-60k-generic en HuggingFace) contiene 57,000 muestras de entrenamiento y 3,000 de prueba en formato: {"input": "...", "output": "...", "category": "..."}.
Los temas incluyen: saludos, sentimientos, temperatura, comida, luz, agua, acuario, ruido, noche, soledad, burbujas, vidrio, reflejo, respiración, natación, colores, sabor, plantas, filtro, algas, caracoles, miedo, emoción, aburrimiento, curiosidad, felicidad, cansancio, exterior, gatos, lluvia, estaciones, música, visitantes, niños, significado de la vida, tiempo, memoria, sueños, tamaño, futuro, pasado, nombre, clima, sueño, amigos, chistes, miedo, amor, edad, inteligencia, salud, canto, televisión y más.
Personalidad y Salida
Guppy habla en oraciones cortas y en minúsculas sobre agua, temperatura, luz, vibraciones y comida. No comprende abstracciones humanas como dinero, teléfonos o política. Conversación de ejemplo:
Tú> hola guppy Guppy> hola. acabo de encontrar un buen lugar cerca de la roca. la temperatura se siente agradable. Tú> tienes hambre Guppy> sí. siempre sí. nadaré hacia la superficie ahora mismo. prometo comerlo todo. Tú> cuál es el significado de la vida Guppy> comida. la respuesta siempre es comida.
Inicio Rápido
Chatea con Guppy (sin entrenamiento necesario): Descarga el modelo preentrenado de HuggingFace. Solo ejecuta todas las celdas en el cuaderno.
Entrena el tuyo propio: Configura el entorno de ejecución a GPU T4, ejecuta todas las celdas—descarga el conjunto de datos, entrena el tokenizador, entrena el modelo, lo prueba. Sube a HuggingFace o descarga localmente.
Chatea localmente:
pip install torch tokenizers python -m guppylm chat
Interacción local de ejemplo:
Tú> el gato te está mirando Guppy> me escondo detrás de la planta cuando viene el peludo. Tú> está lloviendo afuera Guppy> creo que la lluvia es lo mejor del exterior.
Estructura del Proyecto
guppylm/ ├── config.py # Hiperparámetros (modelo + entrenamiento) ├── model.py # Transformador básico ├── dataset.py # Carga de datos + lotes ├── train.py # Bucle de entrenamiento (LR coseno, AMP) ├── generate_data.py # Generador de datos de conversación (60 temas) ├── eval_cases.py # Casos de prueba reservados ├── prepare_data.py # Preparación de datos + entrenamiento de tokenizador └── inference.py # Interfaz de chat
Este proyecto es útil para desarrolladores que quieren comprender los fundamentos de la arquitectura de transformadores sin lidiar con modelos de miles de millones de parámetros. La implementación completa muestra cada pieza desde el texto crudo hasta los pesos entrenados y la salida generada.
📖 Read the full source: HN LLM Tools
👀 Ver también

Agint: Una herramienta CLI en Rust que detecta contradicciones en archivos de instrucciones para agentes de IA
Agint es una herramienta CLI gratuita y de código abierto escrita en Rust que escanea archivos de instrucciones como CLAUDE.md y AGENTS.md en busca de contradicciones, referencias a archivos faltantes y problemas de sincronización. Utiliza análisis estático para problemas estructurales y opcionalmente llama a la API de Claude para la detección de contradicciones semánticas.

Problemas del Flujo de Trabajo Multi-Agente OpenClaw: Bloqueos, Pérdida de Contexto e Ineficiencia de Tokens
Un desarrollador reporta que los flujos de trabajo multiagente de OpenClaw frecuentemente se estancan con agentes colgados, experimentan fugas de contexto a pesar de la documentación personalizada y consumen tokens excesivos sin generar resultados. La configuración utilizó modelos Gemini 3 Pro/Codex con un orquestador COO y agentes de tareas especializados.

Sitefire automatiza la optimización de búsqueda de IA con agentes de contenido.
La plataforma de Sitefire monitorea los resultados de búsqueda de IA, analiza qué páginas son citadas y utiliza agentes de contenido para redactar mejoras o crear nuevas páginas que se envían directamente al CMS de los clientes. Un cliente vio cómo las solicitudes de bots de IA aumentaron de ~200/día a ~570/día en diez días.

Un Sistema para que Claude Code Aprenda Tu Proyecto con el Tiempo
Un desarrollador creó una configuración simple para ayudar a Claude Code a retener el contexto entre sesiones mediante la adición de un archivo CLAUDE.md, una carpeta docs con convenciones del proyecto y tres prompts para inicializar, refinar y capturar patrones.