Importation d'agents d' LangGraph

Importez des agents d' LangGraph s personnalisés dans l' watsonx Orchestrate afin de les déployer sur une infrastructure de niveau entreprise tout en conservant un contrôle total sur la logique et le raisonnement des agents.

Remarque : cette fonctionnalité n'est prise en charge que dans les régions commerciales AWS et IBM Cloud. Cette fonctionnalité n'est pas disponible pour les déploiements sur site ni pour AWS GovCloud (États-Unis).

Pourquoi faire appel aux agents d' LangGraph

LangGraph est un cadre de programmation permettant de créer des agents à l'aide de grands modèles linguistiques (LLM), qui étend les capacités d' LangChain en offrant la possibilité de créer des graphes cycliques. Cela permet aux agents d'adopter des schémas de raisonnement complexes allant au-delà des simples boucles « ReAct », de gérer les états de manière personnalisée pour des flux de travail sur mesure, de mettre en place une orchestration en plusieurs étapes avec une logique conditionnelle, et d'exercer un contrôle total sur le comportement et la prise de décision des agents.

L'importation des agents d' LangGraph s dans watsonx Orchestrate permet de résoudre les problèmes suivants :

Déploiement d'agents d' LangGraph s existants : si vous disposez d'un agent d' LangGraph qui fonctionne en environnement de développement, mais que vous avez besoin d'une infrastructure de production (hébergement, sécurité, authentification, surveillance et application des politiques) sans avoir à réécrire votre agent, vous pouvez l'importer dans watsonx Orchestrate et bénéficier immédiatement de fonctionnalités supplémentaires avec un minimum de modifications du code.

Création d'agents spécialisés : lorsque les agents standard d' ReAct s présentent des limites et que vous avez besoin de schémas de raisonnement personnalisés, d'une gestion complexe des états, de workflows en plusieurs étapes ou d'une logique spécialisée allant au-delà de la simple sélection d'outils, vous pouvez créer des agents d' LangGraph s personnalisés en contrôlant entièrement la logique et le raisonnement, puis les exécuter dans watsonx Orchestrate comme n'importe quel autre agent natif.

Fonctionnement des agents d' LangGraph s importés

LangGraph Les agents importés dans watsonx Orchestrate s'exécutent en mode natif au sein de l'infrastructure d'exécution de la plateforme. Contrairement aux agents externes qui disposent de leur propre hébergement, les agents importés d' LangGraph s sont entièrement intégrés à la plateforme watsonx Orchestrate. Cela signifie :

  • Le code de l'agent s'exécute dans l'environnement watsonx Orchestrate avec l'isolation requise.
  • watsonx Orchestrate gère le cycle de vie des agents, la mise à l'échelle et l'allocation des ressources.
  • L'agent bénéficie des fonctionnalités d' watsonx Orchestrate, de surveillance et d'exploitation.
  • La communication s'effectue via le protocole « A2A » (Agent-to-Agent) pour permettre la collaboration avec d'autres agents.
  • Les agents importés d' LangGraph peuvent être utilisés comme agents de premier niveau ou comme collaborateurs d'autres agents.
  • Ils sont visibles et configurables sur la plateforme, et peuvent être déployés dans des environnements de production.

Avant de commencer

Avant d'importer un agent d' LangGraph, assurez-vous de disposer des éléments suivants :

LangGraph colis

Fournissez un dossier d'agent « LangGraph » correctement structuré (fichier ZIP) contenant :

  • Fichier de configuration agent.yaml
  • Au moins une fonction d'usine (.py fichier)
  • fichier requirements.txt

Pour plus d'informations sur la création de packages d'agents LangGraph, consultez la section Création d'un package LangGraph pour l'importation.

Connexions

Si votre agent fait appel à des modèles de langage génératif (LLM) externes ou à des outils nécessitant une authentification, configurez toutes les connexions requises dont votre agent a besoin afin de pouvoir les sélectionner lors du processus d'importation. Pour plus d'informations, consultez la section « Création de connexions pour les agents d' LangGraph ».

Important : vous devez créer toutes les connexions requises avant d'importer l'agent. Le processus d'importation ne vérifie pas si les connexions requises sont bien en place; assurez-vous donc que toutes les connexions nécessaires existent et sont correctement configurées avant de continuer.

Limite d'importation

Vérifiez que le locataire n'a pas atteint la limite de 3 agents « LangGraph ».

Configuration requise pour la validation

Avant l'importation, votre package d'agent doit satisfaire aux validations suivantes :

Validations de la structure des fichiers

  • Le fichier ZIP n'est pas endommagé
  • Contient agent.yaml le fichier
  • Contient au moins un .py fichier
  • Contient requirements.txt le fichier

Validations de configuration

  • Le agent.yaml fichier est au format YAML valide.
  • Le spec_version champ existe et sa valeur est égale à v1.
  • Le kind champ existe et sa valeur est égale à agent.
  • Le name champ existe, n'est pas vide et ne dépasse pas 40 caractères.
  • Le description champ existe et n'est pas vide.
  • Le deployment.code_bundle.entrypoint champ existe et respecte module:function le format.

Limitations et restrictions

Tenez compte de ces restrictions lorsque vous utilisez des agents importés d' LangGraph :

Limites applicables aux locataires

Chaque locataire ne peut avoir plus de trois agents d' LangGraph. Cette limite prend en compte tous les agents d' LangGraph, y compris ceux que vous importez et ceux que vous copiez dans des espaces de travail. Si cette limite est atteinte, toute tentative d'importation d'agents supplémentaires d' LangGraph s entraîne une erreur « limite dépassée ». Lors de la gestion de l'utilisation d' LangGraph s au sein d'un tenant, vous devez tenir compte à la fois des agents importés et des agents copiés.

Conditions de connexion

Vous devez créer toutes les connexions avant d'importer l'agent, et seules les connexions configurées avec des identifiants d'équipe sont prises en charge.

Remarque : le système ne vérifie pas si les connexions sélectionnées correspondent aux exigences de votre agent.

Persistance de l'état

Seuls les messages figurant dans le graphe des agents sont conservés d'un tour de conversation à l'autre. Les objets d'état personnalisés complexes ne sont pas conservés d'un tour à l'autre.

Pour plus d'informations sur l'activation de la persistance d'état pour l'agent d' LangGraph, consultez la section « Activation de la persistance d'état pour les agents d' LangGraph ».

Collaboration entre agents

Les agents natifs de watsonx Orchestrate peuvent utiliser les agents de LangGraph comme collaborateurs, mais les agents de LangGraph ne peuvent pas utiliser les agents natifs comme collaborateurs.

Outils et intégrations

Les outils inclus dans votre package d'agent ne sont pas accessibles en tant qu'outils d' watsonx Orchestrate, et ne sont pris en charge qu'en mode lecture seule. De même :

  • Vous ne pouvez pas utiliser les outils de votre agent « LangGraph » dans d'autres agents.
  • watsonx Orchestrate Les outils tels que les workflows basés sur des agents, les outils de gestion des Python s, les outils MCP et les outils d' OpenAPI ne sont pas pris en charge pour les agents d' LangGraph.

Autres limitations

À l'heure actuelle, seuls les agents LangGraph fonctionnant sous Python sont pris en charge.

Important : pour connaître les limitations associées et les comportements connus, consultez la section « Problèmes connus ».

Procédure

Suivez les étapes suivantes pour importer l'agent « LangGraph » dans watsonx Orchestrate.

Étape 1 : Importer le paquet de l'agent

  1. Accédez à la page « Agents et outils » sur watsonx Orchestrate.
  2. Cliquez sur Créer un agent + > Importer un agent d' LangGraph.
  3. Téléchargez le package de l'agent « LangGraph ».
    • Le fichier ZIP n'est pas endommagé
    • Contient agent.yaml le fichier
    • Contient au moins un .py fichier
    • Contient requirements.txt le fichier
    • agent.yaml respecte la syntaxe YAML
    • Les champs de configuration obligatoires sont présents et valides
  4. Si la validation échoue, un message d'erreur s'affiche pour vous indiquer ce que vous devez modifier. Corrigez les problèmes dans votre package d'agent, puis essayez de le télécharger à nouveau.
  5. Si la validation aboutit, cliquez sur Suivant pour passer à la sélection de la connexion.

Étape 2 : Sélectionner les connexions

  1. L'écran « Connexions » affiche toutes les connexions d'équipe disponibles dans votre instance.
  2. Sélectionnez toutes les connexions dont votre agent a besoin pour fonctionner correctement :
    • Pour les agents basés sur un modèle de langage (LLM), sélectionnez la connexion correspondant à votre fournisseur de modèle de langage.
    • Pour les agents utilisant des API externes, sélectionnez les connexions pour chaque API à laquelle votre agent accède.
    • Si votre agent ne nécessite aucune connexion, vous pouvez ignorer cette étape.
  3. Cliquez sur Suivant pour terminer l'importation.
Remarque : toutes les connexions sont répertoriées sans filtrage. Il vous appartient de choisir les connexions appropriées qui correspondent aux attentes de votre fonction d'usine d'agents. Le système ne vérifie pas si les connexions sélectionnées sont réellement nécessaires à votre agent.
Important :

Lorsque vous utilisez un agent LangGraph, vous ne pouvez pas modifier certains champs de configuration via l'interface standard.

  • Style de l'agent
  • Configuration vocale
  • Connaissances
  • Outils
  • Agents collaborateurs
  • Instructions
  • Discussion en ligne avec documents

Pour modifier l'un de ces paramètres, mettez directement à jour le code de l'agent « LangGraph », puis réimportez le paquet.

Etape suivante

Une fois votre agent « LangGraph » importé, vous pouvez l'enrichir de fonctionnalités supplémentaires d' watsonx Orchestrate s à l'aide de l'ADK :

Intégration via AI Gateway : utilisez les modèles de langage (LLM) d' watsonx Orchestrate s via l'interface AI Gateway standard, plutôt que de gérer vous-même vos connexions aux LLM.

Intégration de la mémoire : Intégrez les services de mémoire d' watsonx Orchestrate pour extraire des souvenirs pertinents afin de replacer le contexte, enregistrer de nouveaux souvenirs ou assurer la continuité de la conversation d'une session à l'autre.

Instructions supplémentaires : instructions de levier configurées par le générateur d'agents afin de personnaliser le comportement des agents sans modification du code.

Variables de contexte : accéder aux variables de contexte d' watsonx Orchestrate.

Pour plus d'informations, consultez la documentation du kit de développement d'agents d' IBM watsonx Orchestrate.