Z.AI Research Lab Open Source

MythosForge

Laboratorio de investigación sobre Recurrent-Depth Transformers: razonamiento latente, MoE, atención MLA/GQA y halting adaptativo.

OpenMythos se presenta como reconstrucción teórica independiente, no afiliada a Anthropic. Este laboratorio no afirma equivalencia con ningún sistema propietario.
Arquitectura

Flujo Operativo

La profundidad útil no viene de apilar capas distintas, sino de aplicar varias veces el mismo bloque compartido durante un único forward pass.

Input Tokens
PRELUDE Bloque Transformer denso · FFN SwiGLU · 1× ejecución
h₀
RECURRENT BLOCK ×N TransformerBlock compartido · Loop × max_loop_iters
MLA / GQAAtención conmutable
MoERouted + Shared Experts
LoRAAdaptador por iteración
LTIInyección estable
ACT — Adaptive Computation Time (Halting por posición)
LOOP
h_T
CODA Bloque Transformer denso · FFN SwiGLU · Proyección final
RMSNorm
LM Head
Output Logits
Regla Recurrente: h(t+1) = A · ht + B · e + Transformer(ht, e) — El razonamiento intermedio se acumula en el estado oculto sin expresarse como tokens visibles.
Componentes

Piezas Arquitectónicas

Cada componente seleccionado por coherencia con la literatura más reciente en transformers recurrentes y razonamiento latente.

Atención Conmutable MLA / GQA

GQA reduce caché KV compartiendo pares K/V. MLA comprime la ruta KV en un latente de bajo rango. Conmutable vía configuración.

MoE en Bloque Recurrente

Routed experts top-K + shared experts siempre activos. Hereda de DeepSeekMoE la segmentación fina y aislamiento de expertos compartidos.

Inyección LTI Estable

Estabilidad espectral con A ∈ (0,1) por parametrización log-space. Parche numérico incluido para evitar saturación float32 en el borde.

ACT — Halting Adaptativo

Adaptive Computation Time aprende probabilidad de halting por posición. Algunas posiciones dejan de acumular actualizaciones antes que otras.

Adaptador LoRA por Iteración

Cada iteración modifica su comportamiento con un adaptador LoRA dependiente de la iteración. Enriquece sin multiplicar parámetros estáticos.

Prelude + Recurrent + Coda

Arquitectura de tres etapas: bloques densos de entrada y salida ejecutados una vez, con bloque recurrente compartido aplicado N veces.

Validación

Pruebas Ejecutadas

Validación práctica en CPU con PyTorch 2.10.0+cpu. Configuraciones pequeñas verificadas.

Chequeos de Inferencia

Import y construcción del modelo
Forward mínimo con GQA
Forward mínimo con MLA
Generación mínima autoregresiva
Matriz A de LTI en rango estable
test_spectral_radius_stable_after_large_grad_stepFallo numérico float32 en borde 1.0 — parche disponible

Estado del Repositorio Original

Repositorio públicoSI
Licencia MITSI
Implementación PyTorchSI
Ejemplo mínimo de usoSI
Pruebas automatizadasSI
Pesos preentrenadosNO
Tokenizer propioNO
Pipeline entrenamiento completoNO
Equivalencia Claude MythosNO
Hallazgo: test_spectral_radius_stable_after_large_grad_step falla por redondeo float32. Parche propuesto resuelve sin alterar la arquitectura.
Guía Rápida

Replicar y Ejecutar Hoy

Procedimiento mínimo sin adornos ni suposiciones sobre lo que el repositorio todavía no ofrece.

1. Preparación del entorno

git clone https://github.com/kyegomez/OpenMythos.git
cd OpenMythos
python -m venv .venv
source .venv/bin/activate
python -m pip install -U pip
pip install -r requirements.txt

2. Arranque rápido

python example.py

# o con verificación compacta:
python openmythos_quickstart.py

3. Validación

pytest -q

# Excluir fallo numérico conocido:
pytest -q -k "not test_spectral_radius_stable_after_large_grad_step"

4. Qué debes esperar

El modelo construye embeddings, RoPE, prelude, recurrente, coda y LM head sin error.
El forward devuelve logits con forma (B, T, vocab_size).
generate añade tokens y reutiliza caché KV correctamente.
La variante MLA es más pesada conceptualmente, pero funcional en configuración pequeña.
La matriz A de LTI permanece en rango estable bajo condiciones normales.
Archivos

Recursos Descargables

Guía técnica, script de verificación y parche de estabilidad LTI.

Hoja de Ruta

De Prototipo a Banco de Pruebas

Demostrar overfitting, pérdida estable y comportamiento predecible al aumentar n_loops antes de escalar.

FASE 0Completada

Congelar versión

Fork del repositorio, etiqueta de commit y requirements-lock para reproducibilidad total.

FASE 1Completada

Corregir estabilidad operativa

Aplicar parche LTI para evitar que A alcance exactamente 1.0 en float32.

FASE 2

Añadir empaquetado

pyproject.toml, instalación editable y CLI simple.

FASE 3

Tokenizer y datos

Definir tokenizer, dataset y formato causal LM.

FASE 4

Entrenamiento mínimo

Script train.py con warmup, clipping, checkpoints y logging.

FASE 5

Benchmarks

Curvas vs loops, comparación GQA vs MLA, ablations MoE/LoRA/ACT.

FASE 6

Publicación y comparativa

Comparativas contra transformers densos de igual presupuesto de FLOPs.

Contribuir

Únete al Laboratorio

MythosForge es un proyecto abierto. Hay muchas formas de colaborar, desde experimentos hasta documentación.

API REST

API Real del Proyecto

Servidor FastAPI con datos reales, OpenAPI automático y endpoint de inferencia con OpenMythos.

Health Check

GET /api/v1/health

Estado del servicio, versión, disponibilidad de PyTorch y OpenMythos.

Datos del Proyecto

GET /api/v1/architecture
GET /api/v1/components
GET /api/v1/validation
GET /api/v1/roadmap
GET /api/v1/references

Todos los datos del sitio servidos como JSON estructurado con schemas Pydantic.

Inferencia Real

POST /api/v1/inference
{
  "prompt": "...",
  "attn_type": "gqa",
  "n_loops": 4
}

Genera texto con el modelo OpenMythos real. Requiere PyTorch instalado.

OpenAPI Docs

/docs  → Swagger UI
/redoc → ReDoc
/openapi.json → Schema

Documentación interactiva generada automáticamente desde los schemas Pydantic.

Arranque rápido: pip install -r api/requirements.txt && python -m api
Bibliografía

Referencias Académicas

Trabajos clave que sostienen la hipótesis técnica.