Patrón Reflection Agent: control de calidad en una pasada

Añade una pasada corta de revisión para encontrar errores obvios antes de responder, sin rehacer en bucle infinito.
En esta página
  1. Esencia Del Patrón
  2. Problema
  3. Solución
  4. Cómo Funciona
  5. En Código Se Ve Así
  6. Cómo Se Ve En Ejecución
  7. Cuándo Encaja - Y Cuándo No
  8. Encaja
  9. No Encaja
  10. Diferencia Frente A Self-Critique
  11. Cuándo Usar Reflection Entre Otros Patrones
  12. Cómo Combinar Con Otros Patrones
  13. Resumen
  14. Ventajas Y Desventajas
  15. FAQ
  16. Qué Sigue

Esencia Del Patrón

Reflection Agent es un patrón donde, después de un borrador, el agente hace una revisión rápida de calidad: detecta problemas obvios (redacción poco clara, contradicciones, afirmaciones demasiado seguras) y los corrige una vez antes de la respuesta final.

Importante: Reflection es una revisión ligera antes de enviar. No es una validación completa por reglas o políticas.

Cuándo usarlo: cuando antes de enviar necesitas una auto-revisión corta y controlada, con una sola revisión.


Reflection no reemplaza el flujo principal de trabajo del agente.

Añade una etapa breve de control:

  • verificar rápido si la respuesta es clara, consistente y no omite advertencias importantes
  • detectar riesgos obvios
  • corregir solo lo necesario
  • terminar sin crear un nuevo ciclo infinito

Patrón Reflection Agent: control de calidad en una pasada

Problema

Imagina que un agente prepara una respuesta para un cliente en una solicitud de alto riesgo.

El borrador es correcto en general, pero tiene riesgos pequeños:

  • formulación demasiado categórica sin base
  • contradicción entre párrafos
  • advertencia faltante
  • límite de aplicabilidad poco claro

Sin una pasada de control, este borrador va directo al usuario.

Los errores más peligrosos suelen no ser groseros, sino "casi invisibles" dentro de un texto aparentemente normal.

Consecuencias:

  • baja la confianza en la respuesta
  • aparece falsa seguridad
  • sube el riesgo de decisiones equivocadas

Ese es el problema: incluso un buen borrador sin revisión puede salir con imprecisiones críticas.

Solución

Reflection añade reflection-policy antes del envío final.

Analogía: es como un sastre antes de entregar un traje. Primero revisa el ajuste y luego hace una corrección precisa. Eso mejora el resultado, pero no convierte el proceso en pruebas infinitas.

Principio clave: una revisión corta de calidad y una corrección, sin "hazlo aún mejor" infinito.

El agente puede proponer cambios, pero la política define:

  • si hace falta revisión
  • qué exactamente está permitido corregir
  • cuándo aplicar stop/escalate

Proceso controlado:

  1. Borrador: generar la primera versión
  2. Revisión: ejecutar una comprobación estructurada
  3. Decisión: ok/revisar/escalar
  4. Revisión: hacer una corrección patch-only según fix_plan
  5. Finalización: devolver el resultado final sin nuevo ciclo

Esto te da:

  • eliminación de riesgos obvios antes del envío
  • mejora notable de calidad con poco overhead
  • control de revisiones dentro de fix_plan
  • protección contra self-edit infinito

Funciona bien si:

  • se aplica no_new_facts
  • los cambios son solo patch-only
  • los casos high-risk se escalan en lugar de reescribirse sin fin

El modelo puede "querer" editar una y otra vez, pero la reflection-policy es la que cierra el proceso dentro de límites previsibles.

Cómo Funciona

Diagram

Regla clave: reflection debe ser acotado.

Eso significa:

  • máximo 1 pasada de revisión
  • máximo 1 pasada de corrección
  • no agregar hechos nuevos
  • la revisión debe ser patch-only y solo dentro de fix_plan
  • escalar si hay problemas high-risk
Flujo completo: Draft → Review → Revise → Finalize

Borrador
El agente crea la respuesta inicial a partir del contexto disponible.

Revisión
Un prompt separado revisa el borrador por puntos simples: claridad, lógica, consistencia interna y afirmaciones demasiado fuertes.

Corrección
Si encuentra problemas, el agente hace una sola corrección usando un fix_plan estructurado.

Finalización
El sistema devuelve resultado o detiene el proceso si el riesgo es demasiado alto.

En Código Se Ve Así

PYTHON
draft = writer.generate(goal, context)

review = reflector.review_once(
    draft=draft,
    rubric=[
        "no_new_facts",
        "preserve_uncertainty",
        "consistency_check",
    ],
)

if review.high_risk:
    return escalate_to_human(review.reason)

if review.ok:
    return draft

revised = writer.revise_once(
    draft=draft,
    fix_plan=review.fix_plan,
    rules=["no_new_facts", "keep_scope"],
)

# opcional: verificar que la revisión se quedó dentro de `fix_plan`
approved = supervisor.review_output_patch(
    original=draft,
    revised=revised,
    allowed_changes=review.fix_plan,
)

return approved

Reflection no debe ejecutarse "hasta que quede perfecto". Una pasada de revisión, una mejora con revise, y una verificación de que la revisión no salió de fix_plan.

Cómo Se Ve En Ejecución

TEXT
Goal: preparar respuesta precisa con redacción correcta de SLA

Draft:
"SLA para todos los clientes es 99.99%."

Review:
- problema: afirmación demasiado categórica
- problema: no especifica nivel de plan
- fix: añadir condición y fuente

Revised:
"El SLA depende del nivel de plan. Para enterprise es 99.99% según la política de soporte."

Ejemplo completo de agente Reflection

PYPython
TSTypeScript · pronto

Cuándo Encaja - Y Cuándo No

Encaja

SituaciónPor Qué Reflection Encaja
La respuesta sale al usuario y necesita revisión extraReflection detecta problemas obvios antes del envío.
Se requiere mejorar calidad sin gran penalización de latenciaUna pasada acotada suele dar mejora visible de calidad.
Existe rúbrica de calidad clara y stop rulesCriterios formalizados hacen la auto-revisión estable y predecible.
Se necesita respuesta final más fiable sin bucle de reescrituraReflection añade control sin disparar rehacer infinito.

No Encaja

SituaciónPor Qué Reflection No Encaja
Latencia críticamente bajaIncluso una pasada adicional puede volver tardía la respuesta.
No hay rúbrica de calidad claraSin criterios, reflection se vuelve caótico y no mejora de forma estable.
Se necesita validación externa de hechos con tools o personasReflection no reemplaza fact-checking con fuentes externas o revisión manual.

Porque reflection añade otra pasada de generación y aumenta tiempo y costo de respuesta.

Diferencia Frente A Self-Critique

ReflectionSelf-Critique
ObjetivoDetectar problemas obvios antes de enviarRevisar respuesta con reglas más estrictas y reescribir si hace falta
ProfundidadChequeo rápido: claridad, lógica y sin errores obviosSuele ser crítica y revisión más estricta
Tipo de resultadook/problemas/plan de correcciónriesgos detallados + cambios obligatorios + orientación a diff
RiesgoConvertirse en segundo ciclo sin límitesReescritura excesiva y proceso más caro

Reflection es una pasada de control rápida y acotada. Self-Critique es una pasada más profunda con reescritura.

Cuándo Usar Reflection Entre Otros Patrones

Usa Reflection cuando necesitas verificar rápido la respuesta antes de enviarla: que sea clara, lógica y sin errores obvios.

Prueba corta:

  • si necesitas "revisar breve y corregir antes del final" -> Reflection
  • si necesitas "criticar a fondo por checklist y reescribir" -> Self-Critique Agent
Comparación con otros patrones y ejemplos

Chuleta rápida:

Si la tarea se ve así...Usa
Se necesita una revisión corta antes de la respuesta finalReflection Agent
Se necesita crítica profunda por criterios y reescritura de respuestaSelf-Critique Agent
Hay que recuperar proceso tras timeout, exception o caída de toolFallback-Recovery Agent
Se necesitan checks de policy estrictos antes de acción riesgosaGuarded-Policy Agent

Ejemplos:

Reflection: "Antes de la respuesta final, revisa rápido lógica, completitud y errores obvios".

Self-Critique: "Evalúa la respuesta por checklist (precisión, completitud, riesgos), luego reescribe".

Fallback-Recovery: "Si API no responde, haz retry -> fuente fallback -> escalación".

Guarded-Policy: "Antes de enviar datos al exterior, revisa policy: si esto está permitido".

Cómo Combinar Con Otros Patrones

  • Reflection + RAG: Reflection verifica que las conclusiones realmente coincidan con las fuentes recuperadas.
  • Reflection + Supervisor: conclusiones high-risk no se corrigen automáticamente, se envían a aprobación humana.
  • Reflection + ReAct: después de una serie de pasos ReAct, el agente hace una revisión final antes de responder.

Resumen

En resumen

Reflection Agent:

  • Hace una auto-revisión de control
  • Corrige la respuesta una vez
  • No agrega hechos nuevos
  • Reduce riesgo de errores obvios en producción

Ventajas Y Desventajas

Ventajas

revisa la respuesta antes de enviar

corrige errores obvios

mejora claridad y estructura

ayuda a mantener formato requerido

Desventajas

añade un paso más y latencia

consume más tokens

sin límites puede complicar la respuesta de más

FAQ

Q: ¿Reflection puede reemplazar fact-checking y tests?
A: No. Es una capa adicional de calidad. Fact-checking, validación y controles de policy siguen siendo necesarios aparte.

Q: ¿Por qué limitar cantidad de pasadas?
A: Si no, reflection se convierte en segundo ciclo: suben latencia, costo y riesgo de nuevos errores.

Q: ¿Qué hacer si reflection encuentra un problema high-risk?
A: No continuar automáticamente. Parar el proceso o escalar a revisión humana / policy de Supervisor.

Qué Sigue

Reflection añade control de calidad acotado antes de la respuesta final.

¿Qué hacer cuando necesitas crítica más estricta y un proceso de revisión con reglas estructuradas de cambio?

⏱️ 10 min de lecturaActualizado Mar, 2026Dificultad: ★★★
Continuación práctica

Ejemplos de implementación del patrón

Continúa con la implementación usando proyectos de ejemplo.

Integrado: control en producciónOnceOnly
Guardrails para agentes con tool-calling
Lleva este patrón a producción con gobernanza:
  • Presupuestos (pasos / topes de gasto)
  • Permisos de herramientas (allowlist / blocklist)
  • Kill switch y parada por incidente
  • Idempotencia y dedupe
  • Audit logs y trazabilidad
Mención integrada: OnceOnly es una capa de control para sistemas de agentes en producción.
Autor

Esta documentación está curada y mantenida por ingenieros que despliegan agentes de IA en producción.

El contenido es asistido por IA, con responsabilidad editorial humana sobre la exactitud, la claridad y la relevancia en producción.

Los patrones y las recomendaciones se basan en post-mortems, modos de fallo e incidentes operativos en sistemas desplegados, incluido durante el desarrollo y la operación de infraestructura de gobernanza para agentes en OnceOnly.