- Vous pouvez connecter rapidement le GPT d’OpenAI pour un usage basique, ou bien créer un bot entièrement personnalisé avec une logique de conversation sur mesure et des prompts IA pour un contrôle plus poussé.
- Un bot personnalisé consiste à créer un intervieweur pour recueillir les réponses des utilisateurs, une logique pour vérifier si suffisamment d’informations ont été collectées, puis une étape de recommandation pour générer un retour.
- Les bots avancés utilisent la génération de texte par IA pour des dialogues dynamiques et les cartes Tâche IA pour analyser les conversations, extraire des informations et décider des prochaines étapes.
Si vous souhaitez créer un chatbot GPT personnalisé pour WhatsApp, c’est plus simple que jamais. Il existe de nombreuses façons de passer de la conception à la mise en production, que vous utilisiez un GPT personnalisé ou une plateforme de création de chatbots.
Dans cet article, je vous propose un guide étape par étape pour créer votre chatbot GPT et le connecter à WhatsApp. Je fournirai également des instructions de code précises et des exemples pour vous accompagner dans le processus.
Notre intégration WhatsApp intégrée facilite la connexion de votre chatbot alimenté par GPT. Si vous débutez avec les chatbots WhatsApp, consultez notre guide sur les meilleurs créateurs de chatbots WhatsApp du marché (beaucoup proposent une version gratuite).
1. Connectez-vous à WhatsApp
Avant de commencer, assurez-vous de disposer d’un compte Facebook Business et d’un numéro de téléphone vérifié : ils sont indispensables pour intégrer WhatsApp à votre chatbot.
Suivez ces étapes simples pour activer le canal WhatsApp dans votre compte Botpress Cloud :
- Allez dans la section « Canaux ».
- Sélectionnez « WhatsApp » et saisissez les informations de votre entreprise.
- Liez votre compte Facebook Business et configurez votre numéro WhatsApp.
2. Choisir un modèle ou construire soi-même
Option 1 : WhatsApp avec Assistant IA GPT personnalisé d’OpenAI
En passant directement par OpenAI, vous avez moins de contrôle sur le comportement de votre GPT personnalisé. Cependant, c’est une option rapide et simple qui peut convenir à vos besoins.
Vous pouvez même ajouter des workflows avancés à votre Assistant OpenAI en utilisant notre modèle d’Assistant IA ChatGPT.
Option 2 : Plus de contrôle sur l’Assistant IA GPT personnalisé d’OpenAI
Si vous souhaitez créer un chatbot avec un niveau de personnalisation plus élevé, cette option est faite pour vous.
À titre d’exemple, nous allons créer un bot simple de type interview GPT. Le bot va recueillir des informations auprès de l’utilisateur via une conversation libre, puis proposer une recommandation basée sur ses réponses.
D’abord, nous poserons à l’utilisateur des questions sur les paramètres souhaités dans la conversation, puis nous attendrons sa réponse. Nous appellerons cela la Boucle de questions.
Ensuite, nous vérifierons si nous avons tous les paramètres nécessaires en fonction de la réponse de l’utilisateur. Si c’est le cas, nous passons à l’étape suivante. Nous appellerons cela la Logique.
Enfin, nous transmettrons les réponses de l’utilisateur à la carte Générer du texte IA pour obtenir une recommandation personnalisée. Nous appellerons cela la Recommandation.
Par la suite, vous pourrez connecter ce résultat à un flux où vous proposerez des consultations, des formations ou tout autre service adapté à vos offres.
Dans Botpress Studio, la vue d’ensemble du flux ressemblera à ceci :

3. Créer l’intervieweur
Nous allons d’abord utiliser une carte Générer du texte pour formuler la bonne question et la bonne réponse. Le but de l’intervieweur est de poser les bonnes questions pour obtenir les informations recherchées.
Nous allons créer notre dialogue souhaité avec les prompts ci-dessous :
D’abord, nous transmettrons notre persona, qui doit définir le ton de la conversation et la manière dont les questions et les échanges seront formulés :
You are Dale Career-negie, an HR interview bot inspired by Dale Carnegie. Your role is to facilitate a structured interview process focusing on enhancing interpersonal communication and professional development.
Here are your instructions:
- Introduce yourself to the candidate at the beginning of the conversation.
- Keep your responses concise and under 75 words.
- Focus on asking one question at a time from the specified categories.
- Aim to foster an environment that encourages candid and thoughtful responses.
Here are the areas we want to focus on:
- Personal Introduction
- Strengths
- Conflict Management
Your primary tasks involve asking candidates about their personal introduction, strengths, and conflict management approaches.
Conversation History:
{{conversation.SummaryAgent.transcript}}
bot:Ensuite, nous ajouterons les instructions que notre agent (RH) devra suivre lors de l’entretien :
Here are your instructions:
- Introduce yourself to the candidate at the beginning of the conversation.
- Keep your responses concise and under 75 words.
- Focus on asking one question at a time from the specified categories.
- Aim to foster an environment that encourages candid and thoughtful responses.Ajoutez la tâche principale ainsi que les instructions spécifiques à la mission :
Here are the areas we want to focus on:
- Personal Introduction
- Strengths
- Conflict Management
Your primary tasks involve asking candidates about their personal introduction, strengths, and conflict management approaches.Nous transmettrons à notre bot l’historique des échanges précédents pour qu’il comprenne ce qui a été dit, ce qui manque, etc.
Conversation History:
{{conversation.SummaryAgent.transcript}}Note importante : n’oubliez pas le « bot : » à la fin. Ce n’est pas une erreur : cela aide le bot à comprendre que c’est à lui de répondre.

Ensuite, nous voulons afficher le message ou la question générée par notre carte Générer du texte IA, donc nous ajouterons un Envoi de message de type Texte et y placerons la variable issue de la carte précédente.

Puis, le bot doit attendre la réponse de l’utilisateur, donc nous ajouterons un Attendre la saisie de l’utilisateur.

Vous pouvez remplacer ces deux éléments par une seule carte Capturer une information brute, mais il faudra modifier plusieurs options. Consultez notre documentation et nos vidéos pour plus d’informations.
4. Créer la logique
Maintenant que nous avons créé l’intervieweur, le bot attendra la réponse de l’utilisateur pour extraire les informations selon l’étape de la conversation.
Nous voulons maintenant vérifier si toutes les informations nécessaires ont été recueillies. Si oui, nous passons à la Recommandation. Sinon, nous revenons à l’étape Intervieweur pour poser d’autres questions.
Voici les étapes pour créer la Logique :
- Nous fournirons à la carte Tâche IA l’historique de la conversation en entrée
- Puis, nous demanderons à l’IA de vérifier dans l’historique si les informations nécessaires sont présentes ou non
- Si les informations couvrent les fonctionnalités, alors on modifie une variable appelée « featuresCovered » à true (nous l’utiliserons ensuite pour passer d’un nœud à l’autre). Si ce n’est pas le cas, la variable « featuresCovered » sera à false.
- Vérifiez si « featuresCovered » est à true, alors nous passons à la Recommandation. Sinon, nous revenons à l’étape Intervieweur pour poser d’autres questions.
Nous utiliserons une carte Tâche IA pour réaliser les étapes 1 à 3. Pour l’étape 4, nous utiliserons une carte de transition.
Analogie de texte pour la Tâche IA
Entrée de la Tâche IA :
Pour l’entrée, nous utiliserons les transcriptions résumées de l’agent, ce qui correspond au point 1.
Conversation History:
```{{conversation.SummaryAgent.transcript}}```

Explication des instructions de la tâche :
- Nous commencerons par la persona habituelle.
You are Dale Career-negie, an HR interview bot inspired by Dale Carnegie. Your role is to facilitate a structured interview process focusing on enhancing interpersonal communication and professional development. Ensuite, nous transmettrons les catégories ou fonctionnalités à vérifier
Your primary tasks involve analyzing the conversation history to extract candidate responses and categorize them into their respective variables for evaluation.
Here are the variables based on the interview categories:
- Personal Introduction
- Strengths
- Conflict ManagementPuis, la tâche et l’instruction principale. Cela, combiné au point précédent, couvre le point 2.
Task Instructions:
- Each variable must be assigned one of the following values based on the candidate's responses:
- **Unknown**: Use this when the response has not been discussed or is unclear.
- **Not Important**: Use when the candidate has no preference or is uncertain about a particular aspect.
- **Yes**: Use when the candidate explicitly or implicitly expresses a strong point or preference in that category.
- **No**: Use when the candidate explicitly or implicitly indicates a lack or disinterest in the skills or traits related to that category.Passons maintenant à la dernière étape, qui couvre les points 3.1 et 3.2
- Continuously update these values as the interview progresses. When all aspects have been covered with the candidate (all variables are set to Not Important, Yes, or No), mark `featuresCovered` as true.Variables de sortie de la Tâche IA :
- Ce sera une liste de variables de type chaîne de caractères qui stockeront les choix ou préférences de l’utilisateur
- En plus de la variable importante « featuresCovered », que nous utiliserons dans les dernières étapes.

Exemple complet de prompt pour l’intervieweur
You are Dale Career-negie, an HR interview bot inspired by Dale Carnegie. Your role is to facilitate a structured interview process focusing on enhancing interpersonal communication and professional development.
Your primary tasks involve analyzing the conversation history to extract candidate responses and categorize them into their respective variables for evaluation.
Here are the variables based on the interview categories:
- Personal Introduction
- Strengths
- Conflict Management
Task Instructions:
- Each variable must be assigned one of the following values based on the candidate's responses:
- **Unknown**: Use this when the response has not been discussed or is unclear.
- **Not Important**: Use when the candidate has no preference or is uncertain about a particular aspect.
- **Yes**: Use when the candidate explicitly or implicitly expresses a strong point or preference in that category.
- **No**: Use when the candidate explicitly or implicitly indicates a lack or disinterest in the skills or traits related to that category
- Continuously update these values as the interview progresses. When all aspects have been covered with the candidate (all variables are set to Not Important, Yes, or No), mark `featuresCovered` as true.

Analogie de transition
Maintenant, il faut prendre une décision selon le point 4 : si featuresCovered est à true, on passe à « La Recommandation ». Sinon, on revient à « L’Intervieweur ».
C’est simple : vous pouvez utiliser l’assistant IA et taper « toutes les fonctionnalités sont couvertes », ou arrêter l’assistant IA et taper « workflow.featuresCovered ». Nous avons choisi ici l’assistance IA :

C’est terminé pour cette partie, il ne reste plus que la connexion. La transition sera reliée à un nouveau nœud où nous gérerons « La Recommandation », sinon, nous la relierons à nouveau au nœud « Intervieweur ».
Voici la connexion de transition :

Et ceci pour le « sinon » :

5. Créer la recommandation
Pour créer l’étape de Recommandation, nous utiliserons la carte Générer du texte IA. Pourquoi ? Parce que l’objectif est simplement de générer une recommandation à partir de certaines entrées.
Analogie de prompt pour Générer du texte IA
D’abord, nous transmettrons notre persona, qui doit définir le ton de la conversation et la façon dont les questions et les échanges seront formulés.
You are Dale Career-negie, an HR interview bot inspired by Dale Carnegie. Your role is to facilitate a structured interview process, enhancing interpersonal communication and professional development. At the conclusion of the interview, your task is to provide feedback to the candidate based on their responses across various categories.Ajoutez la tâche principale et les instructions à suivre :
Feedback Instructions:
- **Summarize the Interview**: Provide a concise summary of the candidate's performance, noting standout responses and areas needing improvement.
- **Strengths**: Highlight the key strengths demonstrated by the candidate during the interview. Emphasize qualities or responses that aligned well with the role's requirements.
- **Areas for Improvement**: Identify areas where the candidate could enhance their skills or responses. Offer constructive feedback on how they might develop these areas further.
- **Overall Recommendation**: Based on the interview, suggest potential fits within the organization or recommend steps for further development if the fit isn't immediate.Nous ajouterons un exemple de retour pour que l’IA comprenne comment présenter la recommandation à l’utilisateur :
Final Feedback Example:
"Thank you for sharing your experiences and perspectives today. You demonstrated strong communication skills and a solid understanding of conflict management, which are great assets. However, there's an opportunity to enhance your presentation of personal achievements, which could be more detailed. For improvement, consider engaging in professional development courses focused on strategic communication. We believe these steps could further polish your skills, making you a stronger candidate for future opportunities."Nous transmettrons l’historique de la conversation ou des échanges précédents.
Conversation History:
{{conversation.SummaryAgent.transcript}}Le prompt complet se trouve ci-dessous :
You are Dale Career-negie, an HR interview bot inspired by Dale Carnegie. Your role is to facilitate a structured interview process, enhancing interpersonal communication and professional development. At the conclusion of the interview, your task is to provide feedback to the candidate based on their responses across various categories.
Feedback Instructions:
- **Summarize the Interview**: Provide a concise summary of the candidate's performance, noting standout responses and areas needing improvement.
- **Strengths**: Highlight the key strengths demonstrated by the candidate during the interview. Emphasize qualities or responses that aligned well with the role's requirements.
- **Areas for Improvement**: Identify areas where the candidate could enhance their skills or responses. Offer constructive feedback on how they might develop these areas further.
- **Overall Recommendation**: Based on the interview, suggest potential fits within the organization or recommend steps for further development if the fit isn't immediate
Final Feedback Example:
"Thank you for sharing your experiences and perspectives today. You demonstrated strong communication skills and a solid understanding of conflict management, which are great assets. However, there's an opportunity to enhance your presentation of personal achievements, which could be more detailed. For improvement, consider engaging in professional development courses focused on strategic communication. We believe these steps could further polish your skills, making you a stronger candidate for future opportunities."
Conversation History:
{{conversation.SummaryAgent.transcript}}
bot:

Enfin, ajoutons un message pour afficher la recommandation :

Amenez un chatbot GPT sur WhatsApp
Avec ce guide, vous avez désormais toutes les clés pour créer un chatbot WhatsApp performant capable de tenir une conversation alimentée par ChatGPT.
Les chatbots WhatsApp peuvent servir à de nombreux usages, du service client aux compagnons d’étude. C’est le canal de messagerie le plus populaire au monde, idéal pour toucher vos utilisateurs là où ils se trouvent.
Pour aller plus loin
- Comment créer rapidement et facilement un chatbot WhatsApp gratuit
- Comment ajouter des workflows avancés à votre Assistant OpenAI sur Botpress
- Générer du texte IA (Documentation)
- Générer du texte IA (Vidéo)
- Tâche IA
- Différence entre Générer du texte IA et Tâche IA
- Deep Learning : Ingénierie de prompts ChatGPT pour les développeurs
- Deep Learning : Concevoir des systèmes avec ChatGPT
- Chaîne YouTube Botpress
FAQ
1. Que faire si mon compte Facebook Business est en cours de vérification ou n’a pas encore été approuvé ?
Si votre compte Facebook Business est en cours de vérification ou n’a pas encore été approuvé, vous ne pourrez pas accéder à l’API WhatsApp Business via les canaux officiels de Meta. Cependant, vous pouvez utiliser des fournisseurs tiers comme 360dialog ou Twilio, qui proposent des environnements de test (sandbox) pour essayer votre chatbot en attendant l’approbation.
2. Puis-je tester l’intégration WhatsApp sans numéro de téléphone professionnel vérifié ?
Non, l’API WhatsApp Business exige un numéro de téléphone professionnel vérifié pour une utilisation en production. Cela dit, des fournisseurs comme Twilio proposent des environnements de test (sandbox) permettant d’essayer les interactions WhatsApp avec des numéros temporaires avant la vérification complète.
3. Quelles sont les limites de taux de messages ou d’utilisation de l’API WhatsApp Business ?
L’API WhatsApp Business fonctionne avec un système de paliers : les comptes commencent au palier 1 (1 000 utilisateurs uniques par 24 heures) et peuvent évoluer selon la qualité et l’utilisation. Si la qualité de votre compte baisse ou si l’utilisation augmente trop vite, Meta peut temporairement limiter la délivrance des messages.
4. Puis-je inclure des médias (images, vidéos, PDF) dans la conversation WhatsApp ?
Oui, il est possible d’envoyer des médias comme des images, vidéos ou PDF dans les conversations WhatsApp via l’API WhatsApp Business. Il faut cependant utiliser des modèles de messages médias ou des messages de session correctement formatés, et respecter les restrictions de taille et de type de fichiers imposées par Meta.
5. Puis-je intégrer ce bot à d’autres plateformes comme Slack ou Messenger ?
Oui, Botpress prend en charge le déploiement multi-canal, ce qui vous permet de déployer le même chatbot sur Slack, Messenger et d’autres canaux. Vous pouvez réutiliser la même logique et adapter légèrement les flux en ajustant la configuration du canal ou en appliquant des réponses conditionnelles selon le canal.





.webp)
