Agentic AI systems bring together the versatility and flexibility of large language models (LLMs) and the precision of traditional programming models. Agentic AI systems are able to autonomously plan and perform tasks on behalf of a user or another system. Agentic AI systems solve complex problems by breaking them down into series of smaller tasks and using available tools to interact with external systems, or perform computational tasks.
These capabilities make agentic AI systems capable of handling a far greater range of tasks and far more complex tasks than just LLMs alone. For example, if you were to prompt a LLM to recommend which car to buy the model would dutifully generate a list of recommendations based on the data available at the time the model was trained. On the other hand, an agentic AI solution could prompt you for additional details on how you intend to use the vehicle (pleasure, commuting to work, hauling heavy loads), and let you know there is a manufacturers rebate available until the end of the month.
An agentic AI system is comprised of the following components:
Agents have their own conceptual architecture, illustrated in the figure below.
Agents are comprised of the following core components:
Additional components, not shown in the figure, can be added to provide operational agent management, performance monitoring, and security controls such as identity propagation and data leakage prevention.
The diagram below illustrates the flow of control and information through the conceptual architecture.
The diagram above illustrates the mapping of IBM products to the agentic AI architecture.
watsonx Orchestrate is an 'all-in-one' agentic AI solution that combines:
The watsonx.ai Agent Builder is a low-code / no-code tool that enables developers to build agents, and define and manage tools using pre-built flows.
Agent orchestration can be implemented using a variety of approaches. A centralized orchestration approach uses a single master orchestration component to manage the actions of all the other agents in the system. Having a single point of configuration and management makes the overall system simple to manage and control, easy to troubleshoot. The downside is that a single point of control can become a bottleneck and lead to scalability challenges as request volumes and/or the number of agents increases.
A decentralized orchestration approach implements a task queue which agents pull tasks and post results, and routes multi-part tasks amongst themselves; similar to a blackboard system. Decentralized orchestration solutions are highly robust and fault tolerant but are difficult to design and troubleshoot as the systems become larger with greater capabilities.
Finally, a hierarchical orchestration approach combines elements of the centralized and decentralized approaches. In hierarchical orchestration, a master orchestrator is used to coordinate the actions of high-level agents that in turn can invoke other agents to complete complex tasks. This retains much of the ease of management and control of a centralized approach but reduces the potential for the central control component to become a bottleneck at high request volumes and/or large numbers of agents.
Granularity of an AI agent refers to the complexity of the tasks the agent can perform. A high-granularity agent may be capable of performing many tasks or a small number of tasks in great detail, whereas a low-granularity agent may only be capable of accomplishing a small number or even just a single task to a low level of detail. To make this clearer, consider a customer service agent. A low-granularity agent may be able to only answer simple questions about a product (e.g., "Does it come in black?"), whereas a high-granularity agent may be able to check local inventories and arrange to deliver the product to the customer's home.
Designers of agentic solutions must decide how granular to make the individual agents within the system, e.g., have a small number of high-granularity agents or a larger number of low granularity agents. The broad capabilities of high-granularity agent come at a cost of greater computing resource requirements and longer task completion times. While less capable, the narrow focus of low-granularity agents means they require less computing resources and will generally complete tasks much faster.
While the 'right' level of granularity is still unknown, early experience suggests creating low-granularity agents aligned to focussed business processes, e.g., Purchase_Order_Processing_Agent, produces a good balance between resource requirements, processing speed, and solution complexity. The low-granularity agents can then be incorporated into static workflows, or invoked by high-granularity agents as part of a larger process.
Designers of agentic AI solutions must strike a balance between agents following pre-defined, static processes and workflows, and having workflows dynamically generated in response to user prompts. While there is no right or wrong answer architects are advised to take the following recommendations and considerations into account:
Static workflows should be used for business processes made up of multiple complex steps that cross knowledge domains (eg. legal and accounting), or that are subject to regulatory oversight. Using static workflows in these instances provides architects with several benefits: