Los sistemas de IA agéntica reúnen la versatilidad y la flexibilidad de los modelos de lenguaje de gran tamaño (LLM) y la precisión de los modelos de programación tradicionales. Los sistemas de IA agéntica son capaces de planificar y realizar tareas de forma autónoma en nombre de un usuario o de otro sistema. Los sistemas de IA agéntica resuelven problemas complejos descomponiéndolos en series de tareas más pequeñas y utilizando las herramientas disponibles para interactuar con sistemas externos o realizar tareas computacionales.
Estas capacidades hacen que los sistemas de IA agéntica sean capaces de manejar una gama mucho mayor de tareas y tareas mucho más complejas que solo los LLM. Por ejemplo, si se diera una instrucción a un LLM para que recomendara qué coche comprar, el modelo generaría obedientemente una lista de recomendaciones basada en los datos disponibles en el momento en que se entrenó el modelo. Por otro lado, una solución de IA agéntica podría darle una instrucción para obtener detalles adicionales sobre cómo pretende utilizar el vehículo (placer, desplazamientos al trabajo, transporte de cargas pesadas) y hacerle saber que hay un descuento del fabricante disponible hasta el final del mes.
Un sistema de IA agéntica está compuesto por los siguientes componentes:
Los agentes tienen su propia arquitectura conceptual, ilustrada en la siguiente figura.
Los agentes se componen de los siguientes componentes principales:
Se pueden añadir componentes adicionales, que no se muestran en la figura, para proporcionar gestión de agentes operativos, monitorización del rendimiento y controles de seguridad como la propagación de identidades y la prevención de fugas de datos.
El diagrama siguiente ilustra el flujo de control e información a través de la arquitectura conceptual.
El diagrama anterior ilustra la correspondencia de los productos de IBM con la arquitectura de la IA agéntica.
watsonx Orchestrate es una solución de IA agéntica ‘todo en uno’ que combina:
watsonx.ai Agent Builder es una herramienta low-code/no-code que permite a los desarrolladores crear agentes y definir y gestionar herramientas mediante flujos prediseñados.
La orquestación de agentes se puede implementar mediante varios enfoques. Un enfoque de orquestación centralizada utiliza un único componente de orquestación maestro para gestionar las acciones de todos los demás agentes del sistema. Disponer de un único punto de configuración y gestión hace que el sistema en su conjunto sea fácil de gestionar y controlar, y que la resolución de problemas resulte sencilla. La desventaja es que un único punto de control puede convertirse en un cuello de botella y provocar problemas de escalabilidad a medida que aumentan los volúmenes de solicitudes o el número de agentes.
Un enfoque de orquestación descentralizada implementa una cola de tareas de la que los agentes extraen tareas y publican resultados, y encamina tareas de varias partes entre sí; similar a un sistema de pizarra. Las soluciones de orquestación descentralizada son muy robustas y tolerantes a fallos, pero son difíciles de diseñar y solucionar a medida que los sistemas se vuelven más grandes y con mayores capacidades.
Por último, un enfoque de orquestación jerárquica combina elementos de los enfoques centralizado y descentralizado. En la orquestación jerárquica, se utiliza un orquestador maestro para coordinar las acciones de los agentes de alto nivel que, a su vez, pueden invocar a otros agentes para completar tareas complejas. Esto conserva gran parte de la facilidad de gestión y control de un enfoque centralizado, pero reduce la posibilidad de que el componente de control central se convierta en un cuello de botella con grandes volúmenes de solicitudes y/o un gran número de agentes.
La granularidad de un agente de IA se refiere a la complejidad de las tareas que el agente puede realizar. Un agente de alta granularidad puede ser capaz de realizar muchas tareas o un pequeño número de tareas con gran detalle, mientras que un agente de baja granularidad solo puede ser capaz de realizar un pequeño número o incluso una sola tarea con un bajo nivel de detalle. Para que quede más claro, piense en un agente de servicio de atención al cliente. Un agente de baja granularidad solo puede responder a preguntas sencillas sobre un producto (por ejemplo, “¿Está en negro?”), mientras que un agente de alta granularidad puede comprobar los inventarios locales y organizar la entrega del producto al domicilio del cliente.
Los diseñadores de soluciones agénticas deben decidir el grado de granularidad que deben tener los agentes individuales dentro del sistema, por ejemplo, si es mejor tener un número reducido de agentes de alta granularidad o un número mayor de agentes de baja granularidad. Las amplias capacidades de los agentes de alta granularidad tienen como contrapartida unos mayores requisitos de recursos informáticos y unos tiempos de finalización de las tareas más largos. Aunque menos capaces, el enfoque limitado de los agentes de baja granularidad significa que requieren menos recursos informáticos y que, por lo general, completarán las tareas mucho más rápido.
Aunque aún se desconoce el nivel ‘adecuado’ de granularidad, las primeras experiencias sugieren que la creación de agentes de baja granularidad alineados con procesos empresariales centrados, por ejemplo, Purchase_Order_Processing_Agent, produce un buen equilibrio entre los requisitos de recursos, la velocidad de procesamiento y la complejidad de la solución. Los agentes de baja granularidad pueden entonces incorporarse a flujos de trabajo estáticos, o ser invocados por agentes de alta granularidad como parte de un proceso mayor.
Los diseñadores de soluciones de IA agéntica deben lograr un equilibrio entre los agentes que siguen procesos y flujos de trabajo estáticos y predefinidos y que los flujos de trabajo se generen de forma dinámica en respuesta a las instrucciones del usuario. Aunque no hay una respuesta correcta o incorrecta, se recomienda a los arquitectos que tengan en cuenta las siguientes recomendaciones y consideraciones:
Los flujos de trabajo estáticos deben utilizarse para procesos empresariales compuestos por múltiples pasos complejos que cruzan dominios de conocimiento (por ejemplo, legal y contabilidad), o que estén sujetos a supervisión regulatoria. El uso de flujos de trabajo estáticos en estos casos ofrece a los arquitectos varios beneficios: