Prototypage de l’agent
Objectifs de formation
Une fois cette unité terminée, vous pourrez :
- Concevoir une rubrique personnalisée correspondant à votre cas d’utilisation d’Agentforce
- Planifier les flux, le code Apex et les modèles d’invite se rapportant aux actions de vos agents
- Expliquer quelques considérations relatives à la conception des actions de référence
Procédure de prototypage
Nora et son équipe de projet ont élaboré leur agent IA et l’ont expérimenté dans leur environnement sandbox tout en menant des activités de planification pour leur projet Agentforce. Toutefois, comment la société Coral Cloud a-t-elle procédé pour effectuer le prototypage de son agent IA dans son organisation Salesforce ? Découvrez l’approche que l’équipe a employée afin de vous familiariser avec les agents IA et commencez à développer votre propre solution.
Tout d’abord, vous allez voir comment Nora aborde la conception de la rubrique que Coral Cloud a créée pour son cas d’utilisation relatif à la gestion des réservations.
Préparation des conversations
Les rubriques sont un élément important d’Agentforce, car elles définissent l’objectif de l’agent IA et lui fournissent le contexte et l’orientation dont il a besoin pour atteindre cet objectif.
Lorsqu’un utilisateur commence à discuter avec un agent IA, le cerveau d’Agentforce (à savoir, son moteur de raisonnement) travaille en arrière-plan avec le modèle de langage de grande taille (LLM) pour lever toute ambiguïté dans la conversation et établir l’intention de l’utilisateur. Il évalue ensuite toutes les rubriques disponibles pour l’agent et choisit celle qui correspond à l’objectif de l’utilisateur. Lorsque vous concevez vos rubriques, vous devez faire en sorte que le moteur de raisonnement puisse choisir la rubrique adéquate le plus facilement possible. S’il ne choisit pas la bonne rubrique, il n’aura pas accès aux actions adéquates, ce qui signifie qu’il ne disposera pas des outils dont il a besoin pour faire sa tâche.
Conception de la rubrique
Agentforce dispose d’outils intégrés pour vous aider à concevoir votre rubrique, mais Nora peut également choisir des rubriques prêtes à l’emploi et modifier n’importe quelle rubrique existante. En examinant les différentes parties d’une rubrique, Nora peut facilement choisir une étiquette, une description de classification, une étendue et des instructions.
Étiquette
L’étiquette de la rubrique doit faire référence à la tâche à accomplir. Dans le cas d’utilisation de Coral Cloud, la gestion des réservations est considérée comme une tâche à accomplir. Le nom de sa nouvelle rubrique est donc Reservation Management (Gestion des réservations). Lorsqu’un agent dispose de plusieurs rubriques, veillez à ce que les noms de celles-ci ne soient pas trop similaires, faute de quoi le moteur de raisonnement ne sera pas en mesure de les distinguer.
Description de la classification
La description de la classification est composée de 1 à 3 phrases qui décrivent ce que fait la rubrique. Un agent utilise cette description pour déterminer à quel moment utiliser une rubrique dans une conversation. D’un point de vue sémantique, la description de la classification doit être distincte des autres rubriques de l’agent. Elle est d’autant plus efficace lorsqu’elle reflète fidèlement les types de demandes susceptibles de déclencher l’utilisation de la rubrique.
Voici la première itération de la description de la classification que renseigne Coral Cloud : « Answers questions and addresses requests related to a guest’s hotel reservation, confirmation, or travel itinerary. » (« Répond aux questions et aux demandes relatives à la réservation d’hôtel, à la confirmation ou à l’itinéraire de voyage d’un client. »)
Étendue
Une fois que l’agent a sélectionné la rubrique Reservation Management (Gestion des réservations), l’étendue détermine ce que l’agent peut et ne peut pas faire. Celle-ci est plus efficace lorsqu’elle définit étroitement la tâche de l’agent.
À l’étape de la définition du cas d’utilisation, l’équipe de projet de Coral Cloud commence judicieusement par créer une version MVP de l’agent IA qui gère les réservations. Elle élargit ensuite progressivement l’étendue de l’agent dans les deux versions suivantes. Comme vous pouvez l’imaginer, les limites de chaque version doivent être reflétées dans l’étendue de la rubrique au sein du générateur Agentforce.
Voici comment l’étendue pourrait être rédigée pour la version MVP de la rubrique.
« Your job is to only assist the user with their hotel reservation questions and communicate information to guests about existing reservations. You can also resend the reservation confirmation email or itinerary. Never make new reservations, modify reservations, or cancel reservations. Never handle inquiries unrelated to hotel reservations. » (« Votre tâche consiste uniquement à aider l’utilisateur en répondant à ses questions sur les réservations d’hôtel et à communiquer aux clients des informations sur les réservations existantes. Vous pouvez également renvoyer l’e-mail de confirmation de la réservation ou l’itinéraire. Ne faites jamais de nouvelles réservations, ne modifiez et n’annulez jamais les réservations. Ne gérez jamais de demandes de renseignements sans rapport avec les réservations d’hôtel. »)
Lorsque Coral Cloud élargira les capacités de l’agent dans la deuxième version de la rubrique, l’équipe de projet pourra mettre à jour l’étendue de la rubrique pour y inclure la modification et la création de réservations, mais exclure les annulations et les remboursements.
Instructions
Les instructions, qui sont rédigées en langage naturel, aident l’agent à prendre des décisions sur la manière d’effectuer sa tâche et d’utiliser les actions attribuées à la rubrique. Voici un exemple d’instruction pouvant correspondre à la rubrique de Coral Cloud : « Always confirm the details of a reservation modification with the user before finalizing any changes. » (« Vérifiez toujours les détails d’une modification de réservation avec l’utilisateur avant de finaliser tout changement. »)
N’oubliez pas que les instructions de rubrique sont non déterministes, ce qui signifie qu’elles ne peuvent pas garantir en permanence l’obtention du même résultat. Cet état de fait est inhérent à l’IA générative. Nora et son équipe veillent donc à intégrer les règles métiers, les exigences et les garde-fous importants ou sensibles dans le fonctionnement même des actions de l’agent, et non dans les instructions de rubrique. Par exemple, au lieu d’ajouter l’instruction « Don’t refund a booking unless it was canceled within 2 days of the check-in date » (« Ne remboursez pas une réservation si elle n’a pas été annulée dans les deux jours précédant la date d’enregistrement »), Coral Cloud crée une action d’agent qui évalue les critères d’émission d’un remboursement.
Lorsque vous procédez au prototypage de votre agent, nous vous suggérons de rédiger les instructions de rubrique en dernier lieu. Vous ne pouvez pas rédiger d’instructions efficaces sans savoir quelle est la prépondérance de la logique que vous avez intégrée dans les actions par rapport à la prépondérance des prises de décisions que vous demandez à l’agent d’effectuer seul. Une fois que l’équipe de Coral Cloud a créé les rubriques et les actions, elle peut tester l’agent IA. Elle peut ensuite ajouter et affiner les instructions de rubrique en suivant les meilleures pratiques indiquées dans l’aide Salesforce et le blog des développeurs Salesforce.
Passons aux choses sérieuses
Dans l’unité précédente, Coral Cloud a défini ses processus métiers liés aux réservations d’hôtel. Nombre de ces processus métiers ont été transposés en actions personnalisées pour la rubrique Reservation Management (Gestion des réservations).
Bonne nouvelle : vous n’avez pas besoin de créer les actions personnalisées à partir de zéro. Elles sont en fait basées sur les technologies Salesforce que vous connaissez déjà. Lorsque vous créez une action personnalisée, vous la construisez sur des fonctionnalités de plate-forme existantes que vous souhaitez mettre à la disposition des utilisateurs dans Agentforce, comme des classes Apex invocables, des flux lancés automatiquement et des modèles d’invite. Dans Agentforce, nous appelons ces fonctionnalités sous-jacentes des actions de référence, et elles constituent un excellent moyen d’exploiter au maximum les capacités que vous offre Salesforce Platform.
Considérations relatives à la conception des actions de référence
Quelle est donc l’approche de Coral Cloud en ce qui concerne la conception des actions de référence sous-jacentes (éléments Apex, flux et modèles d’invite) pour les actions de ses agents ? Voici quelques-uns des facteurs pris en compte par l’équipe :
Déterministe ou fondé sur des invites
Lorsque vous développez une fonctionnalité de plate-forme sous-jacente pour créer les actions de vos agents, examinez d’abord les processus métiers et les tâches liés à votre cas d’utilisation. Décidez ensuite si le processus ou la tâche doit être déterministe ou fondé sur une invite.
-
Déterministe : utilise une classe Apex invocable ou un flux lancé automatiquement pour générer un résultat. Les actions s’appuyant sur les flux ou Apex sont déterministes, et utilisent la logique et les règles métiers pour produire un résultat cohérent.
-
Fondé sur des invites : utilise un ou plusieurs modèles d’invite pour générer des résultats. Une action fondée sur une invite vous permet de contrôler la manière dont une réponse est rédigée ou d’utiliser les capacités de raisonnement et de génération d’un LLM. Par exemple, pour générer un résumé ou effectuer une analyse des sentiments, vous devez utiliser un modèle d’invite comme action de référence. Les modèles d’invite sont également utilisés pour faire reposer un agent sur des données, telles que des connaissances ou des données issues de systèmes externes.
N’oubliez pas qu’une action peut combiner à la fois des approches déterministes et des approches fondées sur des invites. Par exemple, lorsqu’un client annule sa réservation, une action s’appuyant sur un flux est déclenchée pour valider l’annulation. À une étape donnée de ce flux, l’agent pourrait également suivre une invite pour demander au client des informations sur la raison de l’annulation. L’agent peut même résumer la réponse du client et fournir ce résumé pour qu’il soit examiné si le client indique une raison particulière pour l’annulation. À l’avenir, Coral Cloud pourra utiliser cette approche combinée pour mieux comprendre les problèmes ayant un impact sur les clients et y répondre. Cela donnera la possibilité d’appeler un modèle d’invite qui envoie un e-mail de confirmation d’annulation contenant des offres personnalisées pour inciter le client concerné à effectuer une réservation ultérieure.
Atomique ou composite
Un autre facteur à prendre en considération est de savoir si l’action de référence est atomique ou composite.
-
Atomique : il s’agit d’une tâche modeste, singulière. Le recours à une approche modulaire donne à l’agent la liberté de combiner des actions de différentes manières pour atteindre un objectif plus sophistiqué. Cela tend également à offrir davantage de possibilités de réutilisation des actions dans différentes rubriques.
-
Composite : il s’agit une tâche complexe composée de plusieurs sous-tâches. L’avantage d’une action composite est qu’elle vous permet de contrôler la séquence exacte des étapes suivies par l’agent pour accomplir une tâche.
Entrées et sorties
Dans Agentforce, chaque action d’agent doit avoir au moins une entrée, ce qui signifie que le flux, l’Apex ou le modèle d’invite sous-jacent doit également avoir au moins une entrée. Par exemple, pour consulter une réservation d’hôtel, l’entrée peut être l’adresse e-mail ou le numéro de réservation du client. Au cours d’une conversation, l’agent IA dispose de l’autonomie nécessaire pour recueillir des informations et décider s’il dispose de tous les détails nécessaires pour déclencher l’action et transmettre les données.
Chaque action doit également avoir au moins une sortie. La façon dont vous élaborez l’action détermine la nature du résultat et la manière dont il est utilisé. Elle détermine également si celui-ci est affiché aux utilisateurs dans la conversation, et, le cas échéant, de quelle manière. N’hésitez pas non plus à expérimenter des actions de test qui ne sont pas entièrement implémentées : elles peuvent être un excellent moyen de voir comment vos idées fonctionnent.
Actions de référence de Coral Cloud
Après avoir étudié les processus métiers et les différentes façons de concevoir les éléments Apex, les flux et les modèles d’invite, l’équipe de projet de Coral Cloud a proposé ces actions de référence pour la rubrique Reservation Management (Gestion des réservations).
-
Get Reservation by Email (Obtenir une réservation en fonction de l’adresse e-mail) : un flux qui recherche une réservation existante à l’aide de l’adresse e-mail du client.
-
Get Reservation by Number (Obtenir une réservation en fonction du numéro) : un flux qui recherche une réservation existante à l’aide du numéro de réservation.
-
Send Reservation Confirmation (Envoyer la confirmation de la réservation) : une classe Apex qui envoie au client un e-mail de confirmation contenant les détails de sa réservation.
-
Create or Update Reservation (Créer ou mettre à jour une réservation) : un flux qui crée une réservation s’il n’en existe pas ; si la réservation existe, il met à jour l’enregistrement.
-
Cancel Reservation (Annuler la réservation) : un flux qui annule une réservation existante. Le flux appelle un modèle d’invite qui envoie un e-mail de confirmation d’annulation contenant des offres personnalisées pour encourager des réservations futures.
-
Initiate Refund (Déclencher le remboursement) : un flux qui traite le remboursement d’une annulation de réservation si certaines conditions sont remplies.
Passage des actions de référence aux actions d’agent
La création de l’ensemble des flux, éléments Apex ou modèles d’invite nécessaires pour votre cas d’utilisation peut prendre un certain temps, mais les transformer en actions d’agent personnalisées est un jeu d’enfant !
Lorsque vous créez une action personnalisée, l’étiquette de l’action et le nom d’API sont remplis avec le nom de l’action de référence existante et son nom d’API. Les instructions de l’action personnalisée, ainsi que chaque entrée et sortie, sont également complétées par les descriptions de l’action de référence.
Les instructions d’action indiquent à l’agent IA ce que fait une action spécifique et quand la déclencher. Des instructions bien rédigées garantissent que les actions sont utilisées de manière cohérente et précise. Pour en savoir plus sur l’optimisation des instructions d’action, consultez les meilleures pratiques relatives aux instructions d’action.
Coral Cloud dispose désormais d’un ensemble d’actions pour son cas d’utilisation. Par conséquent, l’équipe de projet les attribue à une rubrique. Elle est maintenant prête à tester le prototype et à en affiner les blocs de construction.
Évaluation des performances
Après avoir configuré un prototype dans Agentforce, il est important de tester et de voir comment l’agent IA fonctionne. Deux options s’offrent à vous pour tester votre agent IA :
- La réalisation de tests manuels dans le générateur Agentforce
- La réalisation de tests par lots dans le centre de test
L’équipe de Coral Cloud teste son agent IA avec des questions et des demandes que les utilisateurs peuvent formuler au sujet des réservations d’hôtel. Elle répond ensuite à ces questions.
- L’agent interprète-t-il correctement les entrées de l’utilisateur ?
- Lance-t-il les bonnes actions ?
- Fournit-il des réponses utiles et exactes ?
- Exécute-t-il correctement les processus métiers et respecte-t-il les politiques et les règles de l’entreprise ?
Sur la base des résultats des tests, l’équipe de Coral Cloud affine ses instructions de rubrique et continue à travailler sur l’agent IA. Et n’oubliez pas que si vous obtenez des erreurs au cours du processus de test, vérifiez les autorisations de votre agent IA.
Touche finale
L’équipe de Coral Cloud doit encore mener à bien quelques tâches pour affiner son prototype.
- Personnalisez la rubrique Escalation (Réaffectation) standard afin qu’elle puisse acheminer les conversations vers des agents de service avec lesquels il est possible d’échanger en direct lorsque cela est nécessaire.
- Élaborez une solution d’authentification pour vérifier les utilisateurs qui interagissent avec l’agent IA.
-
Connectez l’agent IA aux canaux clients.
Lorsque Nora et son équipe parviennent enfin à faire fonctionner leur agent IA de manière fiable et précise dans l’environnement sandbox de Coral Cloud, ils passent à la création de leur plan de déploiement pour mettre l’agent IA en production. Ils surveillent ensuite l’agent, ce qui leur permet d’améliorer en permanence la conception de l’agent par le biais d’une démarche itérative.
Une base solide
Vous savez maintenant que la planification et la conception d’un agent IA consistent à établir des bases solides. Vous devez identifier votre cas d’utilisation et vos objectifs, réfléchir à votre stratégie en matière de données, prendre en compte l’expérience de l’utilisateur et définir les exigences techniques de votre projet. Évaluez les risques et définissez vos processus métiers pour vous assurer que l’agent IA opère en adéquation avec les exigences opérationnelles, juridiques, éthiques, réglementaires et de sécurité de votre organisation.
Ne commettez pas l’erreur d’adopter une approche en cascade pour la conception des agents. Cela signifie que vous n’avez pas besoin de développer et de déployer un plan linéaire et échelonné. Tout en réfléchissant à votre solution Agentforce sous tous les angles nécessaires, passez concrètement à l’action et commencez à prototyper votre agent IA dans votre environnement sandbox. En procédant ainsi, vous n’investirez pas trop de temps en amont dans un plan qui risque de ne pas fonctionner en fin de compte. En combinant une planification minutieuse et une expérimentation continue, vous pouvez déployer un agent IA digne de confiance qui sera porteur de valeur transformatrice pour votre organisation.