Tensoria
Parlons de votre projet : 07 82 80 51 40
RAG & Connaissances Par

RAG support client : architecture pour automatiser le N1

Vos agents N1 passent 40 % de leur temps à chercher la même information dans Confluence, dans l'historique des tickets, dans la documentation produit. Ils répondent différemment à la même question selon leur ancienneté. Et chaque nouveau collaborateur prend trois mois avant d'être opérationnel. Ce n'est pas un problème de compétence : c'est un problème d'accès à la connaissance.

Un agent support N1 alimenté par un RAG résout exactement ce problème. Il indexe votre base de connaissances produit et l'historique de vos tickets résolus, génère des suggestions de réponse sourcées en moins de 2 secondes, et escalade automatiquement vers un humain quand son niveau de confiance est insuffisant. Ce n'est pas une promesse marketing : c'est une architecture précise, avec des choix techniques définis et des métriques mesurables.

Cet article décrit cette architecture de bout en bout : ingestion, pseudonymisation RGPD, chunking, retrieval hybride, prompt avec citation de source, seuil de confiance, boucle de feedback, intégrations Zendesk, Freshdesk, Intercom et coûts réels. Chez Tensoria, nous l'avons déployée pour des éditeurs SaaS et des équipes support à Toulouse et en France.

Le support N1 : répétitif, coûteux et sous-instrumenté

Le support niveau 1 traite les demandes à fort volume et faible complexité : mots de passe oubliés, erreurs de configuration connues, questions sur les fonctionnalités, procédures de retour ou de remboursement. Ces demandes représentent en général 60 à 75 % du volume total de tickets, mais mobilisent des équipes entières dont le temps pourrait être alloué à des problèmes réellement complexes.

Le coût réel n'est pas que salarial. Un agent N1 qui cherche 5 minutes dans Confluence avant de répondre, c'est une expérience dégradée pour le client et un traitement incohérent selon qui répond. Résultat : des tickets rouvertso, des escalades évitables, un FCR (First Contact Resolution) qui stagne à 50-55 % alors que le potentiel technique est à 70-75 %.

Le verbatim que nous entendons le plus souvent : "On a 50 000 tickets résolus en 5 ans, personne ne les exploite alors qu'ils contiennent toutes les solutions." C'est exactement là que le RAG intervient.

Pour comprendre le contexte technologique avant d'entrer dans l'architecture, notre article sur la technologie RAG expliquée aux dirigeants pose les bases sans jargon.

Architecture d'un agent RAG support

Voici la vue d'ensemble de l'architecture que nous déployons pour les équipes support :

Architecture RAG support N1

Ingestion

  • FAQ / Confluence
  • Tickets Zendesk résolus
  • Docs produit PDF
  • Politique SAV

Stockage

  • Chunking par article
  • Embeddings vectoriels
  • Metadata : catégorie, produit, version, ancienneté

Retrieval

  • Hybrid search BM25 + dense
  • Reranker
  • Filtres : produit, version, langue

Génération

  • LLM (GPT-4o / Claude Sonnet)
  • Prompt agent support
  • Réponse courte + sources citées

Interface

  • Zendesk App
  • Freshdesk widget
  • Intercom bot
  • API / copilot agent

Chaque bloc a ses contraintes propres. Ce qui rend ce type de projet difficile, ce n'est pas le retrieval — c'est la qualité des données en entrée, la pseudonymisation RGPD des tickets, et la boucle de feedback sans laquelle la qualité stagne. Entrons dans le détail.

Ingestion : KB produit et tickets résolus

Le corpus d'un agent support N1 repose sur deux sources très différentes, avec des logiques d'ingestion distinctes.

La base de connaissances produit

FAQ, documentation technique, procédures de dépannage, politiques commerciales, CGV : ces documents sont structurés, maintenus (en théorie) et sans données personnelles. Ils forment la colonne vertébrale du RAG. Mais attention : dans la majorité des projets que nous voyons, 30 à 50 % des articles ont plus de 2 ans sans mise à jour. Une documentation obsolète génère des réponses incorrectes avec confiance — pire que l'absence de réponse.

Avant d'indexer, auditez votre KB avec un filtre simple : articles non modifiés depuis plus de 18 mois sur un produit SaaS en évolution rapide. Ces articles doivent être mis à jour ou archivés avant d'entrer dans l'index. C'est du travail éditorial humain, pas technique.

Les tickets résolus comme source de connaissance implicite

C'est là que réside la vraie valeur cachée. Vos tickets résolus contiennent des solutions à des problèmes réels, dans le langage exact que vos clients utilisent pour décrire leurs problèmes. Un LLM qui a accès à un ticket résolu "l'utilisateur ne peut pas exporter en CSV depuis le module Rapports — solution : activer le droit d'export dans le profil utilisateur" répond bien mieux qu'un LLM avec uniquement la documentation officielle.

Les critères de sélection des tickets à indexer :

  • Statut résolu uniquement (pas "clos sans réponse", pas "doublon")
  • Résolution documentée d'au moins 50 tokens dans le champ résolution ou dans les commentaires internes
  • Ancienneté filtrée : pour un SaaS, tickets des 18 à 36 derniers mois selon le rythme de mise à jour du produit
  • Sans données personnelles brutes (voir section RGPD ci-dessous)

Formats d'export : Zendesk, Freshdesk et Jira Service Management exposent des APIs REST pour exporter les tickets en JSON. Freshdesk propose aussi un export CSV natif. Planifiez une ingestion incrémentale automatique des nouveaux tickets résolus (quotidienne ou hebdomadaire) pour que l'index reste vivant.

Pour aller plus loin sur les architectures RAG en production, notre article sur l'agentic RAG et le retrieval multi-étapes couvre les patterns avancés.

Pseudonymisation RGPD avant indexation

C'est l'étape que les équipes techniques sous-estiment systématiquement, et qui allonge les projets de 2 à 3 semaines quand elle n'est pas anticipée.

Un ticket support contient presque toujours des données personnelles : nom et prénom du client, adresse email, numéro de contrat, parfois des données financières (montants facturés, références bancaires) ou des données de santé si le produit touche au secteur médical. Indexer ces données brutes dans un vecteur store, c'est créer un traitement de données personnelles supplémentaire sans base légale claire, et potentiellement exposer des informations confidentielles via les réponses générées.

Comment pseudonymiser les tickets avant indexation

L'approche que nous utilisons est la suivante :

  1. Détection des entités nommées (NER) : identifier automatiquement les PII dans le texte des tickets. Des outils comme Microsoft Presidio (open source) ou spaCy avec un modèle NER français permettent de détecter les noms, emails, numéros de téléphone, IBAN, codes postaux
  2. Remplacement par des tokens génériques : [NOM_CLIENT], [EMAIL], [N_CONTRAT], [MONTANT]. Le token préserve le sens de la phrase sans exposer la donnée réelle
  3. Validation sur un échantillon : vérifier manuellement sur 200 à 500 tickets que la pseudonymisation n'a pas dénaturé le sens de la résolution

Exemple de pseudonymisation

Avant : "Jean Dupont (jean.dupont@example.com, contrat n°12345) ne peut pas accéder au module facturation depuis le 12 mars."

Après : "[NOM_CLIENT] ([EMAIL], contrat [N_CONTRAT]) ne peut pas accéder au module facturation depuis [DATE]."

La politique de rétention de l'index vectoriel doit être alignée avec la durée de conservation définie dans votre registre des traitements RGPD. Si vos tickets sont conservés 3 ans dans Zendesk, l'index doit être nettoyé en conséquence. Pour les données de santé ou financières, une analyse d'impact (AIPD) est obligatoire avant déploiement.

Chunking et embeddings

Le chunking est l'un des leviers les plus sensibles de la qualité du retrieval. Une stratégie de chunking mal pensée dégrade les résultats même avec un excellent modèle de langage.

Stratégie de chunking pour le support

Deux types de documents, deux stratégies :

  • Articles de base de connaissances : un article = 1 chunk (ou plusieurs chunks liés par métadonnée si l'article dépasse 1 500 tokens). Conservez le titre et la section de l'article dans chaque chunk pour que le reranker puisse les identifier correctement
  • Tickets résolus : séparez l'en-tête du ticket (description du problème, version du produit, type d'erreur) et la résolution (étapes appliquées, solution trouvée) en deux chunks liés par métadonnée. Ne mélangez pas le problème et la solution dans le même chunk — cela crée de la confusion dans le retrieval

Métadonnées à indexer impérativement

Les métadonnées permettent le filtrage avant retrieval, ce qui améliore la précision et réduit les coûts de tokens :

  • source_type : kb_article / ticket_resolu / politique_sav / contrat
  • produit : identifiant du produit ou du module concerné
  • version : version du produit au moment de la résolution (critique pour filtrer les tickets obsolètes)
  • langue : fr / en / es (pour le support multilingue)
  • created_at : date de création (pour filtrer par ancienneté)
  • resolution_quality_score : score calculé à l'ingestion (longueur de la résolution, présence d'étapes, vote agent si disponible)

Choix du modèle d'embedding

Pour le support client en français, nous utilisons en priorité text-embedding-3-large (OpenAI) ou voyage-multilingual-2 (Anthropic/Voyage AI) pour la qualité du retrieval multilingue. Pour une architecture souveraine sans données hors UE, les modèles Mistral Embed hébergés sur infrastructure française restent une option solide, avec un léger compromis sur la précision.

Retrieval hybride et prompt avec citation source

Pourquoi le retrieval hybride est indispensable en support

Le support technique contient des termes très spécifiques : codes d'erreur (ERR_502), noms de modules (export_csv_v2), références de version (3.12.1). La recherche dense seule (uniquement vectorielle) manque souvent ces termes exacts. La recherche BM25 seule (full-text) rate les formulations synonymes des clients.

La combinaison hybride BM25 + dense avec un reranker cross-encoder (Cohere Rerank, BGE-Reranker, ou modèle propriétaire) est le standard en production. Le reranker reclasse les top-20 candidats initiaux pour ne garder que les 3 à 5 passages les plus pertinents envoyés au LLM. C'est ce reranker qui bénéficiera des votes de la boucle de feedback.

Prompt structuré avec citation obligatoire de la source

Le prompt envoyé au LLM pour générer la suggestion de réponse doit :

  1. Injecter les passages retrouvés avec leur référence (titre de l'article, identifiant du ticket source)
  2. Demander explicitement au LLM de citer la source dans la réponse
  3. Fixer un format de réponse court (3 à 7 étapes maximum, pas de prose longue)
  4. Instruire le LLM à répondre "Je ne trouve pas de solution documentée pour cette demande" si les passages ne sont pas pertinents — plutôt que d'inventer

Structure de prompt recommandée

Tu es un agent support expert du produit [NOM_PRODUIT]. Voici les passages pertinents extraits de la base de connaissances :

[PASSAGE_1] — Source : {titre_article} {url_article}
[PASSAGE_2] — Source : Ticket #{id_ticket} résolu le {date}

Demande client : {texte_ticket_entrant}

Rédige une réponse concise (5 lignes max), sourcée, en vouvoyant le client. Si les passages ne contiennent pas la réponse, indique-le explicitement.

La latence est critique. Le support ne tolère pas une suggestion qui apparaît après 4 secondes. Optimisez avec du streaming dès les premiers tokens (SSE) et limitez le top-k à 5 passages maximum envoyés au LLM. La latence p95 cible est inférieure à 2,5 secondes de bout en bout.

Pour une comparaison entre les architectures RAG simples et les architectures agentiques, consultez notre article sur RAG ou chatbot simple : comment choisir.

Seuil de confiance et escalade humaine

Un agent RAG support ne doit jamais répondre avec la même confiance à toutes les demandes. Une question sur "comment réinitialiser mon mot de passe" et une demande de remboursement sur facture litigieuse n'ont pas le même niveau de risque en cas de mauvaise réponse.

Comment définir le seuil de confiance

Le score de confiance combine plusieurs signaux :

  • Score de similarité du meilleur chunk retrouvé (score cosinus ou score de reranking) — signal principal
  • Cohérence entre les passages retrouvés : si les top-3 chunks se contredisent, le score est pénalisé
  • Catégorie de la demande : les demandes financières ou juridiques ont un seuil d'escalade plus bas, indépendamment du score de similarité

Un seuil de départ autour de 0,75 sur le score reranker est raisonnable, mais il doit être calibré sur vos données réelles. Évaluez sur un gold set de 100 à 200 tickets annotés pour trouver le bon équilibre entre faux positifs (mauvaises réponses données avec confiance) et faux négatifs (escalades inutiles).

Ce qui se passe en cas d'escalade

L'escalade ne doit pas être une boîte noire. Quand l'agent transfère à un humain, il doit :

  1. Notifier l'agent humain du motif de l'escalade (score insuffisant, catégorie sensible, demande non couverte)
  2. Passer le contexte complet : ticket entrant, passages retrouvés même insuffisants, score obtenu
  3. Logger l'événement pour alimenter le tableau de bord de couverture (quelles demandes ne sont pas couvertes par le corpus ?)

Ces tickets escaladés sans réponse RAG sont une mine d'or : ce sont exactement les lacunes à combler dans la base de connaissances. Générez un rapport hebdomadaire des questions les plus fréquentes sans réponse documentée et transmettez-le à l'équipe éditoriale.

Boucle de feedback et amélioration continue

C'est le mécanisme le plus sous-estimé dans les déploiements RAG support, et celui qui fait la différence entre un système qui stagne et un système qui s'améliore.

Comment fonctionne la boucle

Chaque suggestion générée par l'agent est présentée à l'agent support avec trois options :

  • Utilisée telle quelle : signal positif fort — les chunks sources reçoivent un boost dans le reranker
  • Modifiée avant envoi : signal neutre à positif — l'agent a trouvé la bonne direction mais a affiné
  • Rejetée : signal négatif — les chunks sources sont pénalisés, et le ticket est ajouté à la liste de revue

Comment exploiter ces signaux

Ces votes ne s'utilisent pas en temps réel (cela créerait des instabilités). L'architecture standard :

  1. Collecte continue des votes dans une base de données d'événements
  2. Fine-tuning mensuel du reranker : les paires (requête, chunk source, vote) servent de données d'entraînement pour ajuster les poids du reranker
  3. Révision trimestrielle des chunks pénalisés : les chunks avec un ratio de rejet > 30 % sont examinés — soit l'article source est obsolète, soit le chunking est mal calibré
  4. Ingestion automatique des nouveaux tickets résolus bien notés par les agents : les tickets traités avec une modification mineure de la suggestion deviennent des exemples positifs pour l'index

Sans cette boucle, la qualité du RAG stagne au niveau de la qualité initiale du corpus. Avec elle, le système s'améliore en continu avec l'usage, sans intervention manuelle systématique.

Pour une perspective sur les agents IA en production, notre retour d'expérience sur les agents IA en production avec n8n couvre les pièges à éviter.

Intégrations Zendesk, Freshdesk, Intercom et HubSpot Service Hub

L'architecture RAG est indépendante du helpdesk. L'intégration se fait via les APIs et les frameworks d'extension de chaque outil.

Zendesk

Zendesk est le cas le plus documenté. L'intégration passe par le Zendesk Apps Framework (ZAF) : une app installée dans l'interface agent affiche la suggestion en temps réel dès qu'un ticket est ouvert ou mis à jour. L'API Zendesk permet de récupérer le contenu du ticket, d'injecter des commentaires internes, et de lire les métadonnées (produit, priorité, tags). La latence cible est inférieure à 2 secondes pour ne pas briser le flux de l'agent. Zendesk propose aussi une API d'export des tickets pour l'ingestion incrémentale.

Freshdesk

L'intégration Freshdesk repose sur les Custom Apps Freshdesk (marketplace ou installation privée) et les webhooks. Un webhook est déclenché à la création ou mise à jour d'un ticket, envoie le contenu vers votre backend RAG, et la suggestion est renvoyée via l'API Freshdesk dans les notes privées du ticket ou dans un panneau latéral personnalisé. Freshdesk propose aussi Freddy AI en natif, mais sans connexion à vos tickets historiques — c'est la limitation que le RAG sur mesure comble.

Intercom

Intercom s'intègre via les Fin AI Workflows ou l'API Conversations. Pour un déploiement RAG sur mesure, l'architecture standard est un opérateur Intercom personnalisé qui intercepte les messages entrants, appelle votre backend RAG, et renvoie la réponse dans le fil de conversation. Le mode "bot first, human second" d'Intercom est bien adapté à l'escalade automatique quand le score de confiance est insuffisant.

HubSpot Service Hub

L'intégration HubSpot passe par les Custom Actions HubSpot Workflows et l'API Conversations. Chaque nouveau ticket entrant dans la boîte de réception partagée peut déclencher un workflow qui appelle votre RAG via webhook et injecte la suggestion en note interne. La granularité des propriétés de contact et de deal dans HubSpot permet des filtres de retrieval enrichis (secteur d'activité du client, version du produit souscrite, historique des interactions).

Coûts et délais

Phase Durée Budget Périmètre inclus
POC 6 à 8 semaines 8 000 à 15 000 € KB + 500 tickets gold, intégration helpdesk, validation 3 à 5 agents, 1 produit
MVP production 3 mois 25 000 à 50 000 € Corpus complet pseudonymisé, boucle de feedback, dashboard monitoring, ingestion incrémentale
TCO annuel Récurrent 15 000 à 35 000 €/an Coûts LLM + infrastructure + maintenance + fine-tuning reranker trimestriel

Le délai minimum réaliste est de 10 semaines, avec une médiane à 16 semaines. Ce qui allonge le calendrier :

  • Pseudonymisation des tickets historiques : +2 à +3 semaines selon le volume et la qualité des données
  • Nettoyage éditorial de la KB : si 40 % des articles sont obsolètes, il faut les mettre à jour avant indexation — c'est du travail humain que aucun outil ne peut remplacer
  • Intégration helpdesk : chaque outil a ses spécificités d'API, comptez +2 semaines de développement
  • Adoption des agents : la résistance au changement est réelle, la formation et la communication interne sont critiques dès le début

Pour comprendre comment ce projet s'inscrit dans un budget IA global, notre article sur le budget technique d'un projet RAG de bout en bout détaille chaque poste de coût.

Métriques de succès : déflection, CSAT, FCR

Un déploiement RAG support sans tableau de bord de suivi est un déploiement sans pilote. Voici les métriques que nous instrumentons systématiquement.

Métrique Cible Comment la mesurer
Recall@3 retrieval > 85 % Évaluation sur gold set de 100 tickets annotés
Taux de déflection > 40 % à 6 mois Tickets traités sans intervention humaine / total tickets
FCR (First Contact Resolution) +15 pts vs baseline Dashboard support avant/après déploiement
AHT (temps de traitement) -25 % vs baseline Durée moyenne de traitement par ticket
CSAT conversations auto Stable ou supérieur à baseline Enquête satisfaction post-résolution segmentée
Adoption agents > 70 % à 3 mois Logs d'usage de l'outil de suggestion
Hallucination rate < 2 % sur politique SAV Audit mensuel sur échantillon de 50 réponses
Latence suggestion p95 < 2,5 s Monitoring infrastructure (Datadog, Grafana)

Le taux de déflection est la métrique phare pour justifier l'investissement auprès de la direction. Mais attention à ne pas l'optimiser seul : un taux de déflection élevé avec un CSAT en chute libre indique que l'agent répond à côté. Suivez toujours ces deux métriques ensemble.

Pour voir comment cette architecture s'est traduite concrètement sur un cas réel, consultez notre étude de cas éditeur médical : -50 % de tickets support grâce au RAG.

Questions fréquentes

Commencez par la base de connaissances produit (FAQ, documentation technique, procédures de dépannage) et les tickets résolus des 18 à 24 derniers mois. Les tickets plus anciens peuvent être du bruit si votre produit a évolué significativement. Avant indexation, filtrez les tickets pour ne retenir que ceux avec un statut résolu et une résolution documentée d'au moins 50 tokens. Évitez les tickets clos sans réponse et les tickets internes non liés aux demandes client.
Les tickets support contiennent des données personnelles (nom, email, numéro de contrat, parfois données de santé ou financières). Avant indexation, appliquez une étape de pseudonymisation : remplacez les PII par des tokens génériques ([NOM_CLIENT], [EMAIL], [N_CONTRAT]). Des outils comme Microsoft Presidio ou spaCy avec un modèle NER français permettent d'automatiser cette opération. Alignez ensuite la durée de rétention de l'index vectoriel avec la durée de conservation définie dans votre registre des traitements. Si vos tickets contiennent des données de santé, une analyse d'impact (AIPD) est obligatoire avant déploiement.
Un seuil de score de similarité autour de 0,75 est un bon point de départ : en dessous, l'agent transfère automatiquement à un humain avec le contexte de la demande. Mais ce seuil doit être calibré sur vos données réelles, pas fixé arbitrairement. Évaluez sur un gold set de 100 à 200 tickets annotés : cherchez le point d'équilibre entre taux de faux positifs (mauvaises réponses données avec confiance) et taux de faux négatifs (escalades inutiles). Réévaluez ce seuil tous les trimestres à mesure que le corpus s'enrichit.
Zendesk expose une API REST complète et un système d'applications (Zendesk Apps Framework) pour injecter des suggestions directement dans l'interface agent. Pour Freshdesk, l'intégration passe par les webhooks et les Custom Apps. Dans les deux cas, l'architecture standard est la suivante : le ticket entrant déclenche un webhook vers votre backend RAG, qui exécute le retrieval et la génération, puis renvoie la suggestion formatée dans l'interface de l'agent via l'API. La latence cible est inférieure à 2 secondes pour ne pas briser le flux de travail. Pour Intercom, l'intégration se fait via les Fin AI Workflows ou l'API Conversations.
Le minimum réaliste est de 10 semaines, avec une médiane autour de 16 semaines. Ce qui allonge le calendrier : la pseudonymisation et le nettoyage des tickets historiques (2 à 3 semaines supplémentaires selon le volume), la mise à jour éditoriale de la base de connaissances si plus de 30 % des articles sont obsolètes (travail humain, non automatisable), et l'intégration au helpdesk (2 semaines de développement spécifique selon l'outil). L'adoption des agents est aussi un facteur : prévoir formation et communication interne dès le début du projet.
Les métriques clés sont : le taux de déflection (part des tickets traités sans intervention humaine, cible > 40 % à 6 mois), le FCR (First Contact Resolution, cible +15 points vs baseline), le temps moyen de traitement AHT (cible -25 %), le CSAT sur les conversations automatisées (cible stable ou supérieur à la baseline humaine), et le Recall@3 du retrieval (bonne réponse dans les 3 premiers résultats, cible > 85 %). Suivez aussi le taux d'adoption par les agents (usage de l'outil de suggestion) et le hallucination rate sur les questions de politique commerciale (cible < 2 %).
Un POC sur 6 à 8 semaines (base de connaissances + 500 tickets gold, intégration helpdesk, validation par 3 à 5 agents) coûte entre 8 000 et 15 000 euros. Un MVP complet en production (corpus complet pseudonymisé, boucle de feedback, dashboard de monitoring, ingestion incrémentale) représente 25 000 à 50 000 euros sur 3 mois. Le TCO annuel ensuite se situe entre 15 000 et 35 000 euros par an, selon le volume de tickets et les coûts d'API LLM.

Pour aller plus loin

Vous voulez évaluer la faisabilité sur votre contexte ?

30 minutes pour analyser votre volume de tickets, votre KB et votre helpdesk, et estimer le ROI atteignable sur 6 mois.

Réserver un appel découverte
Anas Rabhi, ingénieur IA et data scientist, fondateur de Tensoria
Anas Rabhi Ingénieur IA, fondateur de Tensoria ianas.fr

Je suis ingénieur IA et data scientist, fondateur de Tensoria. Depuis plus de 6 ans, j'accompagne les entreprises dans l'exploitation concrète de l'IA pour leur métier : assistants internes basés sur RAG, agents IA en production, automatisations sur mesure, traitement intelligent de documents. J'interviens du cadrage initial à la mise en production, sur stacks LLM modernes (Mistral, Claude, GPT) et infrastructures souveraines quand la confidentialité l'exige.