Construire un SaaS B2B de zéro jusqu'aux revenus - en publicSuivre le parcoursConstruire un SaaS B2B de zéro jusqu'aux revenus - en publicSuivre le parcours
    Artificial Intelligence
    Tutoriel

    Créer un chatbot support client avec vos propres données

    2026-01-14
    ·
    6 min
    Créer un chatbot support client avec vos propres données

    Les chatbots génériques donnent des réponses génériques. Posez à un assistant IA standard une question sur la politique d'annulation de votre produit, et il va soit halluciner quelque chose de plausible, soit admettre qu'il ne sait pas. Aucun des deux n'est utile à un utilisateur qui a besoin d'aide maintenant.

    Un bot support entraîné sur votre documentation réelle — votre centre d'aide, vos FAQ, vos guides produit, vos pages de politique — peut répondre aux questions avec précision, dans la voix de votre marque, et à une fraction du coût du volume de support humain. Cette technologie est accessible, fiable et déployable en jours, pas en mois.

    Pour les entreprises au Maroc qui gèrent un volume croissant de tickets de support avec des équipes réduites, c'est l'un des investissements IA les plus rentables disponibles aujourd'hui.

    Voici comment ça fonctionne.

    Pourquoi les chatbots génériques échouent pour le support

    Le mode de défaillance des IA génériques dans un contexte de support est prévisible : le modèle ne sait rien de votre produit. Quand un utilisateur demande "comment exporter mes données en CSV ?" ou "que se passe-t-il pour mon abonnement si je rétrograde ?", un LLM de base a deux options : générer une réponse plausible qui peut être complètement fausse, ou admettre qu'il ne sait pas. Les deux résultats érodent la confiance des utilisateurs.

    Le deuxième mode de défaillance est la cohérence. La voix de votre marque support — le ton, le niveau de formalité, la façon dont vous gérez les utilisateurs frustrés — existe dans l'approche collective de votre équipe de support humaine. Un assistant IA générique n'a aucun de ce contexte.

    La solution aux deux problèmes est la même : donnez au modèle vos données. Une architecture RAG (Retrieval-Augmented Generation) permet à GPT-4 de répondre aux questions spécifiquement basées sur votre documentation, sans jamais fabriquer d'informations que vos docs ne contiennent pas. Quand un utilisateur demande quelque chose hors du périmètre de votre documentation, le bot peut le dire honnêtement — et escalader.

    L'architecture

    Un chatbot support prêt pour la production comporte trois composants techniques : l'ingestion de documents, une base de données vectorielle et un pipeline de requête.

    Ingestion de documents

    La première étape est de mettre votre contenu existant dans un format que le système peut utiliser.

    Documents sources incluent typiquement : articles du centre d'aide, pages FAQ, documentation produit, documents de politique, guides d'onboarding, et résolutions de tickets de support historiques de haute qualité.

    Extraction de texte : Pour les centres d'aide web (Zendesk, Intercom, Notion), utilisez leurs APIs pour exporter le contenu des articles en texte brut ou markdown. Pour les documents PDF, utilisez une bibliothèque comme pdf-parse (Node.js) ou pdfminer (Python) pour extraire le texte. Supprimez les balises HTML et normalisez les espaces avant traitement.

    Chunking : Les documents doivent être découpés en morceaux assez petits pour rentrer dans la fenêtre de contexte mais assez grands pour être sémantiquement cohérents. Une taille de morceau de 500 à 800 tokens avec un chevauchement de 100 tokens entre morceaux consécutifs est un bon point de départ. Le chevauchement garantit que les informations aux frontières des morceaux ne sont pas perdues. Pour les documents structurés comme les FAQ, découpez par paire question-réponse individuelle plutôt que par nombre de tokens.

    Embedding : Chaque morceau est converti en un vecteur d'embedding à l'aide d'un modèle d'embedding. Le modèle text-embedding-3-small d'OpenAI produit des embeddings de haute qualité à faible coût. Envoyez chaque morceau à l'API Embeddings et recevez un vecteur à 1536 dimensions qui représente le contenu sémantique de ce morceau. Stockez le vecteur aux côtés du texte original et des métadonnées (URL source, titre du document, date de dernière mise à jour).

    Base de données vectorielle

    Les embeddings sont stockés dans une base de données vectorielle qui permet la recherche par similarité — trouver les morceaux les plus sémantiquement similaires à une requête donnée.

    Supabase avec pgvector est le choix recommandé pour la plupart des implémentations de chatbots support. Si vous utilisez déjà Supabase comme base de données d'application, ajouter le support pgvector est une seule commande SQL (CREATE EXTENSION vector). Vous créez une table avec une colonne vector(1536), insérez vos embeddings et lancez des recherches de similarité avec une requête de distance cosinus. Pour la plupart des bots support gérant quelques milliers de documents, c'est performant et simple opérationnellement.

    Pinecone est approprié pour une plus grande échelle — des centaines de milliers de documents, un volume de requêtes élevé, ou des exigences de multi-tenant au niveau du vector store. C'est un service managé construit spécifiquement pour la recherche vectorielle, avec de meilleures performances à l'échelle que pgvector mais à un coût et une complexité opérationnelle supplémentaires.

    Quelle que soit la base de données vectorielle que vous utilisez, ajoutez du filtrage par métadonnées à vos requêtes : filtrer par zone produit, langue, type de contenu ou date de dernière mise à jour. Cela réduit l'espace de recherche et améliore la pertinence de la récupération.

    Le pipeline de requête

    Quand un utilisateur envoie un message, le pipeline s'exécute en séquence :

    1. Embedder la requête. Convertir le message de l'utilisateur en vecteur en utilisant le même modèle d'embedding utilisé lors de l'ingestion.

    2. Récupérer les morceaux pertinents. Interroger la base de données vectorielle pour les 5 à 8 morceaux les plus similaires à l'embedding de la requête. Utiliser la similarité cosinus comme métrique de distance. Appliquer tous les filtres de métadonnées pertinents (par exemple, restreindre à la zone produit dans laquelle l'utilisateur se trouve actuellement).

    3. Construire le prompt. Construire un prompt qui inclut : une instruction système définissant le rôle et le ton du bot, les morceaux récupérés comme contexte, l'historique de la conversation (4 à 6 derniers tours), et le message actuel de l'utilisateur.

    4. Générer la réponse. Envoyer le prompt à GPT-4o (pour la qualité maximale) ou GPT-4o-mini (pour l'optimisation des coûts à haut volume). Le modèle génère une réponse ancrée dans le contexte récupéré.

    5. Retourner et logger. Retourner la réponse à l'utilisateur. Logger la requête, les morceaux récupérés utilisés et la réponse — ces données sont essentielles pour l'amélioration continue de la qualité.

    Une structure de prompt concrète :

    Système : Vous êtes un assistant support utile pour [Nom du Produit].
    Répondez aux questions en utilisant uniquement les informations fournies
    dans le contexte ci-dessous. Si la réponse ne se trouve pas dans le contexte,
    dites-le clairement et proposez de connecter l'utilisateur avec un agent
    de support humain. Ne fabriquez pas d'informations.
    
    Contexte :
    [Morceau récupéré 1]
    [Morceau récupéré 2]
    [Morceau récupéré 3]
    ...
    
    Historique de la conversation :
    [4 derniers tours]
    
    Utilisateur : [Message actuel]
    

    Construction étape par étape

    Outils dont vous aurez besoin :

    • API OpenAI (embeddings + chat completions)
    • Supabase (vector store + base de données d'application)
    • Vercel AI SDK ou LangChain (orchestration du pipeline)
    • Votre documentation d'aide existante

    Planning d'implémentation approximatif pour un développeur :

    • Jour 1 : Configurer Supabase pgvector, écrire le script d'ingestion, embedder et stocker toute la documentation
    • Jour 2 : Construire le pipeline de requête, écrire le prompt système, tester la qualité de récupération
    • Jour 3 : Construire le composant UI du chat, intégrer avec votre application
    • Jour 4 : Gérer les cas limites, ajouter la logique d'escalade, ajouter le logging
    • Jour 5 : Tester avec de vrais scénarios de support, affiner la récupération, déployer

    C'est réalisable en une semaine de travail pour un développeur expérimenté. Le travail continu est la maintenance de la documentation — garder l'index vectoriel à jour à mesure que votre produit change.

    Gestion des cas limites

    Questions hors périmètre. Quand un utilisateur pose une question que votre documentation ne couvre pas, le bot ne doit pas halluciner. Le prompt système doit instruire explicitement le modèle : "Si la réponse ne peut pas être trouvée dans le contexte fourni, dites-le clairement à l'utilisateur et proposez de le connecter avec un agent humain." Ajoutez un message de fallback quand les scores de similarité des morceaux récupérés tombent en dessous d'un seuil — cela indique que la requête n'a pas de bonne correspondance dans votre documentation.

    Escalade vers un agent humain. Définissez les déclencheurs d'escalade explicitement : litiges de facturation, problèmes de sécurité de compte, demandes demandant explicitement un humain, et toute requête où la confiance du bot est faible. Implémentez un bouton "parler à un humain" toujours visible, et déclenchez-le automatiquement quand le bot détecte des mots-clés d'escalade ("urgent", "c'est faux", "je veux parler à quelqu'un"). Routez les escalades vers votre système de support existant — un ticket Zendesk, une notification Slack, un email — pour qu'aucune escalade ne soit perdue.

    Comportement de fallback. Quand le bot ne peut pas aider, il doit quand même être utile : pointer l'utilisateur vers votre centre d'aide, lui indiquer les horaires de l'équipe support, ou proposer de prendre ses coordonnées pour un suivi. Un "je ne peux pas répondre à ça, mais voici comment obtenir de l'aide" gracieux est bien meilleur qu'une réponse inexacte.

    Utilisateurs multilingues. Pour les entreprises marocaines dont les clients écrivent en français, en arabe ou en anglais, le pipeline RAG gère cela raisonnablement bien si vous utilisez un modèle d'embedding multilingue. Pour un support multilingue en production, embeddez la documentation dans chaque langue supportée séparément et routez les requêtes vers l'index de la langue appropriée basé sur la langue détectée.

    Mesurer si ça fonctionne vraiment

    Déployez avec des métriques dès le premier jour. Les métriques qui comptent pour un chatbot support :

    Taux de deflexion. Le pourcentage de requêtes de support gérées entièrement par le bot sans escalade vers un humain. Un bot support RAG bien implémenté atteint typiquement 40 à 65% de deflexion sur un ensemble de requêtes approprié au périmètre. Mesurez cela par semaine dans le temps — un taux de deflexion croissant signifie que votre documentation s'améliore et que votre bot apprend. Un taux déclinant signifie que votre produit change plus vite que vos docs ne sont mises à jour.

    CSAT (Customer Satisfaction Score). Envoyez un court sondage après chaque conversation résolue par le bot : "Cette réponse a-t-elle répondu à votre question ? Oui / Non." Suivez cela par semaine. En dessous de 70% positif signifie que la qualité de récupération ou de génération a besoin de travail. Au-dessus de 85% est excellent pour un bot support.

    Taux d'escalade et temps de résolution. Suivez quel pourcentage de conversations escalade vers un humain, et combien de temps ces conversations escaladées prennent à résoudre. Cela vous donne une base de productivité pour votre équipe de support humaine et identifie les catégories de questions que le bot ne gère pas bien.

    Taux de fausse confiance. Le mode de défaillance le plus dangereux : le bot donne une mauvaise réponse avec confiance sans escalader. Révisez un échantillon aléatoire de réponses du bot chaque semaine. Toute instance d'information incorrecte confiante est un problème de sévérité plus élevée qu'un bot qui dit "je ne sais pas" trop souvent.

    Utilisez ces métriques pour piloter un cycle de revue mensuel : quelles questions escaladent le plus fréquemment ? Est-ce parce que la documentation est manquante, ou parce que la récupération échoue ? Ajoutez ou améliorez la documentation pour le premier cas ; affinez les paramètres de chunking et de récupération pour le second.


    Un chatbot support bien construit est l'un des cas de ROI les plus clairs pour l'IA dans un produit B2B. Les économies de deflexion sont mesurables, l'implémentation est réalisable, et les utilisateurs — quand le bot connaît réellement votre produit — le préfèrent à attendre une réponse humaine pour des questions directes.

    Pour les entreprises au Maroc qui cherchent à améliorer leur support client tout en maîtrisant leurs coûts, c'est une solution que je livre régulièrement depuis Casablanca. Si vous souhaitez planifier et construire un chatbot support pour votre produit, je serais heureux de cadrer ça ensemble.

    Réservez votre appel de cadrage IA gratuit avec Mehdi Yatrib sur yatrib.me

    Written by Mehdi Yatrib — Indie Maker & Consultant based in Casablanca, Morocco.

    Work with me on Artificial Intelligence