30 puntos por ragingwind 13 일 전 | 2 comentarios | Compartir por WhatsApp

Resumen en una línea

Probar una idea → medir → si mejora, conservarla; si no, descartarla → repetir para siempre.

pi-autoresearch es una extensión del agente de código con IA para terminal pi, y un proyecto que generaliza el concepto de autoresearch de Karpathy para que pueda aplicarse a cualquier problema de optimización.

Primero, ¿qué es pi?

pi es un agente de código con IA que funciona en la terminal. A diferencia de herramientas basadas en IDE como Cursor o Windsurf, está diseñado de forma nativa para terminal, por lo que puede usarse tal cual en entornos con acceso por SSH o en servidores headless.

Las características centrales de pi son su sistema de Extension y Skill:

  • Extension — añade nuevas herramientas (tools) al agente. Además de herramientas básicas como leer/escribir archivos o ejecutar comandos, se pueden insertar herramientas personalizadas como si fueran plugins.
  • Skill — le enseña patrones de trabajo específicos. Define flujos del tipo: “en esta situación, usa estas herramientas en este orden”.

Con una sola línea, pi install <github-url>, se pueden instalar Extension y Skill creadas por la comunidad, así que la capacidad del agente se puede ampliar libremente. pi-autoresearch está construido precisamente sobre este sistema como un paquete de Extension + Skill.

Contexto: autoresearch de Karpathy

En marzo de 2026, la idea que Karpathy presentó con autoresearch era simple:

  • Darle a un agente de IA un único código de entrenamiento de LLM (train.py)
  • Hacer que modifique el código y lo entrene durante 5 minutos
  • Si el loss de validación mejora, keep; si no, discard
  • Repetir toda la noche → al despertar, tener el registro de experimentos + un mejor modelo

Con un diseño extremadamente minimalista (3 archivos, 1 GPU, 1 métrica), era un proyecto enfocado en demostrar el concepto de que “el agente realiza de forma autónoma el papel de investigador”. Pero tenía una limitación de origen: solo funcionaba con GPU de NVIDIA y solo podía aplicarse al entrenamiento de LLM.

Qué hace diferente a pi-autoresearch

1. Sin limitación de dominio

No solo sirve para el loss del entrenamiento de LLM; cualquier cosa medible puede convertirse en objetivo de optimización: velocidad de ejecución de tests, tamaño del bundle, tiempo de build, puntaje de Lighthouse, etc. Esto es posible gracias a la estructura separada de pi entre “infraestructura (Extension)” y “conocimiento del dominio (Skill)”.

  • Velocidad de tests — seconds ↓ — pnpm test
  • Tamaño del bundle — KB ↓ — pnpm build && du -sb dist
  • Entrenamiento de LLM — val_bpb ↓ — uv run train.py
  • Lighthouse — perf score ↑ — lighthouse --output=json

2. No pierde la memoria aunque se reinicie

Los agentes de IA tienen límites de ventana de contexto, así que durante experimentos largos el contexto puede reiniciarse o el proceso puede caerse. pi-autoresearch preserva por completo el estado de la sesión con dos archivos:

  • autoresearch.jsonl — registro append-only de todos los experimentos
  • autoresearch.md — resumen del objetivo, lo intentado, callejones sin salida y logros clave

Incluso si entra en acción un agente nuevo sin ninguna memoria, le basta con leer estos dos archivos para retomar exactamente la sesión anterior. En la práctica, es un patrón de “memoria externa para agentes”.

3. Distingue mejoras reales del ruido

Los benchmarks no siempre dan el mismo resultado aunque se ejecute exactamente el mismo código. Tras 3 o más ejecuciones, calcula automáticamente un confidence score basado en MAD (Median Absolute Deviation) para mostrar visualmente si la mejora es real o solo ruido.

  • 🟢 ≥ 2.0× — alta probabilidad de que la mejora sea real
  • 🟡 1.0–2.0× — por encima del ruido, pero leve
  • 🔴 < 1.0× — dentro del rango de ruido, se recomienda volver a ejecutar

Eso sí, no descarta experimentos de forma automática; la decisión final se delega al agente.

4. Evita que la optimización rompa la consistencia

Si existe autoresearch.checks.sh, después de que el benchmark pase, se ejecutan automáticamente validaciones de consistencia como tests, type check y lint. Así se bloquea a nivel de sistema la trampa típica de “lo hice más rápido, pero rompí los tests”.

5. Organiza los resultados en PRs limpias

Cuando termina el experimento, la skill autoresearch-finalize agrupa los experimentos marcados como keep en changesets lógicos y los separa en ramas de git independientes. Como garantiza que no se superpongan archivos, cada rama puede revisarse y mergearse por separado.

Flujo de trabajo

1. /autoresearch optimize unit test runtime  
   → configurar objetivo, comando y métrica → medir baseline → iniciar bucle  
  
2. Bucle autónomo (repetición infinita)  
   → modificar código → git commit → benchmark → validación de consistencia  
   → ¿mejora? keep / ¿empeora? revert → registrar en .jsonl → repetir  
  
3. /skill:autoresearch-finalize  
   → organizar los experimentos keep en ramas independientes → revisar y hacer merge  

Control de costos

Como el bucle autónomo consume tokens de forma continua, ofrece dos guardrails: configuración de límite para la API key y maxIterations (número máximo de experimentos por sesión).

Por qué vale la pena prestarle atención

Si autoresearch de Karpathy fue una interesante prueba de concepto de que “la IA experimenta por sí sola”, pi-autoresearch es un intento de convertir eso en una herramienta de propósito general utilizable en entornos reales de desarrollo. Además, al estar construido sobre la arquitectura de Extension/Skill de pi, puede integrarse de inmediato al flujo de trabajo existente de pi con una sola línea de instalación, lo que reduce la barrera de entrada.

Resulta especialmente interesante cómo aborda de forma sistemática problemas del mundo real como la preservación del estado de la sesión, la validación estadística de confianza, la protección de la consistencia y un flujo de trabajo nativo de Git. Queda por ver si realmente se vuelve viable eso de dejarlo corriendo de noche y revisar los PRs por la mañana.

2 comentarios

 
tensun 12 일 전

Igual, pi.

 
unqocn 13 일 전

Me gusta muchísimo pi