Pega este texto a tu agente (Claude Code, Codex, OpenCode, Hermes o el que uses) y dile «ayúdame a montarlo». Son los pasos para ponerlo en marcha; el porqué de cada pieza está en la guía completa.
Pregunta primero para qué lo quiere. Si su objetivo no necesita algún paso, sáltalo.
Antes de instalar, comprueba lo que ya tiene (versiones, claves, sistema operativo).
Avanza un paso cada vez: explica en una frase qué vas a hacer y deja que el usuario lo ejecute o lo apruebe.
Tras cada paso, comprueba que funcionó antes de seguir. Si falla, para y explica el error.
No inventes comandos ni opciones: si la documentación del proyecto contradice estos pasos, manda la documentación.
Al terminar, haz una prueba real con el objetivo del usuario y dile dónde profundizar.
Pasos de configuración
Comprueba que el entorno usa Python ≥3.10 y <4.0 con pip, según el pyproject.toml oficial. En macOS/Linux crea y activa un entorno con python -m venv .venv y source .venv/bin/activate. Instala el paquete básico documentado:
pip install open-mythos
Guarda el ejemplo completo de Usage en prueba.py:
import torch
from open_mythos.main import OpenMythos, MythosConfig
attn_type = "mla" # or "gqa"
base = {
"vocab_size": 1000,
"dim": 256,
"n_heads": 8,
"max_seq_len": 128,
"max_loop_iters": 4,
"prelude_layers": 1,
"coda_layers": 1,
"n_experts": 8,
"n_shared_experts": 1,
"n_experts_per_tok": 2,
"expert_dim": 64,
"lora_rank": 8,
"attn_type": attn_type,
}
if attn_type == "gqa":
cfg = MythosConfig(**base, n_kv_heads=2)
else:
cfg = MythosConfig(
**base,
n_kv_heads=8,
kv_lora_rank=32,
q_lora_rank=64,
qk_rope_head_dim=16,
qk_nope_head_dim=16,
v_head_dim=16,
)
model = OpenMythos(cfg)
total = sum(p.numel() for p in model.parameters())
print(f"\n[{attn_type.upper()}] Parameters: {total:,}")
ids = torch.randint(0, cfg.vocab_size, (2, 16))
logits = model(ids, n_loops=4)
print(f"[{attn_type.upper()}] Logits shape: {logits.shape}")
out = model.generate(ids, max_new_tokens=8, n_loops=8)
print(f"[{attn_type.upper()}] Generated shape: {out.shape}")
A = model.recurrent.injection.get_A()
rho = torch.linalg.eigvals(A).abs().max().item()
print(
f"[{attn_type.upper()}] Spectral radius ρ(A) = {rho:.4f} (must be < 1)"
)
Ejecuta python prueba.py desde esa carpeta y con el entorno activado. Debe imprimir logits de forma [2, 16, 1000] y generación de forma [2, 24]; son entradas aleatorias y pesos sin entrenar, no una prueba de calidad.
Comprobación
Verifica que las dimensiones de salida encajan con el lote y vocabulario definidos. Distingue esa comprobación de ejecución de cualquier evaluación de calidad.
Si algo falla
Si falla la atención optimizada, revisa las dependencias opcionales. Si falta memoria, reduce el experimento siguiendo la configuración documentada.
Consulta el README oficial para requisitos y variantes de instalación.
Qué es
OpenMythos es una implementación teórica e independiente de una arquitectura de transformer recurrente. El propio README declara que no está afiliada a Anthropic y se basa en investigación pública y especulación.
Para qué te sirve
Cuando investigas cómo variar la profundidad de cómputo sin añadir una capa distinta por paso.
Cuando quieres inspeccionar una implementación de bloques recurrentes, atención y expertos dispersos.
Cómo funciona
El diseño separa preludio, bloque recurrente y salida. La configuración controla iteraciones y componentes de atención y MoE; el ejemplo del README construye un modelo pequeño con entradas de prueba.
Antes de empezar
Necesitas Python ≥3.10 y <4.0 con pip, y PyTorch con los recursos adecuados para el experimento. Flash Attention es opcional y exige CUDA y herramientas de compilación. Instalar el paquete no aporta por sí solo un modelo entrenado de calidad.
Límites y alternativas
No es código filtrado de Claude ni prueba de su arquitectura. Tampoco demuestra equivalencia de rendimiento con un modelo comercial. Frente a usar un modelo ya entrenado, es material para experimentar e investigar.