RAG (Retrieval-Augmented Generation) : Guide pratique pour l'entreprise
Comprendre et implémenter un système RAG en entreprise. Architecture, choix des embeddings, vector stores, chunking strategies et bonnes pratiques de production.
Qu'est-ce que le RAG et pourquoi c'est indispensable ?
Le RAG (Retrieval-Augmented Generation) est une architecture qui combine la recherche d'information dans vos données internes avec la capacité de génération d'un LLM. C'est la méthode la plus efficace pour rendre un LLM expert de votre entreprise sans fine-tuning coûteux.
Au lieu de demander au LLM de "deviner" depuis ses données d'entraînement, le RAG lui fournit les informations pertinentes de votre base de connaissances en temps réel.
Architecture RAG : les composants essentiels
Une pipeline RAG se compose de 4 étapes :
- Ingestion : extraction et nettoyage des documents (PDF, Confluence, SharePoint, bases de données)
- Chunking : découpage des documents en morceaux exploitables (500-1000 tokens)
- Embedding : conversion des chunks en vecteurs numériques via un modèle d'embedding
- Retrieval + Generation : recherche des chunks pertinents et génération de la réponse par le LLM
┌─────────────┐ ┌──────────┐ ┌──────────────┐
│ Documents │────▶│ Chunking │────▶│ Embeddings │
│ internes │ │ Strategy │ │ (modèle) │
└─────────────┘ └──────────┘ └──────┬───────┘
│
┌──────▼───────┐
│ Vector Store │
│ (Pinecone, │
│ Weaviate, │
│ pgvector) │
└──────┬───────┘
│
┌──────────┐ ┌──────────┐ ┌──────▼───────┐
│ Question │────▶│ Retrieval│───────▶│ LLM + │
│ utilisat.│ │ (top-k) │ │ Context │
└──────────┘ └──────────┘ └──────────────┘Stratégies de chunking : le facteur clé de qualité
La qualité du chunking détermine directement la qualité des réponses. Voici les stratégies que nous utilisons :
- Recursive character splitting : découpe par paragraphes puis par phrases, avec overlap de 10-20%
- Semantic chunking : utilise les embeddings pour détecter les changements de sujet
- Document-aware chunking : respecte la structure du document (titres, sections, tableaux)
Nos règles empiriques :
- Taille de chunk : 500-1000 tokens pour la plupart des cas
- Overlap : 10-20% pour préserver le contexte aux frontières
- Metadata : ajoutez toujours le titre du document, la section et la date en metadata
Choisir son modèle d'embedding
| Modèle | Dimensions | Performance | Coût |
|---|---|---|---|
| OpenAI text-embedding-3-large | 3072 | ⭐⭐⭐⭐⭐ | $$ |
| Cohere embed-v4 | 1024 | ⭐⭐⭐⭐⭐ | $$ |
| Voyage AI voyage-3 | 1024 | ⭐⭐⭐⭐ | $$ |
| BGE-M3 (open-source) | 1024 | ⭐⭐⭐⭐ | Gratuit |
Pour le français, nous recommandons OpenAI text-embedding-3-large ou Cohere embed-v4 qui offrent les meilleures performances multilingues.
Vector stores : quelle base choisir ?
| Solution | Type | Avantage principal | Cas d'usage |
|---|---|---|---|
| pgvector | Extension PostgreSQL | Pas de nouvelle infra | PME, MVP |
| Pinecone | SaaS managé | Zéro ops, scaling auto | Production enterprise |
| Weaviate | Open-source | Recherche hybride native | Grands volumes |
| Qdrant | Open-source | Performance brute | Latence critique |
Notre recommandation : commencez avec pgvector si vous avez déjà PostgreSQL, puis migrez vers une solution dédiée quand le volume dépasse 1M de documents.
Techniques avancées de RAG
- Hybrid search : combinez la recherche vectorielle avec BM25 (keyword search) pour de meilleurs résultats
- Reranking : utilisez un modèle de reranking (Cohere Rerank, BGE-reranker) après la retrieval pour affiner la pertinence
- Query expansion : reformulez la question utilisateur en plusieurs variantes pour améliorer le recall
- Self-RAG : le LLM évalue lui-même la pertinence des documents récupérés avant de répondre
- Graph RAG : combinez Knowledge Graphs avec les embeddings pour capturer les relations entre concepts
ITCE implémente ces architectures RAG avancées pour des clients comme la Société Générale et le Ministère du Travail. Discutons de votre projet.
Questions fréquentes
RAG vs Fine-tuning : quelle approche choisir ?
Le RAG est recommandé quand vos données changent fréquemment et que vous avez besoin de traçabilité (citations). Le fine-tuning est préférable quand vous avez besoin de modifier le style de réponse du modèle ou d'intégrer des connaissances très spécialisées et stables dans le temps.
Combien coûte un système RAG en production ?
Les coûts principaux sont : embedding des documents (~$10-100/mois pour 100K documents), vector store ($50-500/mois selon le volume), et les appels LLM ($100-1000/mois selon l'usage). Le développement initial prend 2-4 mois.
Un RAG peut-il halluciner ?
Moins qu'un LLM seul, mais oui. Les principales causes sont : chunks non pertinents récupérés, question hors périmètre des documents, ou contexte insuffisant. Les techniques de grounding et de citation forcée réduisent drastiquement ce risque.