Les systèmes d’IA agentique associent la polyvalence et la flexibilité des grands modèles de langage (LLM) à la précision des modèles de programmation traditionnels. Les systèmes d’IA agentique sont capables de planifier et d’exécuter des tâches de manière autonome au nom d’un utilisateur ou d’un autre système. Les systèmes d’IA agentique résolvent des problèmes complexes en les décomposant en plusieurs petites tâches et en utilisant les outils disponibles pour interagir avec des systèmes externes ou effectuer des tâches computationnelles.
Ces capacités rendent les systèmes d’IA agentique capables de gérer un éventail bien plus large de tâches et des tâches bien plus complexes que les seuls LLM pris isolément. Par exemple, si vous demandez à un LLM de recommander quelle voiture acheter, le modèle produira consciencieusement une liste de recommandations basées sur les données disponibles au moment où le modèle a été entraîné. D’un autre côté, une solution d’IA agentique pourrait vous demander de fournir des détails supplémentaires sur la façon dont vous envisagez d’utiliser le véhicule (plaisir, se rendre au travail, transporter des charges lourdes) et vous indiquer qu’il existe une remise du fabricant disponible jusqu’à la fin du mois.
Un système d’IA agentique est composé des composants suivants :
Les agents possèdent leur propre architecture conceptuelle, illustrée dans la figure ci-dessous.
Les agents sont composés des composants principaux suivants :
Des composants supplémentaires, non illustrés sur la figure, peuvent être ajoutés pour assurer la gestion opérationnelle des agents, la surveillance des performances et les contrôles de sécurité tels que la propagation de l’identité et la prévention des fuites de données.
Le diagramme ci-dessous illustre le flux de contrôle et d’information à travers l’architecture conceptuelle.
Le diagramme ci-dessus illustre la correspondance entre les produits IBM et l’architecture de l’IA agentique.
watsonx Orchestrate est une solution d’IA agentique « tout-en-un » qui combine :
L'Agent Builder de watsonx.ai est un outil low-code / no-code qui permet aux développeurs de construire des agents, de définir et de gérer des outils en utilisant des flux pré-créés.
L’orchestration des agents peut être mise en œuvre selon différentes approches. Une approche d’orchestration centralisée fait appel à un seul composant d’orchestration maître pour gérer les actions de tous les autres agents du système. Le fait de disposer d’un point unique de configuration et de gestion rend le système global simple à gérer et à contrôler, et facile à dépanner. L’inconvénient est qu’un point de contrôle unique peut devenir un goulot d’étranglement et entraîner des problèmes d’évolutivité lorsque les volumes de demandes et/ou le nombre d’agents augmentent.
Une approche d’orchestration décentralisée met en œuvre une file d'attente de tâches dans laquelle les agents récupèrent les tâches et publient les résultats, et acheminent les tâches en plusieurs parties entre eux, à l'instar d'un système de tableau noir. Les solutions d’orchestration décentralisées sont très robustes et tolérantes aux pannes, mais elles sont difficiles à concevoir et à dépanner lorsque les systèmes deviennent plus grands et dotés de capacités plus importantes.
Enfin, une approche d’orchestration hiérarchique combine des éléments des approches centralisée et décentralisée. Dans l’orchestration hiérarchique, un orchestrateur principal est utilisé pour coordonner les actions des agents de haut niveau qui, à leur tour, peuvent invoquer d’autres agents pour accomplir des tâches complexes. Cela permet de conserver une grande partie de la facilité de gestion et de contrôle d’une approche centralisée, mais réduit le risque que le composant de contrôle central devienne un goulot d’étranglement en cas de volumes de demandes élevés et/ou d’un grand nombre d’agents.
La granularité d’un agent IA fait référence à la complexité des tâches qu’il peut accomplir. Un agent à forte granularité peut être capable d'exécuter de nombreuses tâches ou un petit nombre de tâches de manière très détaillée, tandis qu'un agent à faible granularité peut n'être capable d'accomplir qu'un petit nombre de tâches ou même une seule tâche avec un faible niveau de détail. Pour que cela soit plus clair, prenons l’exemple d’un agent de service client. Un agent à faible granularité peut ne pouvoir répondre qu’à des questions simples sur un produit (par exemple, « Est-il disponible en noir ? »), tandis qu’un agent à forte granularité peut être en mesure de vérifier les stocks locaux et d’organiser la livraison du produit au domicile du client.
Les concepteurs de solutions agentiques doivent décider de la granularité des différents agents du système, par exemple en utilisant un petit nombre d’agents à forte granularité ou un plus grand nombre d’agents à faible granularité. Les vastes capacités d'un agent à forte granularité se traduisent par une augmentation des besoins en ressources informatiques et par des délais d'exécution des tâches plus longs. Bien que moins capables, les agents à faible granularité nécessitent moins de ressources informatiques et accomplissent généralement leurs tâches beaucoup plus rapidement.
Bien que le « bon » niveau de granularité reste inconnu, les premières expériences suggèrent que la création d’agents à faible granularité alignés sur des processus métier ciblés, par exemplePurchase_Order_Processing_Agent, permet d’obtenir un bon équilibre entre besoins en ressources, vitesse de traitement et complexité de la solution. Les agents à faible granularité peuvent alors être intégrés dans des workflows statiques, ou invoqués par des agents à haute granularité dans le cadre d’un processus plus large.
Les concepteurs de solutions d’IA agentique doivent trouver un équilibre entre les agents qui suivent des processus et des workflows statiques et prédéfinis et les workflows générés dynamiquement en réponse aux prompts des utilisateurs. Bien qu’il n’y ait pas de bonne ou de mauvaise réponse, il est conseillé aux architectes de prendre en compte les recommandations et considérations suivantes :
Les workflows statiques doivent être utilisés pour les processus métier composés de plusieurs étapes complexes qui recoupent différents domaines de connaissances (par exemple, le droit et la comptabilité) ou qui sont soumis à une supervision réglementaire. L’utilisation de workflows statiques dans ces instances offre aux architectes plusieurs avantages :