- Démarrer
- Construire
- Ajouter un agent d'IA à un workflow
- Appeler une API externe
- Traiter les e-mails entrants
- Créer un workflow de notification Slack
- Ajouter une approbation humaine à un workflow
- Créer un workflow d’agent de chat
- Gérer les erreurs
- Principes de base du débogage
- L'humain dans la boucle: escalade ou étape humaine
- Évaluation de vos workflows
- Déployer et exécuter
- Exemples
- Référence (Reference)
Agent autonome
Nœud d'agent autonome : configurez un agent d'IA avec un modèle, des invites, des outils et des ressources pour raisonner et terminer les tâches.
Ce qu’il fait
Exécute un agent d'IA que vous créez sur la zone de dessin. Vous lui donnez un modèle, des instructions, des outils et un contexte, et il raisonne sur vos données pour terminer une tâche et renvoyer un résultat.
Le nœud est libellé Agent autonome dans le panneau Ajouter un nœud . Utilisez-le pour les décisions basées sur l'IA, la génération de contenu, la classification, l'extraction ou toute étape qui bénéficie d'un raisonnement plutôt que d'une logique fixe.
Un agent autonome raisonne dans une boucle. Il lit les invites, décide d'appeler un outil ou de consulter son contexte, intègre ce qui revient et se répète jusqu'à ce qu'il ait une réponse ou qu'il atteigne sa limite d'itération. Vous façonnez cette boucle avec le modèle, les invites et les ressources que vous connectez aux gestionnaires du nœud.
Choix entre un agent autonome et d'autres nœuds
| Situation | Utiliser (Use) |
|---|---|
| Vous souhaitez définir le modèle, les invites et les outils de l’agent directement dans ce workflow | Agent autonome |
| Vous souhaitez appeler un agent déjà déployé dans votre organisation | Processus BPMN |
| Vous avez besoin d'une branche fixe et basée sur des règles sans raisonnement | Décision ou Basculer |
Un agent autonome est créé en ligne: sa configuration réside sur le nœud et se déplace avec le workflow.
Ajout d'un agent
Ajoutez le nœud, puis configurez-le dans le panneau Propriétés.
- Sélectionnez le bouton + sur une gestion de sortie, ou sélectionnez + Ajouter un nœud dans la barre d'outils inférieure.
- Sélectionnez la catégorie de l'agent , puis Agent autonome. Maestro Automate ajoute le nœud et ouvre son panneau Propriétés.
- Configurez le modèle et les invites comme décrit ci-dessous.
Résultat : le nœud Agent autonome est ajouté à la zone de dessin avec son panneau Propriétés ouvert, prêt à être configuré.
Référence de la configuration
| Champ | Requis | Default | Description |
|---|---|---|---|
| Exploitation | Non (No) | Exploitation standard | Le mode d'exécution de l'agent. Le bundle standard convient à quelques appels d’outils, et le bundle avancé (Aperçu) convient aux exécutions longues et en plusieurs étapes. Les agents avancés (aperçu) les comparent. |
| Modèle | Non (No) | Modèle d'agent par défaut de l'organisation | Le grand modèle linguistique (LLM) que l'agent utilise. Sélectionnez un modèle dans le sélecteur, qui répertorie les modèles disponibles pour votre organisation. |
| Requête système | Oui (Yes) | Aucun (None) | Le rôle de l'agent et les instructions permanentes : qui il est et comment il doit se comporter. Écrivez des conseils durables qui s'appliquent à chaque invocation, tels que le persona, les contraintes et les attentes de sortie de l'agent. |
| Requête utilisateur | Oui (Yes) | Aucun (None) | La tâche de cette invocation. Référencez les données de workflow avec des expressions, par exemple $vars.start.output.request. |
| Température | Non (No) | 0 | Échantillonnage du caractère aléatoire, de 0 à 1. Des valeurs plus faibles rendent les réponses plus déterministes, et des valeurs plus élevées rendent les réponses plus diversifiées ou créatives. |
| Nombre max. de jetons par réponse | Non (No) | 16384 | Longueur maximale de chaque réponse du modèle. Le plafond dépend du modèle sélectionné. |
| Nombre maximal d’itérations | Non (No) | 25 | Nombre maximal d'étapes de raisonnement et d'appel d'outils avant que l'agent ne s'arrête. Accepte les valeurs de 1 à 100. |
| Garde-fous | Non (No) | Aucun (None) | Règles qui contraignent le comportement et les sorties de l'agent, telles que le blocage du contenu non autorisé ou le maintien de l'agent dans une étendue définie. Les garde-fous s'appliquent à l'agent dans son ensemble. |
Variables de sortie
Déclarez les champs de retour structurés de l'agent dans la section Sorties de l'onglet Paramètres du panneau Propriétés. L'agent ne dispose pas d'une liste distincte de variables d'entrée déclarées. Référencez plutôt les données en amont directement dans les invites, par exemple $vars.start.output.request dans l’invite utilisateur.
Chaque agent commence par une variable de sortie, content, qui contient le texte de la réponse. Ajoutez davantage de variables de sortie pour que l’agent renvoie des données structurées.
Chaque variable de sortie que vous déclarez devient un champ sur l’objet output de l’agent, référencé sous la forme $vars.<agentName>.output.<name>. Donnez à chacun un nom et un type, puis indiquez à l’agent dans l’invite système pour le remplir. L’agent renvoie tous les champs déclarés regroupés dans un seul output structuré.
Ressources
Un agent autonome compose avec des nœuds de ressources que vous connectez à ses handles. Le nœud comporte quatre gestions de ressources, chacune avec sa propre étiquette dans la zone de dessin: Outils, Contexte, Escalades et Mémoire. Connectez une ressource à un handle, puis configurez cette ressource dans son propre panneau de propriétés. Les ressources sont déplacent avec le workflow.
Chaque gestionnaire accepte uniquement son type de ressource correspondant. La zone de dessin bloque les connexions qui ne correspondent pas, de sorte que vous ne pouvez pas, par exemple, connecter un outil au gestionnaire de contexte.
Outils
Connectez des outils au handle Outils pour donner à l’agent les fonctionnalités qu’il peut appeler lors du raisonnement. L’agent décide pendant sa boucle s’il faut appeler chaque outil connecté. Chaque outil comporte une description qui indique à l'agent à quoi sert l'outil.
Écrivez la description sous le titre de l'outil, dans Ajouter une description…. Il apparaît également sous le nom de l'outil sur la zone de dessin.
Les champs affichés en violet, avec une icône en forme d'étoile, sont remplis par l'agent lorsqu'il appelle l'outil. Dans ces champs, décrivez ce que l’agent doit fournir, par exemple « Ce qu’il faut résumer dans les documents et comment présenter le résultat».
Les types d'outils que vous pouvez connecter sont :
- Outils intégrés, trois outils prêts à l'emploi décrits ci-dessous.
- Outils de connecteur, qui permettent à l’agent d’agir dans une application via une connexion, par exemple en envoyant un e-mail ou en créant un enregistrement dans un système en aval.
- Les outils de workflow RPA et de fonction d’API , qui permettent à l’agent d’appeler un processus RPA ou un workflow d’API déployé comme outil.
- Modéliser les outils de serveur MCP , qui donnent à l’agent les outils qu’offre un serveur MCP.
Outils intégrés
Trois outils intégrés sont livrés avec Maestro Automate. Chacune est une ressource autonome que vous connectez à la gestion des outils et configurez dans son propre panneau.
- Analyser les fichiers: analyse un ou plusieurs fichiers avec un LLM pour extraire, synthétiser ou répondre à des questions sur leur contenu. Décrivez les fichiers que l’agent transmettra et la tâche d’analyse à exécuter sur ces derniers.
- Transformation par lots: traite et transforme un fichier CSV ligne par ligne. Fournissez le fichier source, décrivez la tâche par ligne et définissez les colonnes de sortie ajoutées par l'outil. Vous pouvez activer ou désactiver l’ancrage de la recherche Web pour la transformation.
- Résumer: produit une synthèse de documents (jusqu’à 1 000 pages) avec des citations. Fournissez la source, décrivez ce qu’il faut synthétiser et choisissez l’extension de fichier. Lorsque la source est un PDF, vous pouvez activer ou désactiver les citations.
Outils de serveur MCP
Connectez un serveur de protocole de contexte de modèle pour exposer ses outils à l'agent. La sélection d’un ou plusieurs outils sur le serveur ajoute une section Configuration de l’outil sous le sélecteur d’outil, avec un panneau extensible par outil. Dans ce panneau, vous pouvez modifier la description de chaque argument, afficher le schéma complet d'entrée et de sortie de l'outil et choisir comment l'argument obtient sa valeur: l'agent décide au moment de l'exécution, la valeur est liée à une variable d'agent dans l'étendue ou la valeur est corrigé (et éventuellement marqué comme sensible).
La liste des outils d'un serveur MCP peut provenir de deux modes de découverte:
- Mis en cache: prend un instantané des outils du serveur lorsque le serveur est connecté. Utilisez les outils d'actualisation sur le serveur pour extraire un instantané mis à jour à la demande.
- Par défaut, le bouton bascule Actualiser le schéma avant l'appel dans le panneau de configuration d'un outil vérifie à nouveau le schéma actuel du serveur sur le serveur juste avant chaque appel, de sorte qu'une modification de schéma sur le serveur (un paramètre renommé ou ajouté, par exemple) ne nécessite pas une actualisation manuelle. Lorsqu’il est désactivé, l’outil utilise toujours le schéma du dernier instantané.
- Dynamique: découvre les outils au moment de l'exécution à chaque appel, y compris les outils ajoutés au serveur après la configuration du nœud.
Pour les serveurs MCP distants, l’actualisation interroge le point de terminaison de découverte du serveur pour les achèvements asynchrones. Pour les serveurs MCP Platform, qui sont des services natifs UiPath tels que Document Understanding, la liste des outils provient plutôt du catalogue de services UiPath Platform.
Si aucun serveur MCP n’est encore connecté, ajoutez-en un à partir de l’entrée de serveur MCP dans le panneau Ajouter un nœud . Créer un nouveau serveur de groupe d'options par sous-type: Plate-forme, Distant, Commande, Codé et UiPath. Sélectionner Plate-forme ouvre une boîte de dialogue pour créer le serveur dans la solution actuelle, lorsque cette option est prise en charge par votre environnement; les autres sous-types ouvrent la page de création correspondante dans Orchestrator. À propos des serveurs MCP les décrit.
Context
Connectez une ressource de contexte au gestionnaire Contexte pour ancrer l'agent dans vos données. L'agent s'appuie sur ces données d'ancrage tout en raisonnant au lieu de s'appuyer uniquement sur le modèle. Une ressource de contexte pointe vers un index de contexte de votre organisation.
Configurer la façon dont l'agent récupère à partir de l'index, y compris le mode de récupération (sémantique, structuré, DeepRAG ou transformation par lots), la requête, le nombre de résultats à renvoyer, un seuil de pertinence et l'opportunité d'inclure des citations. Pour créer un nouvel index de contexte, utilisez l'action Créer un nouveau contexte dans le panneau d'ajout de gestionnaire, qui ouvre la création d'index dans un nouvel onglet.
Escalade
Connectez le handle des escalades pour acheminer vers un humain lorsque l’agent atteint un incident qu’il ne devrait pas décider seul. L’agent se met en pause, un humain agit sur l’escalade, et l’agent reprend avec le résultat. Vous pouvez associer l’une ou l’autre de ces deux ressources d’escalade:
- Escalade : achemine vers une tâche d'application d'action. Configurez l'application d'action, les destinataires, les notifications, les entrées transmises à l'application et la façon dont le résultat de l'application est mappé à l'agent.
- Escalade de l'application d'action : achemine vers une application d'action codée, avec les mêmes destinataires, la même notification, la même entrée et la même configuration de mappage des résultats.
Une escalade demande:
- Le nom de l’escalade et une description de son objectif
- Application d’action
- Propriétés supplémentaires, telles que le titre, la priorité et les libellés de la tâche
- Tâche
- Notifications exploitables disponibles
Les deux ressources d'escalade sont configurées de la même manière. Choisissez Escalade de l'application d'action lorsque votre cible d'escalade est une application d'action codée plutôt qu'une application d'action standard. L'attachement de l'une des ressources nécessite la version 1.2 ou une version ultérieure du nœud Agent autonome.
Les ressources d'escalade offrent la même vue de schéma de formulaire que les nœuds d'approbation rapide de formulaires rapides , qui montrent un aperçu en ligne du schéma tel que vous le créez, ainsi que la vue JSON.
Mémoire
Connectez un espace de mémoire au handle de mémoire afin que l'agent se souvient de ce qu'il a appris lors des exécutions précédentes. Il rappel les entrées et les résultats de cas passés similaires, réutilise les réponses que les humains ont donnée à ses escalades et s'améliore à partir des commentaires que les utilisateurs ajoutent à ses traces. La mémoire est en aperçu. La mémoire de l'agent décrit les espaces de mémoire et l'option Configuration de la mémoire de l'agent décrit comment en configurer un.
Entrées et sorties
Entrée
L'agent reçoit des données du nœud en amont via sa gestion des entrées et de toutes les expressions $vars que vous référencez directement dans ses invites.
Sortie
L'agent renvoie un objet output contenant les variables de sortie que vous avez déclarées. Le champ par défaut est content, le texte de la réponse. Accédez à un champ avec $vars.<node>.output.<field>, par exemple :
$vars.agent1.output.content
$vars.agent1.output.content
Si l’agent échoue, le nœud remplit un objet error à la place. La gestion des erreurs décrit la forme de l'erreur et la façon de l'acheminer vers celle-ci.
{
"output": {
"content": "string. The agent's response text, plus any output variables you declared."
},
"error": "object. Populated only on failure. See Error handling."
}
{
"output": {
"content": "string. The agent's response text, plus any output variables you declared."
},
"error": "object. Populated only on failure. See Error handling."
}
Branchement sur le résultat
Suivez l'agent avec une Décision pour acheminer en fonction de ce qu'il a renvoyé :
Autonomous Agent → Decision ($vars.agent1.output.content.includes("approved"))
→ True: continue processing
→ False: escalate or terminate
Autonomous Agent → Decision ($vars.agent1.output.content.includes("approved"))
→ True: continue processing
→ False: escalate or terminate
Lisez un champ de sortie déclaré dans un nœud Script en aval :
return $vars.agent1.output.content;
return $vars.agent1.output.content;
Exemples
Exemple 1 : classifier une demande entrante
Ce qu'il fait : classe une demande d'assistance comme un remboursement, une plainte ou une question et renvoie le libellé en tant que sortie structurée.
Invite système :
You are a support triage assistant. Classify each request into exactly one category: refund, complaint, or question. Respond with only the category.
You are a support triage assistant. Classify each request into exactly one category: refund, complaint, or question. Respond with only the category.
Invite de l’utilisateur :
Classify this request: $vars.start.output.request
Classify this request: $vars.start.output.request
Déclarez une variable de sortie category (string). L'agent renvoie :
{
"output": {
"category": "refund"
}
}
{
"output": {
"category": "refund"
}
}
Acheminement sur $vars.agent1.output.category avec un commutateur en aval.
Exemple 2 : résoudre une requête de facture de bout en bout
Ce qu'il fait : répond à la question de facture d'un client en lisant la facture, en ancrant la réponse dans la stratégie, en appelant un workflow lorsqu'il doit agir et en escaladant lorsque le montant dépasse un seuil.
Connectez les gestionnaires de l'agent :
- Contexte : un index de contexte contenant votre stratégie de facturation, de sorte que l'agent base sa réponse sur des conseils approuvés.
- Outils : un outil intégré Analyser les fichiers pour lire la facture jointe et un outil de workflow RPA qui émet un remboursement dans le système de facturation.
- Escalades : une ressource d'escalade qui achemine les cas de haute valeur vers un examinateur dans une application d'action.
Invite système :
You are a billing support agent. Use the billing policy in your context to answer invoice questions. Read the attached invoice before answering. If a refund is warranted and the amount is at or below 200, issue it with the refund workflow. If the amount exceeds 200, escalate for review instead of acting. Always return a structured result.
You are a billing support agent. Use the billing policy in your context to answer invoice questions. Read the attached invoice before answering. If a refund is warranted and the amount is at or below 200, issue it with the refund workflow. If the amount exceeds 200, escalate for review instead of acting. Always return a structured result.
Invite de l’utilisateur :
Resolve this customer query: $vars.start.output.query
Invoice: $vars.start.output.invoiceFile
Resolve this customer query: $vars.start.output.query
Invoice: $vars.start.output.invoiceFile
Déclarez les variables de sortie resolution (string), refundIssued (boolean) et amount (nombre). Un cas résolu renvoie :
{
"output": {
"resolution": "Refund issued for duplicate charge.",
"refundIssued": true,
"amount": 48.5
}
}
{
"output": {
"resolution": "Refund issued for duplicate charge.",
"refundIssued": true,
"amount": 48.5
}
}
Suivez l'agent avec une Décision sur $vars.agent1.output.refundIssued pour ramifier entre un message de confirmation et un chemin de suivi. L'agent gère le cas de dépassement du seuil en escalade, de sorte que la branche n'a pas besoin d'une logique supplémentaire dans le workflow.
Problèmes couramment rencontrés
Une erreur de validation d’entrée s’affiche avant que vous puissiez déboguer. L'invite système et l'invite utilisateur sont requises. Le nœud signale une erreur de validation jusqu’à ce que les deux soient définis.
Une expression pour un élément de boucle ne se résout pas dans l'agent. Lorsque vous faites référence à l'élément actuel d'une Boucle dans une invite, utilisez l'expression de l'élément actuel de la boucle, par exemple $vars.loop1.currentItem.<field>. La référence à une étendue incorrecte laisse la valeur non résolue lors du runtime.
L'agent renvoie du texte lorsque vous attendiez des données structurées. Par défaut, l'agent renvoie uniquement content. Déclarez une variable de sortie pour chaque champ structuré que vous souhaitez et demandez à l'agent dans l'invite système de les remplir.
Un outil de transformation par lots connecté signale une erreur de validation. La transformation par lots nécessite au moins une colonne de sortie. Définissez les colonnes que l’outil doit ajouter avant de déboguer le workflow.
Vous ne pouvez pas connecter une escalade d'application d'action à l'agent. L'escalade de l'application d'action nécessite la version 1.2 ou une version ultérieure du nœud Agent autonome. Mettez à niveau le nœud si la connexion est bloquée.
Prochaines étapes
- Ajouter un agent d'IA à un workflow: le guide de création étape par étape.
- Outils de l'agent: les outils que vous pouvez connecter à l'agent.
- Processus BPMN: appelez un agent déjà déployé.
- Formulaire rapide: acheminer vers un humain pour approbation ou entrée.
- Gestion des erreurs: acheminer sur une exécution d'agent ayant échoué.
- Community (Communauté): posez des questions et partagez des workflows avec d'autres développeurs sur le forum UiPath.
- Ce qu’il fait
- Choix entre un agent autonome et d'autres nœuds
- Ajout d'un agent
- Référence de la configuration
- Variables de sortie
- Ressources
- Outils
- Context
- Escalade
- Mémoire
- Entrées et sorties
- Entrée
- Sortie
- Branchement sur le résultat
- Exemples
- Exemple 1 : classifier une demande entrante
- Exemple 2 : résoudre une requête de facture de bout en bout
- Problèmes couramment rencontrés
- Prochaines étapes