Graph Engineering
Sistemas multiagente predecibles, observables y listos para escalar
Federico Catinello
Head of Delivery · Ingenia
Speaker

Quién les habla

Federico Catinello
Head of Delivery · Ingenia

Más de una década en Arquitectura de Software, desde soluciones de alto nivel hasta plataforma e infraestructura. Docente universitario, divulgador tecnológico y speaker de ARQConf.

Ing. en Sistemas de Información
UTN
Profesor
ITBA
Head of Delivery
Ingenia
Podcast sobre IA, con colegas
IA en un Sorboahora
El problema

Local vs. producción

En local
Funciona ✓
  • La demo sale perfecta
  • Un caso a la vez
  • Vos mirando cada paso
En producción
No tanto…
  • Respuestas inconsistentes
  • Pasos que esperan sin motivo
  • Costos que suben y nadie sabe por qué falló
El problema casi nunca es el modelo. Es la forma del sistema que lo rodea.
💬 Al chat: ¿qué se les rompió primero al pasar a producción?
Agenda

Lo que vamos a ver

01Harness vs Loops vs Graph
02Cuándo conviene uno o varios agentes
03Patrones de orquestación: supervisor, routing, paralelización
04Estado compartido, control de errores y human-in-the-loop
05Casos reales y lecciones aprendidas
01
Harness vs Loops vs Graph
El modelo es solo un nodo
01 · Harness vs Loops vs Graph

La escalera

Los nombres cambian. La habilidad es la misma: diseñar sistemas confiables alrededor de modelos no confiables.

Promptla instrucción Contextlo que el modelo ve Harnessel entorno del modelo Loopuna unidad, con feedback Graphel trabajo completo
Fuente: 0xwhrrari, “Graph Engineering: How to Build AI Agent Systems That Don’t Break at Scale” (ago. 2026) · Khairallah (jul. 2026)
01 · Harness vs Loops vs Graph

Tres capas alrededor del modelo

03 Graph ¿Quién hace cada parte? REPARTIR 02 Loop ¿Cuándo terminó de verdad? CONVERGER 01 Harness ¿Qué puede hacer el agente? CONTENER
Agent = Model + Harness
+13.7

puntos en Terminal Bench 2.0 con el mismo modelo, cambiando solo el harness.

“Terminado es una afirmación, no una prueba.”Addy Osmani · Loop Engineering
Fuentes: Böckeler, martinfowler.com (abr. 2026) · LangChain Blog (feb. 2026) · Osmani, “Loop Engineering” (jun. 2026)
01 · Harness vs Loops vs Graph

Loop vs. Graph

El loop vive dentro de un nodo. El grafo vive entre los nodos.hanakoxbt, “Loops and Graphs” (ago. 2026)
Analiza Redacta Revisa hallazgos borrador LOOP · ADENTRO DEL NODO GRAFO · ENTRE LOS NODOS
Nodo
Un trabajo acotado: una entrada, una salida.
Arista
Una dependencia real: la salida de uno es la entrada de otro.
Estado
Lo que pasa de nodo en nodo y sobrevive a la sesión.
02 · ¿Uno o varios?

El test de la arista falsa

Para cada flecha: ¿el paso siguiente lee de verdad la salida del anterior?

ANTES · UNA LÍNEA Labs Imágenes Evoluciones Resumen ✗ ✗ no cruza ningún dato → espera inútil DESPUÉS · UN GRAFO Labs Imágenes Evoluciones Resumen labs imágenes evoluciones en paralelo
40 → 4

Un workflow de 40 pasos en línea suele tener solo 3–5 dependencias reales.

“El modelo nunca fue el cuello de botella. La línea que dibujaste, sí.”Kopadze (jul. 2026)
02 · ¿Uno o varios?

¿Un agente o un grafo?

Un agente, un loop, cuando…
  • La tarea es corta y cabe en un contexto
  • No hay ramas independientes
  • Fallar es barato
  • Es exploratorio y querés dirigirlo vos
  • Un humano revisa el final rápido
Un grafo, cuando…
  • El trabajo se puede paralelizar
  • Los nodos necesitan distintas herramientas o permisos
  • La salida requiere verificación independiente
  • Tiene que poder retomarse tras una interrupción
  • El costo y la autoridad se controlan por ruta
“Un grafo compra amplitud, no mejor criterio.” Arrancá con un loop; dibujá el grafo cuando las dependencias te obliguen.
Fuentes: Kopadze (jul. 2026) · 0xwhrrari (ago. 2026) · Anthropic, “Building effective agents” (dic. 2024)
03 · Patrones

Anatomía de un nodo

El contrato
Entrada explícita Un solo trabajo Salidaestructurada JSON / schema estado de falla

Si podés describir la transformación sin las palabras juzgar, decidir, evaluar o resumir… es código, no un agente.

Los tipos de nodo
Splitterparte el trabajo en unidades Worker (agente)una unidad, su propio contexto { } Códigoune, ordena, deduplica Verificador / compuertadeja pasar o rechaza Humanoaprueba donde el error es irreversible
“Un grafo donde cada arista es un agente paga tokens por su propio cableado.” — 0xwhrrari · Tipos de nodo: hanakoxbt (ago. 2026)
03 · Patrones

Routing

Consulta Clasifica Turnos Laboratorio Administrativa Urgenciao “no sé” directo a un humano
El modelo elige.
El grafo limita las opciones.
  • El clasificador es probabilístico; las rutas permitidas, determinísticas
  • Lo simple queda barato; lo riesgoso, a un grafo más profundo
  • La rama “no sé” también se diseña
03 · Patrones

Paralelización: el diamante

FAN-OUT REDUCE SYNTHESIZE VERIFY Splitter Labs Imágenes Evoluciones Dedupe ·normalizar Síntesis Verifica código, no agente en paralelo, cada uno con su contexto

Es el patrón del research multiagente de Claude: un líder planifica, los workers investigan en paralelo y una etapa verifica antes de responder.

Unir resultados solo cuando el siguiente nodo necesita el conjunto completo. Si no, que el flujo siga.

Fuentes: Anthropic Engineering, “How we built our multi-agent research system” (jun. 2025) · Kopadze (jul. 2026)
03 · Patrones

Supervisor + ciclo controlado

Supervisor Reúne Redacta Valida máx. 3 · presupuesto escalar decide qué subtareas crear y a quién

Todo ciclo necesita

  • Un test de completitud
  • Un máximo de rondas
  • Un presupuesto
  • El registro de intentos previos
  • Una salida de escalamiento

“Repetir hasta que esté bien” no es una condición de parada.

Anticipo: MAI-DxO aplica este patrón al diagnóstico
04 · Estado, errores y HITL

Estado compartido → predecible

✗ PASAR LA CONVERSACIÓN ENTERA Nodo A transcripción completa · 80.000 tokens Nodo B ✓ PASAR UNA REFERENCIA Nodo A ID: resumen_042 Nodo B artefacto guardado + checkpoint
  • Cada nodo recibe el estado mínimo que necesita
  • Checkpoint después de los nodos caros: si se corta, retoma donde quedó
  • En todo momento: qué corrió, qué falta y por qué tomó esa ruta
Si el grafo no puede responder eso, sigue siendo una demo.
Fuente: 0xwhrrari (ago. 2026)
04 · Estado, errores y HITL

El verificador es todo el truco

Los modelos se pierden la mayoría de sus propios errores. Quien hizo el trabajo no lo verifica.

✗ MISMO CONTEXTO Worker Verificador no verifica: asiente 👍 ✓ CONTEXTO LIMPIO + ANCLA Worker Verificador ⚓ ancla señal indiscutible test que corrió · registro real de la HC
“Un loop con un verificador real le gana a un grafo sin ninguno.”AI Builder Club
04 · Estado, errores y HITL

Control de errores

FallaAntídoto
Colapso de contexto: mil salidas a una sola síntesisFan-in por capas: resumir lotes y después combinar
Falsa independencia: dos nodos escriben el mismo recursoEspacios aislados por worker; auditar recursos compartidos
Falla silenciosa: un nodo muere y el informe “parece completo”Cada merge cuenta sus entradas contra las esperadas
Devolver el lote entero cuando falla una parteDevolver solo la unidad que falló; tope de 3 intentos
Reintento que duplica efectosEscrituras idempotentes
La confiabilidad no sale de esperar que cada nodo funcione, sino de decidir qué hace el grafo cuando uno no funciona.
Fuentes: Kopadze (jul. 2026) · hanakoxbt (ago. 2026) · 0xwhrrari (ago. 2026)
04 · Estado, errores y HITL

Observabilidad → observable

Ante un resultado raro, ¿podés reconstruir en 5 minutos qué pasó?

traza · corrida #1842 · 38 s · USD 0,42 ClasificaLabsImágenesEvolucionesSíntesisVerificaReintentoHumano ✗ cita sin fuente aprobó: Dra. X 1,2k tok · 0,4 s 9,8k tok · 6,1 s 12k tok · 7,3 s 7,4k tok · 5,0 s prompt v14 · modelo M ok
Una traza, tres usos
Debug
Reproducir una corrida exacta
Evals
Por nodo y de punta a punta
Costo
En qué rama se va la plata
En salud, la traza es el audit trail: qué agente, qué dato, qué propuso y qué profesional aprobó.
Herramientas: OpenTelemetry (convenciones GenAI) · LangSmith · Langfuse (open source, auto-hosteable) · Arize Phoenix — “Sin trazas no hay producción.”
04 · Estado, errores y HITL

Human-in-the-loop

La compuerta no se abre por la confianza del modelo, sino por lo que cuesta deshacer el error.

Borrador internoreversible y acotado ✓ abierto Plantilla compartidareversible pero amplio ◇ checks + revisión HC · paciente · indicacionesdifícil de revertir decide un profesional ⛔ no se abre

Un carril cerrado no es un umbral alto: los umbrales se ajustan, los carriles cerrados no.

El humano en un solo paso: el de mayor consecuencia y menor reversibilidad.

HITL no es un parche. Es una arista que se diseña.
Fuente: hanakoxbt, “Loops and Graphs” (ago. 2026) — “Un humano en el medio del grafo se vuelve el nodo más lento.”
05 · Casos reales

Caso 1 · Mount Sinai

npj Health Systems · mar. 2026Revisión por paresCondiciones simuladas
UN AGENTE PARA TODO 80 tareas simultáneas Agente único ORQUESTADOR + ESPECIALISTAS Orquestador Búsqueda Extracción Dosis cada paso queda registrado
16%
precisión del agente único con 80 tareas simultáneas
65×
más cómputo del agente único; el orquestado sostuvo la precisión
Predecible
La precisión se sostiene bajo carga
Observable
“Cada paso queda registrado: qué herramienta se llamó, qué devolvió y cómo se armó la respuesta.”
Escalable
65× menos cómputo
Fuente: Klang E., Nadkarni G. N. et al., “Orchestrated multi agents sustain accuracy under clinical scale workloads compared to a single agent”, npj Health Systems (9 mar. 2026). Próximo paso declarado: datos de pacientes en tiempo real.
05 · Casos reales

Caso 2 · Microsoft MAI-DxO

Microsoft AI · jun. 2025Preprint, sin revisión por paresNo aprobado para uso clínico
ROL MÉDICO PIEZA DEL GRAFO Dr. Hypothesis Dr. Test-Chooser Dr. Challenger Dr. Stewardship Dr. Checklist mantiene el diferencialelige el estudio más útilabogado del diablocontrola los costoscontrol de calidad Supervisor Worker Verificador $ Presupuesto del ciclo ✓ Compuerta
85,5%
MAI-DxO + o3 en 304 casos del NEJM (SDBench), resueltos paso a paso
~20%
21 médicos con 5–20 años de experiencia, sin colegas, libros ni IA
Casos raros del NEJM, no consultas cotidianas.
La mejora vino del diseño del grafo (roles, verificador, presupuesto), no de un modelo nuevo.
Fuente: Microsoft AI, “The Path to Medical Superintelligence” (30 jun. 2025) · paper “Sequential Diagnosis with Language Models”, arXiv 2506.22405
05 · Lecciones

Lecciones aprendidas

1Empezá con un loop. Dibujá el grafo cuando las dependencias te obliguen.
2Cortá las aristas falsas. Lo que puede ser código, que sea código.
3Construí el verificador primero, con contexto limpio y anclas reales.
4Evaluá el sistema entero, no solo cada nodo. Sin trazas no hay producción.
5El humano va en un solo paso: el irreversible.
Para llevarse

Antes de dibujar un grafo

¿Puedo nombrar el dato que cruza cada arista?
¿Qué nodos son código y cuáles necesitan un modelo?
¿Dónde está el verificador y qué ancla usa?
¿Qué pasa cuando falla cada nodo? ¿Puedo reconstruir una corrida desde la traza?
¿Dónde decide un humano y qué carril no se abre nunca?
“Funcionó en local” es donde termina la demo.
Predecible, observable y escalable es donde empieza el sistema.
Contener. Converger. Repartir.
¡Gracias!
Federico Catinello · Ingenia · linkedin.com/in/fcatinello
💬 Preguntas al chat