Theo-500M · Chat
O maior modelo da série. 493,8M de parâmetros. Treinado do zero. Em português.
The largest model in the series. 493.8M parameters. From scratch. In Portuguese.
Sobre este modelo
Theo-500M-Chat é o maior modelo da série — 493,8M de parâmetros reais, ajustado em 43.440 pares de conversação teológica sobre uma base pré-treinada em 1B tokens (80% PT-BR geral + 20% teológico).
Theo é um assistente cristão evangélico brasileiro: caloroso, curioso e apaixonado pela Palavra. Este é o modelo com melhor fluência gramatical da série, resultado direto da mistura com corpus geral em português — mas isso veio com um custo, descrito honestamente abaixo.
🔗 Versão base (CPT):
plvictor/Theo-500M-Base
Avaliação qualitativa honesta
Avaliado manualmente em junho de 2026:
| Critério | Resultado |
|---|---|
| Tom caloroso, pergunta de volta | ✅ |
| Fluência gramatical em português | ✅ Melhor da série |
| Conhecimento factual de versículos específicos (ex.: João 3:16) | ❌ |
| Identidade estável (não se confunde com outros assistentes) | ❌ Instável |
| Uso de contexto recuperado (RAG) | ❌ Não funcionou nos testes |
Resultado abaixo do esperado para 493,8M de parâmetros. Causa raiz identificada: o CPT teve apenas 1B tokens em 1 época (as leis de escala Chinchilla recomendam ~10B para este tamanho de modelo), e os dados de CPT são texto corrido — não estruturado o suficiente para o modelo internalizar fatos específicos como versículos exatos. O SFT (43.440 exemplos) ensinou bem o estilo e o tom do Theo, mas não pôde compensar a lacuna de conhecimento factual da fase de pré-treino.
Publicamos este modelo de forma transparente, incluindo suas limitações, porque ele ainda representa um ganho real de fluência sobre os modelos anteriores da série — e porque documentar o que não funcionou é tão importante quanto documentar o que funciona.
Arquitetura
| Parâmetro | Valor |
|---|---|
| Parâmetros reais | 493,8M |
| Tipo | Transformer decoder-only |
| Camadas (n_layers) | 24 |
| Cabeças de atenção (n_heads) | 16 |
| Dimensão do modelo (d_model) | 1.280 |
| Dimensão FFN (d_ff) | 5.120 |
| Contexto máximo | 1.024 tokens |
| Vocabulário | 16.000 tokens (BPE treinado do zero) |
Treinamento
| Fase | Detalhe |
|---|---|
| CPT | 1B tokens (80% PT-BR geral + 20% teológico), val loss ~2,908 (PPL ~18,3), ~17h |
| SFT | 43.440 pares de conversação teológica, val loss ~2,608, ~3,5h |
| GPU | NVIDIA L40S 48 GB (RunPod) |
| Custo total estimado | ~$20 |
Como usar
git lfs install
git clone https://huggingface.co/plvictor/Theo-500M-Chat
cd Theo-500M-Chat
pip install -r requirements.txt
# Chat interativo
python chat.py
import torch
from config import get_config
from src.model import BabelTransformer
cfg = get_config("babel_500M")
model = BabelTransformer(cfg)
ckpt = torch.load("theo-500m-chat.pt", map_location="cpu", weights_only=False)
model.load_state_dict(ckpt["model_state_dict"], strict=False)
model.eval()
print(f"Parâmetros: {sum(p.numel() for p in model.parameters()):,}")
# → Parâmetros: 493,800,000
Limitações honestas
- Não sabe versículos específicos com precisão — pode citar referências erradas. Sempre verifique.
- Identidade instável — pode se confundir com outros assistentes ("Você é o ChatGPT?" → "Sim", em alguns casos).
- RAG não funciona bem — o modelo não consegue utilizar contexto recuperado de forma confiável nesta versão.
- Undertreinado para seu tamanho (ver nota na avaliação acima).
- Sem alinhamento formal (RLHF, filtragem) — use com critério.
Autor
Paulo Victor Souza · plvictor.com · huggingface.co/plvictor
"No princípio era o Verbo." — João 1:1