Passer à la navigation

Procédures

Instructions spécifiques à une tâche que votre agent charge lorsqu’elles sont pertinentes

Vue d’ensemble

Une procédure contient des instructions pour une tâche précise. Chaque procédure comporte un déclencheur qui indique quand elle s’applique et un contenu qui explique quoi faire. Lorsqu’une conversation correspond au déclencheur, l’agent charge la procédure.

Utilisez des procédures lorsque votre agent doit gérer de nombreuses tâches distinctes. Par exemple, un agent de support client peut utiliser une procédure pour chaque type de demande : remboursements, vérification d’identité, récupération de compte ou résolution des problèmes de connexion.

Onglet Procédures dans le Dashboard de l'agent

Types de procédures

Il existe deux types de procédures :

  • Les procédures libres sont rédigées sous forme d’instructions en langage naturel que l’agent interprète et adapte à la situation.
  • Les procédures structurées sont une liste ordonnée d’étapes typées que l’agent exécute toujours de la même manière.

Vous pouvez utiliser les deux types pour un même agent. L’agent sélectionne la procédure pertinente à partir de son déclencheur, quel que soit son type.

Les procédures peuvent s’appeler entre elles. Une procédure libre appelle une autre procédure avec une référence intégrée, et une procédure structurée appelle une autre procédure structurée avec une étape Sous-procédure. Il est courant de conserver la gestion ouverte dans une procédure libre et de transférer à une procédure structurée les parties qui doivent toujours être exécutées de la même manière.

Un agent peut avoir des procédures, un workflow, ou les deux. Lorsque les deux sont présents, chaque procédure est disponible à chaque point du workflow ; il est impossible de limiter une procédure à des nœuds précis du workflow. La plupart des agents reposent sur l’une ou l’autre approche, mais elles peuvent être combinées.

Quand utiliser les procédures

Chaque agent dispose d’un prompt système. Les procédures et les workflows sont deux moyens d’ajouter une structure, et un agent peut utiliser les deux. Choisissez un point de départ selon le degré de variation possible de la conversation.

BesoinUtiliserPourquoi
Agent simple de preuve de conceptPrompt système uniquementLe plus rapide à configurer et à itérer, mais un prompt unique devient difficile à gérer à mesure que le périmètre de l’agent s’élargit.
Tâche dont l’agent peut adapter la formulation et l’ordreProcédure libreToute la conversation reste dans le contexte d’un même LLM. L’agent adapte donc la formulation et l’ordre, et peut gérer les changements inattendus. Utilise davantage la fenêtre de contexte.
Tâche dont les étapes doivent toujours être exécutées de la même manièreProcédure structuréeChaque étape est exécutée dans l’ordre que vous définissez, toujours de la même manière, et vous la rédigez sous forme de courte liste d’étapes.
Contrôle complet sur des embranchements complexes et des cas limitesWorkflowS’exécute comme un graphe de sous-agents que vous concevez et connectez vous-même, avec un contrôle total sur les embranchements et le modèle utilisé à chaque étape.

Les procédures libres constituent le choix par défaut. Elles sont les plus rapides à rédiger, se lisent comme un document afin que les équipes non techniques puissent en assurer la gestion, et permettent à l’agent de se reprendre lorsqu’une conversation sort du script. Privilégiez une procédure structurée lorsque le coût d’une étape ignorée ou réorganisée est élevé, par exemple pour l’authentification, l’escalade ou une transaction financière. Optez pour un workflow lorsque vous avez besoin d’une logique de routage ou d’un contrôle du modèle à chaque étape qu’aucun type de procédure ne propose.

Gérer les procédures

Le Dashboard est le moyen recommandé pour rédiger des procédures. Utilisez la CLI ou l’API pour gérer les procédures par programmation ou les intégrer à vos outils de déploiement.

Ouvrez votre agent dans le Dashboard, puis sélectionnez Procédures. Utilisez + pour créer une procédure libre ou structurée. Vous pouvez regrouper les procédures dans des dossiers depuis le même menu. Consultez les pages Procédures libres et Procédures structurées pour obtenir des conseils de rédaction.

Choisir les procédures pour chaque conversation

Par défaut, chaque conversation peut utiliser toutes les procédures de l’agent, et l’agent ne charge une procédure qu’après que la conversation correspond à son déclencheur. Votre application en sait souvent plus avant le début de la conversation : qui est l’utilisateur, dans quelle région il se trouve ou le motif de son appel. Transmettez les ID des procédures dans les données client d’initiation de la conversation pour utiliser ces informations. Vous décidez quelles procédures l’agent peut utiliser et lesquelles il suit dès le premier tour.

ChampFonctionPourquoi l’utiliser
procedure_idsLimite la conversation à ces procédures. Un tableau vide désactive toutes les procédures de l’agent.Donnez à chaque utilisateur uniquement les procédures qui le concernent, par exemple masquez les procédures de compte pour un utilisateur qui ne s’est pas connecté. Utilisez-le aussi lorsque des procédures ont des déclencheurs similaires que vous ne pouvez pas éviter, comme une procédure de remboursement par région. Transmettez uniquement la région de l’utilisateur afin que l’agent ne puisse pas suivre la procédure d’une autre région.
start_procedure_idsDémarre ces procédures libres avec la conversation, afin que l’agent les suive dès le premier tour. Accepte jusqu’à cinq ID.Répondez plus vite lorsque vous connaissez déjà la tâche de l’utilisateur, par exemple grâce à un choix dans un menu SVI, à la page qui héberge le widget ou aux données CRM.

Une procédure dans start_procedure_ids est déjà chargée lorsque l’utilisateur parle pour la première fois, l’agent évite donc l’appel au LLM qui l’aurait chargée. Toute procédure active reste dans le prompt à chaque tour, qu’elle ait été lancée par l’agent ou par votre application. Une procédure démarrée dont la conversation n’a jamais besoin ajoute néanmoins son contenu à chaque tour ; ne démarrez donc que les procédures que la conversation est susceptible d’utiliser.

1

Autoriser la sélection de procédures

Le remplacement Procédures est désactivé par défaut. Activez-le sur chaque agent qui doit accepter des ID de procédure provenant du client.

Ouvrez votre agent dans le Dashboard, sélectionnez l’onglet Sécurité, puis activez le remplacement Procédures.

2

Transmettre les ID au démarrage de la conversation

Si le remplacement Procédures n’est pas activé sur l’agent, ou si un ID n’est pas valide, la conversation ne démarre pas.

Obtenez les ID de procédure avec Lister les procédures. Ajoutez procedure_ids, start_procedure_ids ou les deux aux données client d’initiation de la conversation :

Payload d'initiation de la conversation
{
"type": "conversation_initiation_client_data",
"procedure_ids": [
"agtprc_4101k8f3w2pqv6xs9mhdr0tz7n3b",
"agtprc_2301k8f3xq9zfa7tkrqs6m4bdn5e",
"agtprc_7801k8f3yt4mfzh2xbq9d0vcpw1r"
],
"start_procedure_ids": ["agtprc_4101k8f3w2pqv6xs9mhdr0tz7n3b"]
}

L’agent démarre la conversation avec la première procédure déjà en cours d’exécution. Il peut toujours démarrer les deux autres lorsque la conversation correspond à leurs déclencheurs.

Les SDK de conversation Python et JavaScript n’envoient pas procedure_ids ni start_procedure_ids. Pour utiliser ces champs, envoyez vous-même le message d’initiation via WebSocket.

Les deux champs suivent ces règles :

  • Chaque ID dans procedure_ids doit appartenir à l’agent. Si une procédure sélectionnée appelle des sous-procédures, incluez aussi ces sous-procédures.
  • Chaque ID dans start_procedure_ids doit correspondre à une procédure libre. Lorsque vous transmettez également procedure_ids, chaque ID doit aussi figurer dans cette liste.
  • procedure_ids s’applique uniquement à l’agent avec lequel la conversation démarre. Il ne s’applique pas après un transfert d’agent.
  • Les procédures démarrées comptent parmi les cinq procédures actives indiquées dans les Limites. L’historique de la conversation enregistre chacune d’elles comme un appel d’outil start_procedure.

Limites

  • Le contenu d’une procédure est limité à 50 000 caractères.
  • L’agent conserve les cinq procédures démarrées les plus récemment dans le contexte. Lorsque davantage de procédures ont été démarrées dans une même conversation, le contenu, les outils intégrés et les documents de la base de connaissances des procédures libres les plus anciennes sont retirés du prompt. Gardez les procédures ciblées et utilisez des sous-procédures afin que peu d’entre elles soient actives simultanément.
  • Vous ne pouvez pas modifier le type d’une procédure après sa création. Pour passer d’une procédure libre à une procédure structurée, ou inversement, créez une nouvelle procédure et mettez à jour toutes les références correspondantes.
  • Les procédures appartiennent à un seul agent. Elles ne peuvent pas être partagées entre plusieurs agents ni stockées comme ressources au niveau du Workspace.
  • La duplication d’un agent copie ses procédures au lieu de les partager. Les copies reçoivent de nouveaux ID de procédure ; les références dans l’agent dupliqué doivent donc utiliser ces nouveaux ID.
  • Les procédures ne peuvent pas être limitées à des nœuds précis du workflow. Lorsqu’un agent utilise les deux, chaque procédure est disponible depuis chaque nœud.
  • Les procédures structurées ne peuvent pas référencer des documents de la base de connaissances.