RAG · 9 min de lecture

Construire un RAG local en 2026 : la stack Ollama + Qdrant + LlamaIndex

DO
Damien · LocalIA
Publié 2026-05-12

Architecture en 4 briques, choix techniques (vLLM, Qdrant, LlamaIndex, Open WebUI), sizing GPU par nombre d'utilisateurs et TCO comparé à GPT-4o sur 24 mois.

Rig IA LocalIA détouré

Le RAG (Retrieval-Augmented Generation) est devenu le cas d'usage n°1 du LLM local en 2026. La promesse : tes documents, ton LLM, ton serveur — pas d'API tierce, pas de fuite de données, des réponses sourcées. Voici la stack qui marche.

Architecture en 4 briques

Un RAG c'est juste 4 composants qui se passent du texte :

BriqueRôleChoix recommandé 2026
EmbedderTransforme un texte en vecteurBGE-M3, mxbai-embed-large, ou nomic-embed-text
Vector DBStocke + cherche les vecteurs prochesQdrant (recommandé) ou Chroma (simple)
LLMGénère la réponse depuis les passages retrouvésLlama 3.3 70B Q4 ou Qwen 2.5 32B Q5
OrchestrateurChaîne le tout, gère prompts, hallucinationLlamaIndex (recommandé) ou Haystack

La stack LocalIA recommandée

1. Inférence LLM : vLLM + Ollama

Pour servir plusieurs utilisateurs en parallèle, vLLMest imbattable : PagedAttention, continuous batching, serveur OpenAI-compatible. Pour le dev solo ou les tests rapides, Ollama est plus simple à installer (1 ligne).

  • vLLM : 5-15× plus de débit que Ollama sur multi-user
  • Ollama : gestion modèles + quantization triviale
  • llama.cpp : backend bas-niveau, pour edge ou CPU-only

2. Vector DB : Qdrant

Écrit en Rust, scaling horizontal, HNSW + quantization vector, filtrage métadonnées performant. Le choix par défaut chez nous pour les bases qui dépassent 100k documents.

3. Orchestration : LlamaIndex

Plus mûr et plus modulaire que LangChain pour le RAG pur. Tu peux composer une pipeline ingestion → chunking → embedding → query → re-rank → LLM en ~50 lignes Python.

4. UI : Open WebUI

Frontend chat self-hosted, multi-user, support RAG natif, intégration Ollama et vLLM. Tu installes, tes utilisateurs causent à leurs PDF.

Quel GPU pour combien de personnes ?

Il faut bien distinguer 2 chiffres : la taille de l'équipe qui partage le rig (le chiffre commercial qui compte pour ton devis), et les utilisateurs simultanés actifs (chiffre technique, le pic de requêtes traitées en parallèle au même instant). Les deux ne sont pas du tout du même ordre.

VRAMLLM réalisteÉquipe typiquePic simultané
24 GB (RTX 4090)Qwen 2.5 32B Q5 ou Llama 70B Q35-10 pers.1-2 actifs
32 GB (RTX 5090)Llama 70B Q4 ou Qwen 32B Q810-20 pers.2-3 actifs
48 GB (A6000)Llama 70B Q5 + marge KV cache20-35 pers.3-5 actifs
64 GB (2× 5090)Llama 70B Q5 + vLLM batching40-80 pers.5-10 actifs
96 GB (2× A6000 NVLink)Llama 70B FP16 ou Mistral Large80-150 pers.10-20 actifs

Coût total d'un RAG local (24 mois)

Pour un cabinet ou une PME qui sort 10-20M tokens/mois en production RAG, voici le TCO comparé à OpenAI :

PosteRig Pro local (2× 5090)OpenAI GPT-4o équivalent
Matériel11 990 € (one-shot)0 €
Élec 24 mois (~250 W moy)≈600 €0 €
Support 24 mois1 580 € (pack Pro)0 €
API tokens 15M/mois × 240 €≈18 000 €
Total 24 mois≈14 170 €≈18 000 €
Le RAG local n'est pas un projet d'ingénieur, c'est une décision business. La question n'est plus « ça marche ? » mais « combien de tokens passent par mois ? ».

Erreurs classiques à éviter

  • Chunks trop gros : 1500-2000 tokens c'est le plafond. Au-delà, le re-ranking dilue le signal.
  • Pas de re-ranker : ajouter Cohere Rerank (ou BGE-Reranker open) double quasi toujours la précision du RAG.
  • Embeddings mal choisis : BGE-M3 multilingue écrase les anciens MPNet sur les corpus FR/EN mélangés.
  • Pas de filtres métadonnées : dater les chunks, tagger par département, indexer par client = fondamentaux RAG entreprise.
  • VRAM tendue : 90 % de la VRAM, c'est la mort dès qu'un user dépasse 8k tokens en context.

Notre recommandation pour démarrer

Si tu démarres un RAG local sans contrainte spécifique, voici la stack qu'on installe sur les rigs LocalIA :

  • Ubuntu 24.04 LTS + drivers NVIDIA + CUDA 12.6
  • vLLM (server OpenAI-compatible) + Ollama (gestion modèles)
  • Qwen 2.5 32B en Q5 par défaut (sweet spot qualité/débit/VRAM)
  • Qdrant + LlamaIndex + Open WebUI
  • Embeddings BGE-M3 (multilingue, 1024 dims)
  • Re-ranker BGE-Reranker-v2-m3

Sur un rig Pro (2× RTX 5090, 64 GB VRAM), cette stack tient 5-10 utilisateurs en RAG concurrent, débit ≈40 tok/s par stream, contexte utile 32k tokens.

RAGOpen SourceStack