GuppyLM: Um LLM de 9 Milhões de Parâmetros Construído do Zero para Fins Educacionais

✍️ OpenClawRadar📅 Publicado: April 16, 2026🔗 Source
GuppyLM: Um LLM de 9 Milhões de Parâmetros Construído do Zero para Fins Educacionais
Ad

O que é o GuppyLM

GuppyLM é um modelo de linguagem minúsculo (aproximadamente 9 milhões de parâmetros) que finge ser um peixe chamado Guppy. Ele foi construído do zero para demonstrar como os modelos de linguagem funcionam sem exigir um doutorado ou um enorme cluster de GPUs. O projeto inclui geração de dados, criação de tokenizador, arquitetura do modelo, loop de treinamento e inferência—tudo em cerca de 130 linhas de código PyTorch.

Detalhes da Arquitetura

  • Parâmetros: 8,7 milhões
  • Camadas: 6
  • Dimensão oculta: 384
  • Cabeças: 6
  • FFN: 768 (ReLU)
  • Vocabulário: 4.096 (BPE)
  • Sequência máxima: 128 tokens
  • Normalização: LayerNorm
  • Posição: Embeddings aprendidos
  • Cabeça LM: Peso compartilhado com embeddings

Este é um transformer básico sem GQA, RoPE, SwiGLU ou early exit—o mais simples possível.

Treinamento e Dados

O modelo treina em 60 mil conversas sintéticas em 60 tópicos em cerca de 5 minutos em uma GPU T4 gratuita do Colab. O conjunto de dados (arman-bd/guppylm-60k-generic no HuggingFace) contém 57 mil amostras de treinamento e 3 mil de teste no formato: {"input": "...", "output": "...", "category": "..."}.

Os tópicos incluem: cumprimentos, sentimentos, temperatura, comida, luz, água, aquário, ruído, noite, solidão, bolhas, vidro, reflexo, respiração, natação, cores, sabor, plantas, filtro, algas, caracóis, medo, empolgação, tédio, curiosidade, felicidade, cansaço, fora de casa, gatos, chuva, estações, música, visitantes, crianças, significado da vida, tempo, memória, sonhos, tamanho, futuro, passado, nome, clima, sono, amigos, piadas, medo, amor, idade, inteligência, saúde, canto, TV e mais.

Ad

Personalidade e Saída

Guppy fala em frases curtas e minúsculas sobre água, temperatura, luz, vibrações e comida. Ele não entende abstrações humanas como dinheiro, telefones ou política. Exemplo de conversa:

Você> oi guppy
Guppy> oi. acabei de encontrar um bom lugar perto da pedra. a temperatura está agradável.
Você> você está com fome
Guppy> sim. sempre sim. vou nadar até o topo agora. prometo comer tudo.
Você> qual é o significado da vida
Guppy> comida. a resposta é sempre comida.

Início Rápido

Converse com o Guppy (sem treinamento necessário): Baixa o modelo pré-treinado do HuggingFace. Basta executar todas as células no notebook.

Treine o seu próprio: Configure o runtime para GPU T4, execute todas as células—baixa o conjunto de dados, treina o tokenizador, treina o modelo, testa. Faça upload para o HuggingFace ou baixe localmente.

Converse localmente:

pip install torch tokenizers
python -m guppylm chat

Exemplo de interação local:

Você> o gato está olhando para você
Guppy> eu me escondo atrás da planta quando o peludo vem.
Você> está chovendo lá fora
Guppy> acho que a chuva é a melhor coisa de lá fora.

Estrutura do Projeto

guppylm/
├── config.py          # Hiperparâmetros (modelo + treinamento)
├── model.py           # Transformer básico
├── dataset.py         # Carregamento de dados + batching
├── train.py           # Loop de treinamento (LR cosseno, AMP)
├── generate_data.py   # Gerador de dados de conversa (60 tópicos)
├── eval_cases.py      # Casos de teste reservados
├── prepare_data.py    # Preparação de dados + treinamento de tokenizador
└── inference.py       # Interface de chat

Este projeto é útil para desenvolvedores que querem entender os fundamentos da arquitetura transformer sem lidar com modelos de bilhões de parâmetros. A implementação completa mostra cada parte, desde o texto bruto até os pesos treinados e a saída gerada.

📖 Leia a fonte completa: HN LLM Tools

Ad

👀 See Also