A medida que los agentes de IA empiezan a asumir tareas de larga duración, resulta difícil obtener resultados estables solo con buenos prompts. Esto se debe a que también hay que diseñar qué información consulta el agente, qué herramientas utiliza, cuándo repite una acción, qué ruta sigue y en qué puntos debe obtener la aprobación de una persona.
Para explicar este problema suelen aparecer los términos ingeniería de arnés, ingeniería de bucles e ingeniería de grafos. No son estándares internacionales ni categorías académicas estrictamente consensuadas. Se solapan entre sí y su significado puede variar según el producto y el equipo de desarrollo. Por tanto, en lugar de memorizarlos como términos de moda de cada año, resulta más útil distinguirlos por la pregunta de control a la que intenta responder cada uno.
Comparación de los tres conceptos de un vistazo
| Concepto | Pregunta clave | Principal objeto de diseño | Mecanismos representativos de prevención de fallos |
|---|---|---|---|
| Ingeniería de arnés | ¿En qué entorno y bajo qué reglas trabaja el agente? | Contexto, herramientas, permisos, sandbox, hooks, registros, aprobación, evaluación | Privilegios mínimos, aprobación de comandos peligrosos, ejecución de pruebas, selección de contexto |
| Ingeniería de bucles | ¿Qué se repite y cuándo se detiene? | Ciclo de planificación, ejecución y verificación, procesamiento de eventos, reintentos, presupuesto, condiciones de finalización | Número máximo de iteraciones, límites de tiempo y tokens, evaluación del progreso, derivación en caso de fallo |
| Ingeniería de grafos | ¿Qué estados y rutas se permiten? | Nodos, estados, transiciones, bifurcaciones, procesamiento paralelo, checkpoints | Transiciones prohibidas, validación de estados, nodos de aprobación, rutas de recuperación |
En pocas palabras, el arnés define el entorno y los límites, el bucle define las reglas de repetición y el grafo define la estructura de las rutas posibles. En un sistema real, puede haber un bucle dentro de un nodo del grafo y todo el grafo puede ejecutarse dentro de un mismo arnés.
Cómo han evolucionado los métodos de control de agentes
Agentes iniciales: los flujos de trabajo predefinidos complementaban la autonomía
Los primeros agentes de IA generativa solían olvidar sus objetivos durante las tareas largas, repetir llamadas incorrectas a herramientas o generar resultados sin fundamento. Como respuesta, los desarrolladores dividieron las tareas grandes en pasos pequeños y fijaron las entradas y salidas de cada paso.
Con este método, una persona redacta todo el procedimiento en forma de cadena, diagrama de flujo o máquina de estados, mientras que el LLM se encarga de tareas limitadas como la clasificación, la extracción, el resumen o la redacción de borradores. Los frameworks como LangGraph se utilizan para representar bifurcaciones, ciclos, checkpoints e intervención humana manteniendo el estado.
Sin embargo, la orquestación basada en grafos no es un método obsoleto que terminara en un año concreto. Los grafos explícitos siguen siendo adecuados para tareas en las que son importantes la capacidad de auditoría, la reproducibilidad, el cumplimiento normativo o unos procedimientos de recuperación precisos.
Mejora del rendimiento de los modelos: de rutas fijas al uso dinámico de herramientas
A medida que mejoraron el uso de herramientas y la capacidad de razonamiento, un solo agente pudo seleccionar acciones como buscar, editar código, ejecutar pruebas y leer archivos según la situación. Los enfoques de la familia ReAct constituyen una estructura representativa que alterna razonamiento, acción y observación.
Este cambio redujo la carga de tener que definir por adelantado todas las bifurcaciones. Por otro lado, adquirió mayor importancia gestionar la información que lee el agente, los permisos que posee, el coste de ejecución y el método de recuperación ante errores. En este contexto, la ingeniería de contexto y la ingeniería de arnés pasan al centro del trabajo práctico.
Tareas largas y múltiples agentes: recombinación de bucles y grafos
En las tareas largas, la planificación, ejecución y verificación repetitivas son más importantes que una sola llamada al modelo. Cuando participan varios agentes, también hay que especificar los roles, el formato de los entregables, los permisos y las condiciones de finalización. Al mismo tiempo, dejar los bucles autónomos completamente desatendidos puede provocar una explosión de costes, reintentos infinitos, manipulación de recompensas y optimización de objetivos incorrectos.
Por eso, los sistemas de agentes modernos se diseñan para combinar los tramos en los que se permite la autonomía con aquellos que se controlan de forma determinista, en lugar de eliminar la autonomía. No se trata de un simple regreso a las cadenas fijas del pasado, sino de rodear una ejecución flexible con estados, transiciones y políticas.
Este cambio es más una modificación del énfasis del diseño que una cronología exacta. Los grafos, los bucles y los arneses han coexistido desde el principio y siguen utilizándose conjuntamente.
Qué aborda la ingeniería de arnés
El arnés no es el propio modelo base, sino el sistema de ejecución que rodea al modelo para que realice tareas reales. Incluso utilizando el mismo modelo, la tasa de éxito, el coste, la seguridad y la reproducibilidad pueden variar considerablemente en función del arnés.
Principales componentes de un arnés
- Sistema de instrucciones: instrucciones del sistema, reglas del repositorio, estándares de codificación, prioridades y acciones prohibidas
- Suministro de contexto: búsqueda, selección de archivos, resúmenes, memoria e incorporación de documentos en el momento necesario
- Interfaz de herramientas: edición de archivos, terminal, navegador, base de datos y API externas
- Permisos y aislamiento: alcance de lectura y escritura, acceso a información secreta, restricciones de red y sandbox
- Mecanismos de verificación: pruebas, linter, comprobación de tipos, validación de esquemas y verificación de hechos
- Aprobación humana: aprobación de acciones difíciles de revertir, como despliegues, pagos, eliminaciones y transmisiones externas
- Observabilidad: historial de llamadas, costes, latencia, errores, historial de cambios y fundamento de las decisiones
- Política de recuperación: reintentos, restauración del estado anterior, interrupción de tareas y derivación a una persona responsable
Los archivos de instrucciones de proyecto o los hooks de Claude Code pueden considerarse ejemplos de componentes de un arnés. Sin embargo, una sola función de un producto concreto no representa todo el arnés.
Diferencia respecto a la ingeniería de contexto
La ingeniería de contexto optimiza qué información e instrucciones se introducen en la llamada actual al modelo. Incluye recuperar mediante búsquedas solo los documentos relevantes, resumir conversaciones antiguas, guardar el estado de la tarea en archivos externos y separar el contexto de cada subtarea.
La ingeniería de arnés tiene un alcance más amplio. Además del contexto, abarca los permisos de las herramientas, el entorno de ejecución, las aprobaciones, la verificación, el registro y los límites de coste. Por tanto, la ingeniería de contexto es una parte esencial del arnés, pero no es preciso utilizar ambos términos como si significaran exactamente lo mismo.
La clave de la ingeniería de bucles son las condiciones de finalización
Un bucle hace que el agente compruebe el resultado después de generarlo y vuelva a intentarlo si es insuficiente. Lo importante no es la repetición en sí, sino la definición del progreso y las condiciones de interrupción.
Tipos representativos de bucles
- Bucle de verificación: después de crear un borrador, lo comprueba mediante pruebas o criterios de evaluación y corrige los elementos que hayan fallado.
- Bucle basado en eventos: inicia una tarea cuando se produce un evento externo, como un correo electrónico, una notificación, un cambio de código o datos de sensores.
- Bucle de exploración: investiga varias hipótesis o fuentes y ajusta el alcance de la exploración hasta reunir pruebas suficientes.
- Bucle de mejora: selecciona la siguiente estrategia a partir de resultados y evaluaciones anteriores. Optimizar una única puntuación puede provocar manipulación de recompensas, por lo que se necesitan varios criterios de evaluación y revisión humana.
- Bucle de recuperación: clasifica la causa del error, reintenta dentro del alcance permitido y, si no logra resolverlo, lo deriva a una persona.
Contratos necesarios para un bucle seguro
Un contrato entre agentes no es un contrato legal, sino una especificación de ejecución que define las entradas, las salidas y las responsabilidades. Conviene incluir los siguientes elementos.
| Elemento del contrato | Contenido que debe especificarse |
|---|---|
| Objetivo | Resultado que debe completarse y alcance excluido |
| Entrada | Datos que pueden utilizarse, vigencia y nivel de confianza |
| Salida | Esquema JSON, formato del documento, pruebas obligatorias y resultados de las pruebas |
| Permisos | Herramientas permitidas, alcance de los archivos y permisos de transmisión externa y modificación |
| Verificación | Pruebas y criterios de evaluación que deben superarse |
| Presupuesto | Tokens, tiempo, número de llamadas y cantidad de tareas paralelas |
| Finalización | Condiciones de éxito, ausencia de progreso, agotamiento del presupuesto y detección de riesgos |
| Derivación | Qué persona o agente se hace cargo en caso de fallo |
Si las condiciones de finalización son ambiguas, el agente puede considerar que la tarea está progresando aunque solo esté modificando frases o repitiendo la misma búsqueda. En lugar de establecer únicamente un número máximo de iteraciones, es mejor considerar conjuntamente la calidad del resultado, el aumento de información nueva, la evolución de los errores y el coste.
La ingeniería de grafos estructura los límites de la autonomía
Un grafo representa una tarea mediante nodos y conexiones. Un nodo puede corresponder a una llamada al modelo, la ejecución de una herramienta, una aprobación humana o un proceso de verificación, mientras que las conexiones indican la siguiente acción en función del estado.
Diferencia entre cadenas y grafos
- Una cadena es adecuada para procedimientos lineales que van de A a B y de B a C.
- Un grafo es adecuado para tareas que requieren bifurcaciones condicionales, repeticiones, ejecución paralela, recuperación ante fallos y guardado intermedio.
- Un grafo dinámico permite que el modelo proponga la siguiente subtarea o ruta durante la ejecución.
- Un grafo restringido hace que, aunque el modelo elija, solo pueda moverse entre los nodos y las transiciones permitidos.
El propósito del diseño moderno de grafos no consiste en que una persona decida de antemano todas las acciones. Consiste en incorporar a la estructura condiciones invariantes que deben respetarse, como obligar a pasar por un nodo de aprobación antes de eliminar datos o impedir la transición al estado de despliegue cuando las pruebas se encuentran en estado fallido.
Indicadores de que se necesita un grafo
Si se cumplen varias de las siguientes condiciones, merece la pena considerar un grafo explícito.
- Existe un punto claro de recuperación al que volver después de un fallo.
- Hay una etapa que requiere obligatoriamente la aprobación de una persona.
- Hay que ejecutar varias tareas en paralelo y después combinar los resultados.
- Las herramientas o los permisos disponibles varían según el estado.
- Es necesario auditar o reproducir toda la ruta de ejecución.
- Un bucle de un solo agente repite el mismo fallo.
Crear un grafo incluso para resumir un documento sencillo o realizar una única transformación de datos puede limitarse a aumentar la complejidad.