Limita la revisión adversarial a tres ciclos
Deja de dejar que tu IA se revise a sí misma para siempre.
La autorrevisión adversarial, en la que un agente critica su propia salida y luego la corrige, es una técnica genuinamente buena. Detecta puntos ciegos que una sola pasada omite. Pero un bucle sin fin no tiene un punto de parada natural, así que sigue corriendo mucho después de que los retornos se aplanaron, volviendo a sacar los mismos hallazgos y quemando tokens mientras confundes el movimiento con el progreso.
Por qué un bucle sin límite se estanca
Cada ciclo de revisión tiene rendimientos decrecientes. La primera pasada encuentra los problemas estructurales. La segunda encuentra los casos límite que introdujo la corrección. Para la tercera, ya estás bajando a detalles de estilo y opiniones que se vuelven a discutir. Sin un límite, el agente no tiene criterio para decir "listo", así que o repite hasta que lo interrumpes o declara victoria de forma arbitraria. La revisión interminable se siente rigurosa pero en realidad solo pospone la decisión de publicar.
El mecanismo: tres ciclos, con salidas tempranas
Fija un techo estricto y dos condiciones de parada temprana.
Adversarial review loop:
cycle = 1
while cycle <= 3:
findings = review(artifact) # find what's wrong
if only_trivial(findings): break # early exit 1
if human_says("ship it"): break # early exit 2
artifact = revise(artifact, findings)
cycle += 1
- Techo estricto en tres ciclos. Tres rondas bastan para sacar los defectos reales; más allá de eso estás puliendo, no corrigiendo.
- Para temprano ante hallazgos triviales. Si un ciclo devuelve solo detalles cosméticos, revisar de nuevo no vale el viaje de ida y vuelta.
- Para en cuanto digas "publícalo". El juicio humano anula el bucle. El límite es un techo, no una cuota que debas llenar.
Qué significan los hallazgos que sobreviven
Si aún quedan problemas reales tras tres rondas, eso no es señal de repetir una cuarta vez. Es información sobre el artefacto mismo: el problema es más difícil o ambiguo de lo que un bucle de revisión puede resolver. Haz una de dos cosas.
| Situación | Respuesta |
|---|---|
| Quedan detalles triviales | Detente y publica |
| Un problema difícil sobrevive tres rondas | Escala a un humano o a un modelo más fuerte |
| El artefacto sigue fallando en general | Descompón en piezas más pequeñas y revisa cada una |
Repetir el bucle solo vuelve a correr el mismo proceso limitado contra el mismo problema difícil.
Movidas avanzadas
- Registra los hallazgos por ciclo. Si el ciclo tres saca problemas que el ciclo uno ya nombró, tu paso de corrección no los está arreglando de verdad: escala.
- Haz explícito lo "trivial". Define de antemano qué cuenta como hallazgo bloqueante versus un detalle, para que la salida temprana no sea un juicio que el agente falle.
- Separa los contextos de revisor y autor. Un agente revisor nuevo en cada ciclo evita que el modelo defienda sus propias correcciones anteriores.
- Trata el límite como disparador de descomposición. Llegar a tres rondas sin convergencia suele significar que la unidad de trabajo es demasiado grande.
Recursos
- Anthropic — Construir agentes efectivos
- OpenAI — Buenas prácticas de razonamiento y autocrítica
- Yao et al. — ReAct: razonar y actuar en modelos de lenguaje
- Madaan et al. — Self-Refine: refinamiento iterativo con auto-retroalimentación
¿Desarrollas sistemas de IA o en la nube? Yeda AI audita y refuerza pipelines de LLM y contenedores en producción. Hablemos · Lee el blog