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

Claude Session Tracker: Guardar automáticamente sesiones de código de Claude en Issues de GitHub
Una nueva herramienta llamada claude-session-tracker guarda automáticamente las sesiones de Claude Code en GitHub Issues, registrando cada solicitud y respuesta como comentarios con marcas de tiempo. Crea un Issue de GitHub por sesión vinculado a un tablero de Projects y funciona a través del sistema de hooks nativo de Claude Code sin consumir tokens de contexto.

Benchmark Muestra que la Herramienta CLI Reduce los Costos de Tokens de Código de Claude en un 32% Mediante Navegación Estructural
Un desarrollador creó una herramienta CLI en Rust que proporciona a los agentes Claude Code comandos de navegación estructural como 'muéstrame un resumen de 180 tokens de esta clase de 6,000 tokens'. La evaluación comparativa en Sonnet 4.6 a lo largo de 54 ejecuciones automatizadas mostró un 32% menos de costo por tarea y un 67% más de ediciones de código por sesión.

Navegando por los problemas de instalación de OpenClaw
Los usuarios enfrentan desafíos de instalación entre openclaw.ai y openclawd.ai, cada uno proporcionando diferentes comandos de configuración.

Mengram añade memoria persistente a los agentes OpenClaw.
Mengram es un sistema de memoria de código abierto que proporciona a los agentes OpenClaw memoria a largo plazo entre sesiones, resolviendo el problema de que los agentes olvidan todo cuando se reinician. Ofrece memoria episódica, de entidades y procedimental con archivado inteligente de hechos obsoletos.