Capture d'écran de Salesforce Einstein Copilot montrant des actions de copilote personnalisées et leur test dans l'interface du générateur de copilote avec un plan dynamique pour les recommandations de formation sur les composants Web Lightning et les flux de Salesforce.
13
/
06
/
2024

Einstein Copilot : l'assistant conversationnel pour formuler vos demandes à l'IA de Salesforce

IA
Salesforce
par
Rémi
Le Guin

Dans nos deux précédents articles, nous avons introduit l'intelligence artificielle générative et plus spécifiquement prompt builder pour construire des modèles de requêtes à l'IA. Aujourd'hui, voyons comment utiliser Einstein Copilot comme un assistant conversationnel avec l'IA pour lui formuler des requêtes en langue humaine avec un cas concret de recherche de formations sur Salesforce issues du catalogue Blueforma de Guimini. Cet article contient plusieurs liens vers de la littérature sur Einstein Copilot (documentation technique, articles de blog et vidéos de présentation) si vous voulez approfondir vos connaissances.

Einstein est comme un Chat GPT directement intégré dans la console Salesforce mais avec deux avantages : Copilot a accès à la donnée du CRM donc il a déjà connaissance du contexte de l'activité et Copilot inclut une couche de sécurisation de votre donnée (Einstein Trust Layer). Guimini possède un catalogue de formations "Blueforma" que nous dispensons aux administrateurs et développeurs Salesforce pour progresser sur leurs expertises. Ici, nous demandons à l'assistant Copilot de nous suggérer une formation sur comment auditer une org Salesforce.

Capture d'écran de l'interface utilisateur de "GUIMINI" affichant une liste de modules de formation Salesforce. L'interface inclut des onglets de navigation tels que 'Ventes', 'Accueil' et 'Comptes', parmi d'autres. Un assistant de chat nommé 'Einstein' est également visible, proposant son aide pour la rédaction et la révision d'emails, ainsi que pour la recherche d'informations.
Interface de la plateforme GUIMINI présentant les modules de formation Salesforce et l'assistant IA intégré 'Einstein', conçu pour améliorer la productivité des utilisateurs en assistant avec diverses tâches.

Nous allons voir comment cette requête a été paramétrée pour renvoyer une réponse appropriée. Mais d'abord, nous devons comprendre comment fonctionne les actions de Copilot.

Fonctionnement des actions Copilot

Lorsqu'un utilisateur fait une requête dans l'assistant conversationnel, Einstein Copilot fait une analyse sémantique et en déduit le type d'action qu'il faut déclencher parmi celles qui existent, en standard ou en custom. Une fois les actions à effectuer identifiées, Copilot extrait des paramètres de la requête de l'utilisateur aux outils d'automatisme qui exécutent ces actions (pour l'instant : prompt, flow ou APEX). Copilot passe ensuite à l'action suivante jusqu'à ce que le plan soit exécuté.

Diagramme illustrant le processus d'action de l'Einstein Copilot de Salesforce, qui se divise en quatre étapes : Conversation, Planification, Exécution et Résultat. La première étape montre un utilisateur engageant Einstein pour une tâche. La deuxième étape montre Einstein générant un plan d'action pour identifier et réviser un enregistrement de courriel. La troisième étape détaille l'exécution à travers des services comme Flows, Apex, et APIs, avec une intégration des données du CRM et du Data Cloud. La dernière étape montre Einstein générant une réponse sous forme de courriel prêt à être envoyé.
Schéma explicatif du fonctionnement d'Einstein Copilot dans Salesforce, montrant comment l'assistant IA engage avec les utilisateurs pour transformer la conversation en actions concrètes, facilitant ainsi les processus d'affaires grâce à l'automatisation intelligente.

Copilot propose des actions standards déjà pré-paramétrées :

  • Rechercher des enregistrements
  • Résumer des enregistrements
  • Rédiger un brouillon d'email
  • Rechercher des articles knowledge
  • Mettre à jour des enregistrements

D'autres actions sont prévues comme la création d'enregistrement, la mise à jour de plusieurs enregistrements ou la création de rapports. Il existe aussi des actions qui sont propres aux clouds auxquels vous souscrivez :

Infographie présentant quatre rôles professionnels clés et leurs responsabilités associées dans une entreprise: Ventes, Service, Marketing, et Commerce, chacun accompagné de portraits stylisés et de listes de tâches spécifiques comme les emails de vente, les articles de connaissance, la création de contenu pour campagnes et les descriptions de produits.
Représentation des diverses fonctions au sein d'une organisation, illustrant comment chaque département—Ventes, Service, Marketing et Commerce—contribue à des objectifs spécifiques à l'aide d'outils et de stratégies ciblés pour optimiser leur efficacité.

Il est aussi possible de paramétrer ses propres actions personnalisées et ainsi faire appel à quatre outils différents :

  • Les modèles d'invite
  • Les flux
  • Le code Apex
  • Des APIs tierces (bientôt)

Voyons comment ces actions personnalisées de Copilot sont paramétrables.

Paramétrage d'une action Copilot personnalisée

Pour commencer, notons que notre action de recherche de formation Blueforma en base n'a pas vraiment besoin de l'intelligence artificielle de Copilot. Il serait plus simple et moins onéreux de simplement afficher un champ de recherche traditionnel, sans IA. Et si nous voulions absolument de l'IA, ce cas d'usage pourrait aussi convenir à l'action Copilot standard de recherche dans les articles Knowledge. Les formations Guimini pourraient alors être rédigées comme des articles dans la base de connaissance. Mais pour les besoins de la démonstration, reproduisons une fonctionnalité de recherche custom par l'IA.

Einstein Copilot est disponible après activation des fonctionnalités d'intelligence artificielle générative dans la configuration de Salesforce.

Capture d'écran de l'interface de configuration d'Einstein dans la plateforme GUIMINI. La barre latérale gauche montre différentes options telles que "Assesseurs Einstein", "IA générative Einstein", et "Einstein Copilot Studio (bêta)". La section principale affiche l'option "Configuration d'Einstein" avec un interrupteur pour activer ou désactiver cette fonctionnalité, indiquant que celle-ci est actuellement activée pour améliorer les données Salesforce et créer des expériences personnalisées.
Interface de configuration d'Einstein sur GUIMINI, montrant les options pour activer les capacités d'intelligence artificielle générative afin d'enrichir l'interaction utilisateur et les données dans Salesforce.

Le menu de configuration de Copilot apparaît alors, avec un Copilot préparamétré. Pour l'instant, il n'est possible d'en avoir qu'un seul mais Salesforce prévoit de pouvoir en paramétrer plusieurs. Il serait alors possible de créer plusieurs Copilot en donnant à certains profils utilisateurs l'accès à certaines actions mais pas à d'autres.

Capture d'écran de l'interface de configuration de "Einstein Copilot Studio (Beta)" sur la plateforme GUIMINI. La navigation latérale gauche liste divers outils de la plateforme, y compris "Einstein" avec plusieurs sous-menus comme "Assesseurs Einstein" et "IA générative Einstein". La section principale affiche trois options : "Suivez le parcours avec le copilote", "Personnalisez le copilote avec des actions", et "Réussir avec la documentation", chacune avec des icônes descriptives et des liens vers plus de ressources.
Interface utilisateur de l'Einstein Copilot Studio dans sa version bêta sur GUIMINI, montrant les options disponibles pour explorer, personnaliser et réussir avec l'IA générative d'Einstein, facilitant l'intégration avancée et personnalisée dans les processus d'affaires Salesforce.

Plusieurs actions sont proposées en standard par Salesforce en fonction des licences auxquelles vous souscrivez. Pour cette démo, nous avons aussi créé deux actions personnalisées "Training Course Recommandation". Elles font la même chose, rechercher des formations, mais l'une utilise un flow pour les requêter et l'autre utilise l'Apex.

 Capture d'écran de la page "Actions Einstein Copilot (Beta)" dans la configuration de la plateforme GUIMINI. La navigation latérale gauche montre plusieurs options sous l'onglet 'Einstein', incluant 'Assesseurs Einstein' et 'IA générative Einstein'. La section principale liste diverses actions de copilote telles que "Draft or Revise Sales Email", "Identify Object by Name", et "Training Course Recommendation", avec des détails sur les instructions, la source, le type d'action, la dernière modification, et le créateur de l'action.
Vue détaillée des Actions Einstein Copilot disponibles sur GUIMINI, permettant aux utilisateurs de configurer et de personnaliser les tâches IA pour une efficacité optimale dans leurs opérations Salesforce.

Au moment de créer une action Copilot personnalisée, vous pouvez choisir d'utiliser parmi trois technologies : un prompt, un flow ou l'Apex. En fonction de l'action que vous souhaitez réaliser en réaction à la requête, une techno sera plus appropriée qu'une autre. Mais d'abord, regardons l'instruction passée à Copilot. Ici, nous expliquons en langue humaine à l'action Copilot qu'elle doit se déclencher lorsque l'utilisateur demande explicitement à l'assistant conversationnel de lui suggérer des formations :

"Give recommandation about training courses on Salesforce. You must call Training_Course_Recommandation only if the user explicitly asks for recommandations (e.g. : 'Recommandations', 'Suggestions', Advices')."

C'est en quelque sorte notre trigger. C'est sur la base de cette instruction que Copilot analysera les demandes des utilisateurs pour savoir s'il doit déclencher cette action.

Si c'est effectivement cette action qui doit être déclenchée, alors Copilot exécutera le flow "Training_Course_Research". Ce flow reçoit une variable "keyword". Ce mot clé est le thème de la formation à rechercher. Par exemple : "Lightning Web Component". Ce mot clé est automatiquement extrait de la requête de l'utilisateur par l'IA. Le flow renvoie une liste de formations "trainingCourses" en output.

Capture d'écran détaillant la configuration d'une action Einstein Copilot nommée 'Training Course Recommendation (Apex)' dans Salesforce, incluant les paramètres d'entrée et de sortie pour recommander des cours de formation, avec des instructions spécifiques pour le déclenchement de l'action basée sur les requêtes utilisateur dans un environnement Apex
Interface de configuration d'Einstein Copilot dans Salesforce montrant les détails de l'action personnalisée 'Training Course Recommendation (Apex)'. Cette action utilise l'Apex pour fournir des recommandations de formations basées sur des mots-clés spécifiques, illustrant la complexité et la personnalisation possibles avec les actions de Copilot

Une fois l'action de Copilot configurée, il est possible de la tester dans menu de configuration du Copilot. Nous pouvons y voir les actions assignées à ce Copilot sur le côté gauche. Sur le côté droit, formuler une requête permet de voir comment se comporte l'action de Copilot au centre. Dans la capture d'écran ci-dessous, nous demandons conseil pour deux types de formation, sur les Lightning Web Components et sur les flows. Nous pouvons voir que Copilot ne bulkifie pas l'appel au flow : il appelle deux fois le flow avec à chaque fois une seule variable et consolide les résultats à la fin. C'est à prendre en compte si vos traitements font beaucoup d'appels en base…

Capture d'écran de l'interface du Générateur de copilote Einstein dans sa version Beta sur GUIMINI. L'écran montre plusieurs volets : à gauche, la liste des actions de copilote; au centre, le plan dynamique avec des exemples d'entrées et de sorties pour la recommandation de cours de formation; à droite, un aperçu de conversation avec Einstein assistant AI demandant et fournissant des recommandations sur les formations Salesforce liées à "Lightning Web Components" et "flows".
Illustration du fonctionnement du Générateur de copilote Einstein sur GUIMINI, mettant en évidence comment les utilisateurs peuvent interagir avec l'IA pour obtenir des recommandations personnalisées de cours de formation, augmentant ainsi l'efficacité et la précision dans la gestion des ressources de formation Salesforce.

Comme avec Prompt Builder, soignez vos tests ! Elaborez une base de requêtes de test comme un cahier de recette. Les requêtes à l'IA paramétrées dans Prompt et Copilot Builder doivent faire l'objet d'une méthodologie aussi rigoureuse qu'avec nos algorithmes traditionnels : tester avec des cas passants et non passants, en tant qu'utilisateur, tester les performances et la sécurité…

Le flow appelé est de type autolaunched et se paramètre de manière identique aux flows que nous connaissons déjà. Une requête GET classique recherche des formations avec le "keyword" fourni en input et assigne les formations récupérées à la variable de sortie "trainingCourses".

Capture d'écran de l'interface du Flow Builder dans GUIMINI, intitulée "Training Course Research - V1". Cette interface montre un workflow automatisé pour la recherche de formations. À gauche, le gestionnaire de flux avec des ressources telles que variables et collections d'enregistrements est visible. Au centre, les étapes du flux incluent "Get Training Courses" et "Assign Training Courses". À droite, une fenêtre de configuration détaille les options pour filtrer et récupérer des enregistrements de formations basées sur des mots-clés spécifiés
Interface du Flow Builder dans GUIMINI montrant comment configurer et automatiser la recherche de formations Salesforce, facilitant l'accès à des formations personnalisées basées sur des critères spécifiques.

En Apex, la configuration de l'action Copilot est identique. L'instruction et les variables d'entrée et de sortie sont les mêmes.

Capture d'écran détaillant l'action de copilote "Training Course Recommendation (Apex)" dans l'interface de configuration GUIMINI. La page affiche les informations de l'action, y compris son API, sa description, et les paramètres d'entrée et de sortie. L'interface montre également des options pour modifier l'attribution de copilote, avec un accent sur les instructions pour obtenir des recommandations de cours de formation basées sur des mots-clés spécifiques.
Détail de l'action de copilote "Training Course Recommendation (Apex)" dans GUIMINI, montrant comment les utilisateurs peuvent configurer et utiliser des fonctions personnalisées pour améliorer la gestion des recommandations de formations Salesforce, alignées sur les besoins spécifiques des utilisateurs.

Là aussi, Copilot ne bulkifie pas les appels à l'Apex, il appellera la méthode invocable autant de fois qu'il y a de variables d'entrée.

Capture d'écran de l'interface du Générateur de copilote Einstein dans sa version Beta sur GUIMINI, affichant le processus de recommandation de cours de formation. À gauche, on voit une liste d'actions disponibles. Au centre, le plan dynamique montre les entrées et les sorties pour deux requêtes de formation spécifiques : "Lightning Web Components" et "flows". À droite, un aperçu de conversation avec l'assistant AI Einstein montre une interaction où Einstein fournit des recommandations de cours basées sur les requêtes de l'utilisateur.
Utilisation du Générateur de copilote Einstein sur GUIMINI pour fournir des recommandations de formation personnalisées, illustrant l'intégration efficace de l'IA pour optimiser les ressources éducatives et la formation continue dans un contexte professionnel

L'Apex prend en charge la logique à l'aide d'une méthode invocable. Ici nous récupérons le mot clé "keyword" pour effectuer une requête de type SOSL afin de récupérer une liste de formations. Les connaisseurs des méthodes invocables reconnaîtront qu'il faut renvoyer une liste de listes (sic) !

Capture d'écran de code Apex dans Salesforce, montrant la classe "TrainingCourseResearch". Le code inclut une méthode marquée comme @InvocableMethod, permettant de récupérer des formations sur Salesforce en utilisant une liste de mots-clés spécifiés dans les entrées de type "FlowInput". La méthode effectue une requête SOQL pour retourner des formations correspondant au mot-clé fourni.
Extrait de code de la classe Apex "TrainingCourseResearch" dans Salesforce, démontrant l'utilisation de méthodes invocables pour intégrer des recherches personnalisées de cours de formation directement dans les flux automatisés de l'entreprise.

Ce que l'Apex vous retourne peut-être (un peu) formaté à l'affichage. Consultez cet article pour connaître les possibilités de réponse par l'Apex.

Attention vous ne pourrez pas changer le format des paramètres de sortie (ce que vous "return" l'Apex) une fois votre action Copilot finalisée. Si vous voulez changer l'output, vous devrez recréer l'action Copilot.

N'oubliez pas de donner aux utilisateurs l'accès à votre flow ou à votre classe Apex de la même manière que vous le feriez avec un screen flow par exemple. Sinon ils ne pourront pas utiliser l'automatisme appelé par l'action Copilot.

Il faut souligner l'importance des descriptions dans le contexte de Copilot. C'est sur ces descriptions que va se baser le plan d'exécution de vos actions. Comme pour les prompts, les requêtes à l'IA doivent être anticipées et paramétrées par l'administrateur Salesforce. Si l'utilisateur pose une question non-prévue, l'assistant Copilot vous répondra simplement qu'il ne sait pas répondre. Encore une fois : pas de magie !

Une limitation importante doit être signalée : seuls les objets disponibles dans la User Interface API sont utilisables dans Einstein Copilot. Ce qui exclut par exemple les activités (tâches et événements).

Quelques conclusions générales

Sur la structure, une action de l'intelligence artificielle n'est donc pas fondamentalement différente de notre manière d'utiliser des algorithmes : nous passons quelques paramètres d'entrée et la machine nous retourne un résultat. Les différences sont de deux ordres.

Premièrement, l'IA est une boîte noire. Avec les algorithmes, nous pouvons faire du reverse engineering et comprendre pourquoi le traitement en est arrivé à telle ou telle conclusion. Avec l'IA, nous ne pouvons pas remonter le fil du raisonnement. L'IA est comme un être humain, nous ne comprenons pas toujours pourquoi elle agit dans un sens ou dans l'autre.

Deuxièmement, la manière dont est paramétrée l'IA sera déroutante au début pour les administrateurs et développeurs. Nous sommes habitués à développer des solutions sur Salesforce avec du clic et avec du code. Désormais, nous devrons aussi le faire avec des instructions en langue humaine. Ce n'est pas encore naturel pour nous et nous devrons nous organiser pour que nos développements liés à l'IA puissent être sécurisés, performants et maintenables. De la même manière que notre code Apex était particulièrement désorganisé lorsque cette technologie a commencé à être utilisée dans la seconde moitié des années 2000, les développements liés à l'IA mettrons du temps avant de généraliser des bonnes pratiques.

Gardez en tête de toujours vous demander en quoi Einstein Copilot pourrait améliorer l'expérience utilisateur par rapport à une autre interface. Il est préférable de ne pas utiliser l'intelligence artificielle quand nous pouvons nous en passer : c'est coûteux non seulement financièrement mais aussi écologiquement.

Communiquez clairement auprès de vos utilisateurs ce qu'ils peuvent requêter à l'assistant Copilot et ce qu'ils peuvent en attendre. Si vous ne les formez pas un minimum, ils formuleront de mauvaises requêtes et seront déçus par l'outil. Et n'oubliez pas de les solliciter pour vous donner des feedbacks !

Autres ressources

Get Started with Einstein Copilot Custom Actions

Einstein Copilot In-Depth: What It Is, How It Works, and What It Can Do

Get Started with Einstein Copilot Actions for Developers

Learn Best Practices for Creating Einstein Copilot Actions

Parcours Trailhead : Premiers pas avec Einstein Copilot, le dernier module donne accès à une org trial pour tester Copilot

9 Ways an AI Assistant Can Help Out at Work

Explorez comment maximiser le potentiel de votre CRM avec nos solutions Salesforce disponibles ici.


Pour rester informé de toutes nos actualités, suivez-nous sur LinkedIn !

Bénéficiez de votre solution Salesforce sur mesure
Contactez-nous
Inscrivez-vous à notre newsletter
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
close