Evaluation Harness para AI Agents: El Sistema que Mide Si Tu Agent Realmente Funciona

Evaluation Harness para AI Agents: El Sistema que Mide Si Tu Agent Realmente Funciona

Programming· 7 min read

El 95% de Tus AI Agents No Saben Si Están Funcionando Bien

Tienes un agent en producción. Responde requests. Devuelve outputs. Parece que funciona.

Pero no tienes forma de saber si la mitad de sus respuestas son basura.

La mayoría de developers despliega AI agents sin evaluación sistemática. Confían en "ya lo veremos si falla". Confían en feedback de usuarios. Confían en el número de errores en los logs.

El problema real no es que los agents fallen. Es que no estás midiendo si funcionan.

La autonomía total no es el objetivo. La visibilidad total sí lo es.

Y los sistemas que alcanzan 95% de correctness en error recovery comparten algo que la mayoría ignora: construyen evaluation harnesses antes de construir agents.

Por Qué Tus Métricas Actuales Son Inútiles

Las métricas que la mayoría usa para evaluar AI agents son papel mojado.

"Mensajes procesados" no dice nada sobre calidad. "Tiempo de respuesta" no dice nada sobre correctness. "Número de errores" no dice nada sobre si el agent está generando contenido correcto o incorrecto pero sin crashear.

El problema es que los AI agents no fallan como software tradicional. Un agent puede completar una tarea sin errores en los logs y entregar una respuesta completamente incorrecta. El sistema no lanza excepciones. No hay stack trace. Solo hay un output malo que el usuario recibe y asume que es válido.

Métrica tradicional: Error rate

→ Solo mide crashes, no quality

Métrica tradicional: Response time

→ Un agent lento puede ser correcto, uno rápido puede ser inútil

Métrica tradicional: User complaints

→ Feedback lagging que llega cuando el daño ya está hecho

Lo que necesitas: Correctness rate medido sistemáticamente

→ El porcentaje de outputs que superan validación específica del dominio

Los evaluation harnesses resuelven esto. Son sistemas diseñados para medir accuracy, reliability y cost de forma continua, no retrospectively.

El Framework de Evaluación Estratificada (FEE)

Necesitas un sistema que evalúe tu agent antes de que los usuarios lo usen. Que mida correctness contra ground truth conocido. Que capture failures donde ocurren, no después de que causen daño.

El Patrón de las Tres Capas (FEE) descompone la evaluación en:

Capa 1: Unit Testing de Prompts

Test individuales para cada task type que el agent debe manejar. Inputs conocidos, outputs esperados, validation rules específicas del dominio.

Capa 2: Integration Testing del Pipeline

El agent completo integrado con sus herramientas. Verifica que las chains de herramientas funcionen, que el routing entre steps sea correcto, que los outputs de una step alimenten correctamente la siguiente.

Capa 3: Shadow Mode Production

El agent real procesando requests reales en paralelo. Sin mostrar outputs al usuario todavía. Solo midiendo. Comparando contra baseline. Capturando divergences.

Cada capa tiene su propia métrica target. Unit testing busca 98% de task completion. Integration testing busca 95% de pipeline integrity. Shadow mode busca detectar regressions antes de queimpacten usuarios.

Step 1: Define Tu Taxonomy de Task Types

Antes de escribir un solo test, documenta qué tipos de tareas ejecutará tu agent. Esta taxonomy es tu ground truth.

No todos los tasks son iguales. Un agent que responde FAQs necesita validación diferente a uno que ejecuta transacciones o genera código.

[@portabletext/react] Unknown block type "code", specify a component for it in the `components.types` prop

Cada task type tiene thresholds diferentes porque el coste de failure varía. refund_processing con 90% de accuracy es inaceptable. faq_response con 90% es perfectamente válido.

Step 2: Construye Tu Evaluation Harness

Un evaluation harness es un sistema que corre tests automáticamente, mide resultados contra baselines, y genera reports de correctness, reliability y cost.

[@portabletext/react] Unknown block type "code", specify a component for it in the `components.types` prop

Este harness no es opcional. Es la diferencia entre operar a ciegas y tener visibility real.

Step 3: Implementa Shadow Mode

Shadow mode te permite evaluar tu agent contra traffic real sin impactar usuarios. El agent procesa requests en paralelo, tú comparas outputs contra tu baseline sin mostrar nada externally.

[@portabletext/react] Unknown block type "code", specify a component for it in the `components.types` prop

Shadow mode te descubre edge cases que no anticipaste en testing. Traffic real revela failures que tu test suite no cubre.

Step 4: Configura Alerting Basado en Métricas

Los números sin acción son vanity metrics. Configura alerts que se activen cuando las métricas crucen thresholds.

[@portabletext/react] Unknown block type "code", specify a component for it in the `components.types` prop

No alertes sobre todo. Alertas sobre lo que importa: correctness en tasks críticos, latencia que degrada UX, anomalías de cost que indican problems.

El Costo Oculto de No Evaluar

Cada día que operas sin evaluation harness es un día de technical debt acumulándose.

Los problems no detectados se convierten en user complaints. Las user complaints se convierten en churn. El churn se convierte en revenue impact.

Además, sin métricas baseline, no puedes hacer cambios con confianza. Cada modification al agent es un acto de fe. "¿Mejorará esto o lo romperá?" No lo sabes hasta que un usuario te lo reporta.

Los developers que construyen evaluation harnesses desde day one iteran más rápido. Tienen feedback loop corto. Cambian el prompt, corren el harness, ven el impacto en correctness en minutes. No weeks.

Los developers que no lo hacen están ciegos. Y operar ciego en producción es la forma más cara de trabajar.

Lo Que Realmente Necesitas Medir

No todas las métricas importan igual. Estas son las que determinan si tu agent está funcionando:

Correctness Rate por Task Type

El percentage de outputs que superan validation para cada task type. Este es tu primary metric. Si refund_processing está por debajo de 99%, tienes un problem.

Failure Transformation Rate

El percentage de failures que tu system recupera automáticamente versus los que escalan a intervención humana. Un buen agent transforma más failures que los que reporta.

Recovery Time

Cuánto tarda el agent en detectar un failure y ejecutar su recovery path. Target: menos de 30 segundos para failures predecibles.

Cost per Task

El cost computacional de ejecutar cada task type. Tasks complejos cuestan más. Si el cost por request excede el value entregado, tienes un problem de unit economics.

Latency Distribution

No midas latency promedio. Mide p50, p95 y p99. El p99 es lo que tus usuarios experimentan en worst case. Si el p99 es inaceptable, tu UX está broken.

El Patrón de Intervención Estratégica

Los systems que alcanzan 95% de correctness no lo logran siendo autónomos al 100%. Lo logran sabiendo exactamente dónde necesitan intervención humana y automatizando todo lo demás.

El Patrón de Intervención Estratégica define tres categorías de tasks:

Tasks Automatizados al 100%

Tareas de baja complejidad y bajo impacto donde el agent puede operar sin supervisión. FAQ responses, formatting de datos, simple routing.

Tasks con Validación Automática

Tareas donde el agent ejecuta pero un sistema automatizado valida el output antes de enviarlo. Si la validación falla, se enroutea a revisión humana.

Tasks que Requieren Human-in-the-Loop

Tareas de alto impacto donde cada decisión necesita validación humana. Transactions financieras, escalaciones complejas, contenido sensible.

La clave es que la intervención humana no es un признак de debilidad del system. Es un компонент diseñado. Y cuando está bien diseñada, permite que el agent opere en 95% de casos de forma autónoma mientras humans validan el 5% crítico.

Resumen de Implementación

Construir evaluation harnesses efectivos requiere cuatro elementos:

taxonomy clara de task types con thresholds específicos

harness automatizado que mide correctness contra ground truth

shadow mode para validar contra traffic real

alerting basado en métricas, no en logs

El 95% de correctness que los systems híbridos alcanzan no es un techo. Es un target. Y lo consigues no con modelos más potentes, sino con mejor evaluación.

Cada intervention humana que tu system captura es un insight que mejora el agent. Cada test que ejecutas antes de desplegar es un failure potencial evitado.

Construye el harness primero. Despliega el agent después.

Tienes visibility o tienes problemas que no ves venir.

Artículos relacionados

---

¿Quieres recibir contenido como este cada semana? Suscríbete a mi newsletter

Brian Mena

Brian Mena

Software engineer building profitable digital products: SaaS, directories and AI agents. All from scratch, all in production.

LinkedIn