Evaluación continua: asegurando que tu modelo no empeore con el tiempo
Inteligencia Artificial · Serie LLMs y n8n
Evaluación continua: asegurando que tu modelo no empeore con el tiempo
La calidad de un sistema con IA no es un logro único: es una disciplina. Con evaluación continua detectas regresiones, controlas costos y promueves solo mejoras reales.
En el post anterior vimos cómo observar tu sistema en producción. Ahora daremos el paso que evita “mejoras” que empeoran las cosas: evaluación continua (offline y online), versionada y automatizada.
¿Qué es la evaluación continua?
Es un ciclo repetible que compara tu pipeline actual contra un baseline usando datasets representativos y métricas acordadas. Si la variante nueva no gana en calidad sin romper seguridad ni costos, no se promociona.
Datasets que sí sirven (y cómo versionarlos)
- Golden set (post #11): preguntas/entradas con criterio de evaluación claro.
- Shadow data: muestras reales anonimizadas de producción.
- Casos borde: longitudes extremas, formatos raros, idiomas, fechas y números críticos.
- Anti-regresión: colecciona fallos históricos y conviértelos en pruebas permanentes.
// Esquema mínimo (JSONL)
{"id":"q-0001","input":"...","expected":{"type":"facts","rules":["citar","json_valido"]},"weight":1.0}
{"id":"q-0002","input":"...","expected":{"type":"gen","rubric":{"claridad":5,"formato":5}},"weight":0.8}
Métricas: calidad, seguridad y costo (las tres a la vez)
- Calidad: win-rate A/B, exact match/F1 por campo, groundedness (% con cita válida), % JSON válido, tasa de abstención sana.
- Seguridad: violaciones de política (0 es el objetivo), fuga de PII/secretos, ejecuciones de herramientas fuera de whitelist.
- Operación: costo por request, latencia p95, tokens in/out, tamaño de contexto.
Decisión: “Promover solo si win-rate ≥ +3pts, costo ≤ baseline y 0 regresiones de seguridad”.
Offline vs. Online
- Offline: rápido, barato, determinista; compara variantes contra tu golden/shadow set.
- Online: canary A/B en producción; mide impacto real (CSAT, resolución, conversión).
// Veredicto de corrida offline
{
"variant": "pipeline.v7",
"baseline": "pipeline.v6",
"win_rate": 0.58,
"json_valid": 0.97,
"groundedness": 0.81,
"cost_delta": -0.06,
"policy_violations": 0
}
Detectar “drift” (cuando todo cambia por debajo)
- Entrada: distribución de longitudes/idiomas cambia.
- Recuperación: baja el recall@K por corpus/ingesta/permiso.
- Modelo: proveedor actualiza sin avisar → variaciones de calidad/costo.
Mitiga con checks diarios y alertas si groundedness o % JSON válido caen bajo umbral.
Eval gates en CI/CD (no pasa quien no gana)
- Pre-merge: corre batería offline sobre golden set.
- Gate: bloquea si no mejora calidad o rompe seguridad/costos.
- Canary: 5–10% del tráfico con monitoreo reforzado (post #19).
- Promoción: etiqueta
pipeline.vN.prodsi supera umbrales online.
Micro-workflow en n8n: “Evaluación continua nocturna”
- Cron (diario) → dispara el flujo.
- HTTP → descarga datasets (golden + shadow) versión actual.
- Split In Batches → ejecuta
pipeline.candidateypipeline.baseline. - Function (judge) → evalúa con rúbrica y calcula métricas (win-rate, groundedness, json válido, costo).
- IF → si candidate ≥ umbral y sin violaciones → marca “ready for canary”.
- Database → persiste resultados por
pipeline_version. - Notifier → envía reporte y diff de calidad/costo.
Tips para Laravel/PHP
- Esquema:
eval_runs(id, pipeline, baseline, win_rate, groundedness, json_valid, cost_delta, policy_viol, created_at) eval_cases(run_id, case_id, verdict, cost_usd, lat_ms, tokens_in, tokens_out) - Jobs:
EvalRunJob(columna eval),EvalCaseJob(por caso, paralelizable). - Endpoint CI:
POST /eval/runsque acepte{pipeline, baseline, dataset_id}y devuelva veredicto. - Rutas seguras: rate limit + tokens; nunca expongas prompts/datasets sin auth.
- Reportes: genera Markdown/HTML con tablas y anexos de fallos (top-10 casos con mayor impacto).
Anti-patrones frecuentes
- “Funciona en mi demo” → sin golden set ni gate, se cuela a producción y regresa el lunes.
- Medir solo gusto humano → necesitas métricas objetivas y rúbricas.
- Ignorar costo/latencia → “mejor calidad” que duplica gastos.
- Datasets estáticos por meses → envejecen; rota y añade fallos reales.
Conclusión
La evaluación continua convierte cambios arriesgados en mejoras controladas. Con datasets versionados, gates en CI/CD y canaries vigilados, tu asistente evoluciona sin sorpresas.
← Anterior: Observabilidad para LLMs: cómo monitorear lo que ocurre bajo el capó
Artículos Relacionados
Continúa explorando contenido similar.
Cómo evolucionaron los sistemas de imágenes en medicina
Leer artículo
Automatización de procesos clínicos: qué tareas dejarán de hacer los médicos
Leer artículo
El futuro es híbrido: medicina humana + inteligencia artificial
Leer artículo
Hospitales inteligentes: cómo será la atención en 2030
Leer artículo
PACS y RIS: el sistema nervioso de la radiología moderna
Leer artículo
Evaluación continua: asegurando que tu modelo no empeore con el tiempo
Leer artículo
La incursión de la Impresión 3D en la creación de implantes médicos
Leer artículo
Ética, privacidad y consentimiento en la medicina digital
Leer artículo
El rol del médico en el mundo automatizado
Leer artículo
Cómo evaluar prompts sin sesgos (y elegir el mejor)
Leer artículo
Cómo la IA puede predecir infartos, cáncer y Alzheimer antes de que aparezcan
Leer artículo
JSON perfecto o nada: cómo controlar la salida de tu LLM
Leer artículo
El nacimiento del ecosistema de salud digital: de registros en papel a la nube
Leer artículo