PAMPAr-Coder / .github /copilot-instructions.md
lucas-mella's picture
feat: upload PAMPAr-Coder code and documentation
a2d6a0d verified
|
Raw
History Blame Contribute Delete
3.54 kB
# PAMPAr-Coder - Copilot Instructions
> Instrucciones especΓ­ficas para este proyecto. Se combinan con tu perfil global.
## Proyecto
**PAMPAr-Coder** es un LLM de cΓ³digo 1.5B con arquitectura cerebral inspirada en las 52 zonas de Brodmann.
"El Linux de la IA" - Hacer mΓ‘s con menos hardware.
## Arquitectura
```
Input β†’ Embedding β†’ [BloqueTerrritorial Γ—N] β†’ LM Head β†’ Output
↓
TΓ‘lamoBrodmann (LLAVES 80% + AtenciΓ³n 20%)
+ Conv1D causal (ventana 32 tokens)
↓
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β–Ό β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ SINTAXIS │◄── simbiosis ────►│ SEMÁNTICA β”‚
β”‚ Zonas 1-15 β”‚ β”‚ Zonas 16-30 β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
β–Ό β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ LΓ“GICO │◄── simbiosis ────►│ ESTRUCTURAL β”‚
β”‚ Zonas 31-42 β”‚ β”‚ Zonas 43-52 β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
```
## Componentes Clave
| Archivo | PropΓ³sito |
|---------|-----------|
| `pampar/coder/v2/modelo.py` | PampaRCoderV2 con 52 zonas |
| `pampar/coder/v2/config.py` | ConfigPampaRCoderV2 + presets |
| `pampar/coder/v2/talamo.py` | TΓ‘lamo orquestador con LLAVES + context conv |
| `pampar/coder/v2/llaves.py` | LLAVES lookup tables (INT8, 256 niveles) |
| `pampar/coder/v2/bloques.py` | BloqueTerrritorial + relaciones simbiΓ³ticas |
| `pampar/coder/v2/zonas.py` | DefiniciΓ³n de las 52 zonas de Brodmann |
| `pampar/coder/v2/aprendizaje/` | MetacogniciΓ³n, neuroplasticidad, memoria errores |
| `cloud/runpod/train_cloud.py` | Script de entrenamiento en cloud |
## Convenciones
- **Idioma cΓ³digo**: InglΓ©s
- **Comentarios/docs**: EspaΓ±ol o InglΓ©s segΓΊn contexto
- **Nombres de clases**: EspaΓ±ol para conceptos de dominio (`Talamo`, `Territorio`, `Zona`, `MemoriaErrores`)
- **Variables**: InglΓ©s (`input_ids`, `hidden_states`)
## Stack
- PyTorch 2.x
- SentencePiece (tokenizer BPE, 48K vocab)
- Hugging Face datasets
- RunPod/Cloud para entrenamiento
## Comandos frecuentes
```bash
# Entrenar localmente
python scripts/train.py --config 1.5B --epochs 10
# Entrenar en cloud (RunPod)
ssh root@IP -p PORT
cd /workspace/PAMPAr-Coder
screen -S train
python3 cloud/runpod/train_cloud.py --config 1_5B > training.log 2>&1
# Ver progreso
tail -f training.log
```
## Reglas especΓ­ficas
1. **LLAVES** son patrones regex que clasifican tokens - NUNCA usar ML para esto
2. **Territorios** procesan en paralelo, luego combinan via soporte simbiΓ³tico
3. **CuantizaciΓ³n INT8** (256 niveles) para LLAVES lookup tables
4. **Early Exit** usa percentil 10 per-token (no promedio global)
5. **Gradient checkpointing** siempre activo para modelos >500M params
6. **Tests** en `tests/` con pytest
7. **Ventana de contexto** (32 tokens) usa convoluciΓ³n causal - pad izquierdo