UiPath Documentation
maestro
latest
false
Guide de l'utilisateur de Maestro
Important :
La localisation du contenu nouvellement publié peut prendre 1 à 2 semaines avant d’être disponible.

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 la palette. Utilisez-la pour les décisions alimentées par 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.

Quand utiliser cela par rapport au processus BPMN​

SituationUtiliser (Use)
Vous souhaitez définir le modèle, les invites et les outils de l'agent directement dans ce fluxAgent autonome
Vous souhaitez invoquer un agent qui est déjà publié dans votre organisationProcessus BPMN
Vous avez besoin d'une branche fixe et basée sur des règles sans raisonnementDécision ou Basculer

Un agent autonome est créé en ligne: sa configuration réside sur le nœud et se déplace avec le flux.

Ajout d'un agent​

Ajoutez le nœud, puis configurez-le dans le panneau Propriétés.

  1. Sélectionnez le bouton + sur un gestionnaire de sortie ou ouvrez la palette de nœuds à partir de la barre d'outils inférieure.
  2. Sélectionnez la catégorie Agent, puis Agent autonome. Flow ajoute le nœud et ouvre son panneau Propriétés.
  3. 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​

ChampRequisDefaultDescription
ModèleNon (No)Modèle d'agent par défaut de l'organisationLe 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èmeOui (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 utilisateurOui (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ératureNon (No)0Caractère aléatoire de l'échantillonnage, de 0 à 1. Des valeurs plus faibles rendent les réponses plus déterministes ; des valeurs plus élevées rendent les réponses plus variées ou créatives.
Nombre max. de jetons par réponseNon (No)16384Longueur maximale de chaque réponse du modèle. Le plafond dépend du modèle sélectionné.
Nombre maximal d’itérationsNon (No)25Nombre 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-fousNon (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 n'a pas de 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 de l’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 se compose avec des nœuds de ressources que vous connectez à ses gestionnaires. Le nœud possède trois gestionnairess de ressources, chacun avec son propre libellé dans la zone de dessin : Outils, Contexte et Escalades. Connectez une ressource à un gestionnaire, puis configurez cette ressource dans son propre panneau Propriétés. Les ressources voyagent avec le flux.

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 gestionnaire Outils pour donner à l'agent des capacités qu'il peut appeler tout en raisonnant. L'agent décide pendant sa boucle si et quand appeler chaque outil connecté. Chaque outil porte une description qui indique à l'agent à quoi sert l'outil, écrivez donc des descriptions claires lorsqu'un outil en expose une.

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'appeler une opération Integration Service, par exemple en envoyant un e-mail ou en créant un enregistrement dans un système en aval.
  • Outils de workflow RPA et de fonction d'API, qui permettent à l'agent d'invoquer un processus RPA ou un workflow d'API publié en tant qu'outil.
  • Outils de serveur Model Context Protocol (MCP), qui exposent les outils publiés sur un serveur MCP.
Outils intégrés​

Trois outils intégrés sont livrés avec Flow. Chacune est une ressource autonome que vous connectez au gestionnaire Outils et que vous 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 concernant leur contenu. Décrivez les fichiers que l'agent transmettra et la tâche d'analyse à exécuter sur ceux-ci.
  • 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 que l'outil ajoute. Vous pouvez activer ou désactiver l'ancrage de la recherche Web pour la transformation.
  • Résumer : produit une synthèse à travers les documents (jusqu'à 1 000 pages) avec des citations. Fournissez la source, décrivez ce que vous voulez 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 de la plateforme - les services natifs UiPath tels que Document Understanding - la liste des outils provient plutôt du catalogue de services de la plateforme UiPath.

Si aucun serveur MCP n’est encore connecté, ajoutez-en un à partir de l’entrée de serveur MCP de la palette de nœuds. Créer de nouveaux serveurs 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. Pour plus de détails, consultez À propos des serveurs MCP.

Panneau de configuration de l’outil de serveur MCP affichant un outil étendu avec des descriptions d’arguments, des types et des contrôles de valeur-source de valeur (l’agent décide, lier à la variable ou valeur fixe).

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 gestionnaire Escalades pour être acheminé vers une personne lorsque l'agent traite un cas qu'il ne devrait pas traiter seul. L'agent se met en pause, un humain agit sur l'escalade et l'agent reprend avec le résultat. Vous pouvez joindre l'une des 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.

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 nœuds d'escalade prennent désormais en charge la même vue de schéma de formulaire déjà disponible sur les nœuds d'approbation rapide humaine , affichant un aperçu en ligne du schéma au fur et à mesure que vous le créez. Auparavant, les nœuds d’escalade proposaient uniquement la vue JSON.

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. Reportez-vous à la section Gestion des erreurs pour connaître la structure des erreurs et savoir comment les traiter.

{
  "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 lui-même le cas de dépassement du seuil en escalade, de sorte que cette branche n'a pas besoin de logique supplémentaire dans le flux.

Problèmes couramment rencontrés​

Une erreur de validation des données d'entrée apparaît avant que vous ne puissiez déboguer. Le modèle, l'invite système et l'invite de l'utilisateur sont tous requis. Le nœud signale une erreur de validation jusqu'à ce que chacun soit défini.

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 flux.

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.

Cette page vous a-t-elle été utile ?

Connecter

Besoin d'aide ? Assistance

Vous souhaitez apprendre ? UiPath Academy

Vous avez des questions ? UiPath Forum

Rester à jour