Cet article traite du framework ReAct dans le cadre de son utilisation pour développer des agents Agentic. Pour bien comprendre comment fonctionne le framework ReAct il peut être utile de s’appuyer sur deux concepts clés :

Attention, le terme de ReAct dans le cadre de cet article, ne doit pas être confondu avec React.js, la bibliothèque JavaScript développée par Facebook en 2013. Ici, ReAct fait référence à un cadre d’IA permettant aux modèles de langage d’améliorer leur prise de décision en combinant raisonnement et action.

Pour en savoir plus sur tous ces sujets, je vous invite à vous reporter au webinar 5 de l’IAcadémie :

Les principes fondamentaux du ReAct

Le framework ReAct (Reasoning + Acting) a été introduit en 2022 par une équipe de chercheurs de Google DeepMind et de Princeton dans un article scientifique intitulé ReAct: Synergizing Reasoning and Acting in Language Models (Yao et al., 2022).

L’objectif était de dépasser les limitations des modèles d’IA traditionnels qui se contentaient soit d’analyser des informations sans interagir avec leur environnement, soit d’exécuter des actions sans logique explicite. Avec ReAct, ces deux aspects sont fusionnés : Re (Reasoning) + Act (Action) = ReAct.

Le principe repose sur un cycle itératif :

  1. Réflexion (reasoning) : L’agent réfléchit au problème et élabore une stratégie.
  2. Action (action) : Il exécute une action pour récupérer des informations (comme interroger une base de données ou analyser un document).
  3. Observation (observation) : Il évalue le résultat de son action et ajuste son raisonnement en conséquence.

Ce processus continue jusqu’à ce que l’agent atteigne une réponse satisfaisante.

Lien avec le Chain-of-Thought (CoT)

Un des éléments fondamentaux qui ont permis l’émergence de ReAct est le Chain-of-Thought (CoT), une technique qui améliore la capacité des modèles de langage à structurer leur raisonnement en détaillant chaque étape.

ReAct s’appuie sur cette approche, mais en y ajoutant une dimension interactive. Plutôt que de simplement exposer son raisonnement, l’agent IA interagit avec son environnement, exécute des actions en fonction de son raisonnement et ajuste ses décisions en temps réel.

Prenons un exemple concret :

Question posée à l’agent IA : Quand est-ce que Thibault Levi-Martin a créé sa première société ?

  1. Réflexion : L’agent détermine qu’il doit rechercher les entreprises fondées par Thibault Levi-Martin.
  2. Action : Il interroge une base de données et identifie Partoo et Ideel Garden.
  3. Observation : Il se rend compte qu’il lui manque les dates de création pour répondre précisément.
  4. Nouvelle action : Il cherche ces informations et trouve que Partoo a été fondé en 2014 et Ideel Garden en 2019.
  5. Observation et réponse : L’agent peut maintenant répondre avec certitude : Thibault Levi-Martin a créé sa première société en 2014.

Ce cycle itératif permet d’éviter les erreurs causées par des réponses incomplètes ou approximatives.

Reasoning Without Observation (ReWO)

Un autre cadre, appelé ReWO (Reasoning Without Observation), fonctionne différemment. Contrairement à ReAct, il ne repose pas sur une boucle itérative :

  • L’agent planifie toute sa réflexion en amont.
  • Il exécute toutes ses actions en parallèle.
  • Il fusionne les résultats pour générer une réponse finale.

Applications : les Agentic Agents

Aujourd’hui, ReAct est au cœur du développement des agents agentiques, ces IA capables d’opérer de manière autonome et de planifier des actions pour résoudre des tâches complexes.

Grâce à ReAct, ces agents ne se contentent pas de donner une réponse immédiate : ils réfléchissent, exécutent des actions et ajustent leur stratégie en temps réel, comme le ferait un humain dans un processus de résolution de problème.

Pour en savoir plus sur tous ces sujets, rendez-vous sur l’IAcadémie, c’est gratuit : https://www.youtube.com/@Follow-Tribes