Débutant 10 minRAG

RAG local avec Ollama sans coder (Open WebUI, AnythingLLM)

Faire du RAG local avec Ollama signifie poser des questions à un LLM auto-hébergé en lui faisant lire vos propres documents — sans envoyer une ligne au cloud. Deux outils gratuits permettent de le monter sans coder : Open WebUI (interface ChatGPT-like avec base de connaissances intégrée) et AnythingLLM (workspaces + citations). Ce guide fait le tour en 10 minutes, y compris sur une petite machine sans GPU.

Par Mohamed Meguedmi·Màj 2026-06-02·Testé sur Windows, macOS, Linux

#Pourquoi un RAG local avec Ollama

Un RAG (Retrieval-Augmented Generation) répond à une limite simple des LLM : ils ne connaissent que leurs données d'entraînement. Le RAG les branche sur vos documents : PDF de procédures internes, notes Markdown, exports d'emails, contrats, manuels — tout ce qui n'est ni public ni récent. Le modèle lit les passages pertinents avant de répondre, et cite ses sources si l'outil le permet.

La version cloud (ChatGPT, Claude, Gemini) impose d'uploader vos documents sur des serveurs tiers. Pour un cabinet d'avocats, un médecin, un comptable, ou même un particulier qui ne veut pas voir ses notes personnelles partir aux États-Unis, c'est rédhibitoire. Un RAG local Ollama règle ce problème : tout reste sur votre machine, et vous gardez la main sur les coûts (zéro) comme sur la confidentialité.

Confidentialité totale
Vos documents ne quittent jamais la machine. Aucun token n'est envoyé à un fournisseur.
Coût marginal nul
Pas d'abonnement, pas de quota API. Vous payez l'électricité, point.
Offline
Une fois le modèle téléchargé, le RAG fonctionne sans connexion internet.
Personnalisable
Vous choisissez le modèle de réponse, le modèle d'embeddings, les sources.

#Ollama fait-il du RAG nativement ?

Réponse claire : non. Ollama est un moteur d'inférence — il télécharge et exécute des LLM, expose une API OpenAI-compatible sur http://localhost:11434, mais ne sait pas indexer vos documents tout seul. Il n'a ni base vectorielle, ni découpeur de PDF, ni interface pour glisser-déposer des fichiers.

En revanche, il sait servir un modèle de génération et un modèle d'embeddings en parallèle — c'est tout ce qu'il faut pour qu'un outil tiers (Open WebUI, AnythingLLM, LangChain…) construise un RAG par-dessus. Quand on parle de RAG local Ollama, on parle donc toujours d'une combinaison Ollama + interface RAG.

i
Le bon mental model
Ollama = le moteur (deux services : LLM de réponse + LLM d'embeddings). Open WebUI ou AnythingLLM = la chaîne : ingestion des documents, découpage en chunks, calcul des embeddings, stockage vectoriel, recherche, injection dans le prompt. Aucune ligne de code à écrire.

#Prérequis

Ollama installé
Sur Windows, macOS ou Linux. Il écoute par défaut sur http://localhost:11434.
Un modèle de réponse
Llama 3.1 8B, Mistral 7B, Qwen 2.5 7B en Q4_K_M. Compter ~5 Go de VRAM ou de RAM.
Un modèle d'embeddings
nomic-embed-text ou mxbai-embed-large. ~300 Mo. Indispensable pour vectoriser les documents.
Docker (option Open WebUI)
Docker Desktop sur Windows/macOS, ou docker.io sur Linux. C'est le mode d'install recommandé.
Espace disque
10 Go minimum pour le modèle LLM + embeddings + l'index vectoriel de vos docs.
Préparer les deux modèles Ollama
# Le LLM qui va répondre
ollama pull llama3.1:8b

# Le modèle d'embeddings (obligatoire pour le RAG)
ollama pull nomic-embed-text

# Vérifier que les deux sont bien là
ollama list

#1. Open WebUI : base de connaissances intégrée

Open WebUI (ex-Ollama WebUI) est l'interface ChatGPT-like la plus populaire pour Ollama. Sa fonctionnalité Knowledge (base de connaissances) permet d'uploader des documents et de les interroger par RAG, sans rien configurer côté code.

  1. 01
    Lancer Open WebUI en Docker
    Dans un terminal : docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main. Sur Linux natif, remplacer host.docker.internal par localhost si vous lancez Ollama hors Docker.
  2. 02
    Ouvrir l'interface
    Aller sur http://localhost:3000. Créer un compte admin (le premier compte est admin par défaut). Open WebUI détecte automatiquement Ollama sur localhost:11434.
  3. 03
    Créer une base de connaissances
    Aller dans Workspace → Knowledge → + Create a Knowledge Base. Donner un nom (ex. : 'Contrats clients'). C'est votre conteneur vectoriel.
  4. 04
    Importer ses documents
    Cliquer sur le + en haut à droite de la base, puis uploader vos PDF, .docx, .md, .txt. Open WebUI les découpe et calcule les embeddings en arrière-plan.
  5. 05
    Configurer le modèle d'embeddings
    Settings (admin) → Documents → Embedding Model Engine = Ollama, Embedding Model = nomic-embed-text. Sauvegarder. Sans ça, Open WebUI utilise un modèle par défaut moins adapté au français.
  6. 06
    Interroger la base
    Dans un nouveau chat, taper # puis le nom de la base de connaissances pour l'attacher. Poser sa question — la réponse est générée à partir des chunks pertinents, avec des numéros de citation cliquables.
Astuce attachement rapide
Si vous avez juste un ou deux PDF à interroger sans créer de base, vous pouvez aussi glisser-déposer un fichier directement dans la zone de chat. Open WebUI bascule en mode RAG sur ce document uniquement, le temps de la conversation.

#2. AnythingLLM : workspaces et citations

AnythingLLM est l'alternative la plus aboutie à Open WebUI sur le terrain du RAG. Là où Open WebUI est généraliste, AnythingLLM est conçu autour de la notion de workspace : chaque projet a sa propre base documentaire, son propre modèle, son propre historique. Idéal quand vous voulez séparer 'Contrats clients' de 'Notes perso' de 'Documentation technique'.

  1. 01
    Installer AnythingLLM
    Télécharger l'installeur Desktop sur useanything.com pour Windows, macOS ou Linux. C'est une application Electron — pas de Docker requis pour la version desktop.
  2. 02
    Choisir Ollama comme LLM provider
    Au premier lancement, l'assistant demande quel LLM utiliser. Sélectionner Ollama, indiquer l'URL http://localhost:11434, choisir llama3.1:8b dans la liste qui se charge automatiquement.
  3. 03
    Choisir le moteur d'embeddings
    Étape suivante : Embedder. Sélectionner Ollama, modèle nomic-embed-text. AnythingLLM peut aussi utiliser son embedder local intégré si vous n'avez pas tiré nomic-embed-text — moins bon, mais zéro config.
  4. 04
    Créer un workspace
    Dans la sidebar : + New Workspace. Lui donner un nom. Cliquer dessus, puis sur l'icône d'upload pour glisser vos PDF, .docx, .csv, .epub, URL ou même vidéos YouTube (transcription auto).
  5. 05
    Mover documents → workspace
    AnythingLLM sépare l'ingestion (documents listés à gauche) de l'usage (workspace à droite). Sélectionner les docs, cliquer 'Move to Workspace', puis 'Save and Embed'. C'est là que les embeddings sont calculés via Ollama.
  6. 06
    Discuter avec citations
    Dans le workspace, poser sa question. Chaque réponse contient un panneau Citations dépliable, qui montre exactement quels chunks ont été utilisés. Très utile pour vérifier que le modèle n'a pas halluciné.
Open WebUI
Meilleur si vous voulez une interface ChatGPT-like généraliste, multi-utilisateurs (équipe), avec accès web. Le RAG est une feature parmi d'autres.
AnythingLLM
Meilleur si le RAG est l'usage principal : workspaces stricts, citations bien faites, support de plus de formats (URL, YouTube, GitHub), agents intégrés.

#3. Quel modèle d'embeddings choisir

Le modèle d'embeddings est la pièce que beaucoup ratent. C'est lui qui transforme vos documents en vecteurs — sa qualité conditionne directement la pertinence des passages retrouvés. Sur des documents français, certains modèles sont nettement meilleurs que d'autres.

nomic-embed-text (137M, 274 Mo)
Le défaut recommandé. Rapide, multilingue correct, contexte 8192 tokens. Très bon compromis pour commencer. Disponible directement : ollama pull nomic-embed-text.
mxbai-embed-large (335M, 670 Mo)
Plus précis que nomic, légèrement plus lent. Anglais surtout, mais tient le français pour des documents standards. À privilégier si la qualité prime sur la vitesse. ollama pull mxbai-embed-large.
bge-m3 (567M, 1.2 Go)
Excellent en multilingue (100+ langues, dont français natif), contexte 8192. Plus lourd. Disponible sur Hugging Face, importable dans Ollama via Modelfile.
snowflake-arctic-embed
Bon multilingue, plus léger que bge-m3. Bonne alternative si bge-m3 est trop lourd.
Règle pratique pour le français
Commencez par nomic-embed-text. Si vos résultats RAG sont médiocres sur des PDF français techniques (juridique, médical), passez à bge-m3 ou un modèle dédié comme Solon. Le changement d'embedding model oblige à réindexer toute la base — pensez-y avant de remplir 5 000 documents.

#4. RAG local sur 4 Go de RAM, sans GPU

Oui, c'est faisable. Le RAG est moins gourmand qu'on le croit : le gros du travail (embeddings) est ponctuel à l'ingestion, et à l'usage, c'est juste le LLM qui répond avec quelques milliers de tokens de contexte en plus. Sur une petite machine, l'arbitrage se fait surtout sur le LLM de réponse.

4 Go de RAM, CPU lent (vieux portable)
LLM : qwen2.5:1.5b ou llama3.2:1b en Q4_K_M (~1 Go). Embeddings : nomic-embed-text. Réponses lentes mais lisibles (3-5 tok/s). Le contexte du LLM passe à 2048 pour rester sous le seuil RAM.
8 Go de RAM, CPU récent (i5/Ryzen 5)
LLM : llama3.2:3b ou phi-3.5-mini Q4 (~2.5 Go). Embeddings : nomic-embed-text. ~6-10 tok/s. C'est la config 'pas mal du tout' sans GPU.
16 Go de RAM, sans GPU
LLM : llama3.1:8b ou mistral:7b Q4 (~5 Go). Embeddings : nomic ou mxbai. ~4-8 tok/s en CPU pur sur un Ryzen 7 ou i7 récent.
Setup minimal RAM-friendly
# Petit LLM rapide, embeddings standards
ollama pull qwen2.5:1.5b
ollama pull nomic-embed-text

# Réduire le contexte pour économiser la RAM
# Dans Open WebUI : Settings → Models → llama → num_ctx = 2048
# Dans AnythingLLM : Workspace settings → Max Tokens = 2048

# Vérifier l'usage RAM en pleine question :
ollama ps
!
Indexation = pic de charge
L'ingestion de gros documents (centaines de pages) est l'étape la plus lourde — chaque chunk doit passer par le modèle d'embeddings. Sur une petite machine, fragmentez : importez les documents par lots de 10-20, laissez l'indexation finir avant d'enchaîner. Sinon, Ollama peut saturer la RAM et planter en plein milieu.

#Dépannage

Le modèle 'ne voit pas' mes documents
Vérifiez que la base de connaissances est bien attachée au chat (Open WebUI : commande #, AnythingLLM : icône workspace). Vérifiez aussi que les documents sont bien 'embedded', pas seulement uploadés.
Réponses très lentes sur petits modèles
Le RAG ajoute 1000 à 3000 tokens au contexte. Réduisez le top-k (3-5 chunks au lieu de 10) dans les settings RAG, et baissez le num_ctx du LLM à 2048 ou 4096.
Hallucinations malgré les documents
Augmentez le top-k, vérifiez que l'embedding model est bien celui qui a indexé (un changement de modèle invalide la base). Activez les citations pour voir ce que le LLM a vraiment lu.
Open WebUI ne voit pas Ollama
Sur Docker, utilisez --add-host=host.docker.internal:host-gateway, puis dans Settings → Connections, mettez http://host.docker.internal:11434 comme URL Ollama.
AnythingLLM se fige à l'embed
Souvent un manque de RAM. Fermez d'autres apps, fragmentez l'import, ou passez à un modèle d'embeddings plus léger (nomic au lieu de bge-m3).

#Pour aller plus loin

Une fois votre RAG local Ollama en place, plusieurs guides logiques pour approfondir :

RAG local : introduction
Le guide conceptuel qui explique ce qui se passe sous le capot (chunking, embeddings, retrieval) — utile pour comprendre pourquoi ça marche ou pas.
Les meilleurs modèles d'embeddings FR
Comparatif détaillé BGE, E5, Solon pour le contenu français — quand changer de nomic-embed-text.
Open WebUI avec Ollama : guide complet
Pour aller plus loin que le RAG sur Open WebUI : multi-utilisateurs, profils, custom prompts, pipelines.
Faire tourner un LLM sans GPU
Guide détaillé CPU-only avec benchmarks tokens/sec par CPU — si vous voulez optimiser votre setup RAG sans carte graphique.
Ce guide vous a aidé ?

Un retour, une erreur, une précision ? Faites-nous signe, ça améliore le guide pour tout le monde.