Tous les articles
  • IA
  • RAG
  • Technique

Le RAG pour le support client : comment rendre les réponses de l'IA vraiment précises

Un LLM seul invente des réponses plausibles. La génération augmentée par récupération (RAG) ancre l’IA dans votre propre contenu. Voici comment AskAIs procède, étape par étape.

L’équipe AskAIs

7 min de lecture

Demandez à un LLM seul « comment réinitialiser mon mot de passe ? » et vous obtenez une réponse plausible, probablement fausse : un autre bouton, un autre parcours, une autre URL. Le RAG (génération augmentée par récupération) corrige cela en plaçant les bons segments de votre propre contenu dans le prompt avant que le modèle ne réponde.

Le pipeline en un coup d’œil

Trois étapes : ingestion, récupération, génération.

1. Ingestion

  • Importez des fichiers PDF, DOCX, TXT, Markdown, CSV ou JSON, explorez votre site web ou ajoutez des paires de Q&A dans Training.
  • Le worker extrait le texte et le découpe en segments d’environ 2 000 caractères (environ 500 tokens), avec un chevauchement de 200 caractères. Chaque paire de Q&A reste un seul segment.
  • Chaque segment est encodé avec text-embedding-3-small (1 536 dimensions).
  • Les segments sont stockés dans PostgreSQL avec l’extension pgvector et un index HNSW pour la distance cosinus.

2. Récupération

Quand le message d’un visiteur appelle des faits, nous encodons ses messages récents et lançons une recherche par distance cosinus sur les segments de l’espace de travail. Les salutations et les échanges de politesse sautent cette étape. Une version simplifiée de la requête :

-- Simplified. The real query also checks that the document is
-- ready, enabled, in date and visible on the visitor's platform.
SELECT c.id, c.content,
       1 - (c.embedding <=> $1::vector) AS similarity
FROM knowledge_chunks c
WHERE c.tenant_id = $2
ORDER BY c.embedding <=> $1::vector
LIMIT $3;  -- 3 × top-K candidates, re-ranked afterwards

Nous récupérons trois fois plus de candidats que nécessaire, les reclassons, écartons tout ce qui est sous le seuil de similarité (environ 0,3), gardons au plus deux segments par document et transmettons les cinq meilleurs (par défaut) au modèle.

3. Génération

Les segments sont ajoutés au prompt système dans un bloc de référence délimité. Le modèle a pour consigne de traiter ce bloc comme des données et non comme des instructions, de n’utiliser que les références qui répondent à la question, et de ne pas inventer de faits sur le produit qui n’y figurent pas.

Si un visiteur pose une question factuelle sur le produit et que rien de pertinent n’est trouvé, le modèle n’est pas appelé du tout : le visiteur est informé que l’information n’est pas disponible, et le chat passe à une personne, sauf si le transfert automatique est désactivé.

Maîtriser les coûts

Trois éléments rendent une grande base de connaissances abordable :

  • Cache d’embeddings : le même texte de recherche donne le même embedding. La clé est le nom du modèle plus un hachage SHA-1 du texte, conservée 24 heures dans Redis.
  • Mise en cache des prompts : pour les modèles Claude, la requête demande à Anthropic de mettre le prompt en cache, et OpenAI met automatiquement en cache les prompts longs. Le bloc de référence change à chaque réponse ; c’est donc surtout la partie fixe du prompt qui en profite.
  • Saut basé sur un seuil : si aucun segment ne dépasse le seuil, rien n’est ajouté au prompt.

Quand le RAG ne suffit pas

Le RAG gère bien les questions « comment faire… ? ». Il ne peut pas répondre à « où est ma commande ? », car ces données ne figurent pas dans vos documents.

Pour cela, AskAIs propose les Custom tools : vous décrivez un endpoint HTTP de votre propre système, par exemple pour les commandes, les réservations ou les stocks, et l’IA peut l’appeler pendant qu’elle rédige sa réponse. Les questions générales trouvent leur réponse dans vos connaissances, les questions personnelles dans vos systèmes, et le reste va à votre équipe.

Commencez gratuitement dès aujourd’hui.

1 agent, 100 réponses IA par mois et l’app iPhone, iPad et Android. Gratuit à vie. Passez à un forfait supérieur quand votre équipe grandit.

  • Sans carte bancaire
  • Prêt en quelques minutes