Lokales RAG mit Ollama ohne Programmieren (Open WebUI, AnythingLLM)
Lokales RAG mit Ollama bedeutet, einem selbst gehosteten LLM Fragen zu stellen und es dabei Ihre eigenen Dokumente lesen zu lassen – ohne eine einzige Zeile in die Cloud zu senden. Zwei kostenlose Tools ermöglichen die Einrichtung ohne Programmieren: Open WebUI (eine ChatGPT-ähnliche Oberfläche mit integrierter Wissensbasis) und AnythingLLM (Workspaces und Quellenangaben). Dieser Leitfaden behandelt das Thema in 10 Minuten, auch für einen kleinen Rechner ohne GPU.
#Warum ein lokaler RAG mit Ollama
RAG (Retrieval-Augmented Generation) begegnet einer einfachen Einschränkung von LLMs: Sie kennen nur ihre Trainingsdaten. RAG verbindet sie mit Ihren Dokumenten: PDFs mit internen Verfahrensanweisungen, Markdown-Notizen, E-Mail-Exporten, Verträgen, Handbüchern – allem, was weder öffentlich noch aktuell ist. Das Modell liest vor der Antwort die relevanten Passagen und nennt seine Quellen, sofern das verwendete Tool dies ermöglicht.
Die Cloud-Version (ChatGPT, Claude, Gemini) erfordert, dass Sie Ihre Dokumente auf Server von Drittanbietern hochladen. Für eine Anwaltskanzlei, einen Arzt, einen Buchhalter oder auch eine Privatperson, die ihre persönlichen Notizen nicht in die USA schicken möchte, ist das ein Ausschlusskriterium. Ein lokales RAG mit Ollama löst dieses Problem: Alles bleibt auf Ihrem Rechner, und Sie behalten die Kontrolle über die Kosten (null) ebenso wie über die Vertraulichkeit.
- Vollständige Vertraulichkeit
- Ihre Dokumente verlassen die Maschine nie. Kein Token wird an einen Anbieter gesendet.
- Keine Grenzkosten
- Kein Abonnement, kein API-Kontingent. Sie zahlen für den Strom, mehr nicht.
- Offline
- Sobald das Modell heruntergeladen ist, funktioniert RAG ohne Internetverbindung.
- Anpassbar
- Sie wählen das Antwortmodell, das Embedding-Modell und die Quellen aus.
#Unterstützt Ollama RAG nativ?
Ihre KI liest Ihre Dokumente ohne eine einzige Zeile Code. Die eigentliche Frage bleibt: Antwortet sie richtig? Das RAG-Local-Kit setzt hier an (Kap. 1), zeigt die fortgeschrittene Nutzung von Open WebUI und AnythingLLM (Kap. 13) und vermittelt Ihnen, wie Sie falsche Antworten und erfundene Zitate messen (Kap. 14).
- Lebenslanger Online-Zugang
- PDF + Dateien
- Erstattung binnen 30 Tagen
Klare Antwort: nein. Ollama ist eine Inferenz-Engine – es lädt LLMs herunter, führt sie aus und stellt unter http://localhost:11434 eine OpenAI-kompatible API bereit, kann Ihre Dokumente aber nicht eigenständig indexieren. Es verfügt weder über eine Vektordatenbank noch über ein Werkzeug zum Aufteilen von PDFs oder eine Oberfläche zum Einfügen von Dateien per Drag-and-drop.
Dagegen kann er ein Generierungsmodell und ein Embedding-Modell parallel bereitstellen – mehr braucht ein externes Tool (Open WebUI, AnythingLLM, LangChain…) nicht, um darauf ein RAG-System aufzubauen. Wenn von lokalem RAG mit Ollama die Rede ist, geht es daher immer um eine Kombination aus Ollama und einer RAG-Oberfläche.
#Voraussetzungen
- Ollama installiert
- Unter Windows, macOS oder Linux. Standardmäßig lauscht Ollama auf http://localhost:11434.
- Ein Antwortmodell
- Granite 4.2 8B oder Qwen 3.5 9B in Q4_K_M. Etwa 5 bis 7 GB VRAM oder RAM einplanen.
- Ein Embeddings-Modell
- nomic-embed-text oder mxbai-embed-large. ~300 MB. Unverzichtbar, um Dokumente zu vektorisieren.
- Docker (bei Wahl von Open WebUI)
- Docker Desktop unter Windows/macOS oder docker.io unter Linux. Dies ist der empfohlene Installationsmodus.
- Festplattenspeicher
- Mindestens 10 GB für das LLM-Modell, die Embeddings und den Vektorindex Ihrer Dokumente.
#1. Open WebUI : integrierte Knowledge Base
Open WebUI (ehemals Ollama WebUI) ist die beliebteste ChatGPT-ähnliche Oberfläche für Ollama. Mit der Funktion Knowledge (Wissensbasis) können Sie Dokumente hochladen und per RAG Fragen dazu stellen, ohne etwas im Code konfigurieren zu müssen.
- 01Open WebUI mit Docker startenIn einem 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. Unter nativem Linux host.docker.internal durch localhost ersetzen, wenn Sie Ollama außerhalb von Docker starten.
- 02Oberfläche öffnenhttp://localhost:3000 aufrufen. Ein Administratorkonto erstellen (das erste Konto ist standardmäßig ein Administratorkonto). Open WebUI erkennt Ollama automatisch unter localhost:11434.
- 03Eine Wissensbasis erstellenZu Workspace → Knowledge → + Create a Knowledge Base gehen. Einen Namen vergeben (z. B. „Kundenverträge“). Das ist Ihr Vektorcontainer.
- 04Dokumente importierenOben rechts in der Wissensdatenbank auf das + klicken und anschließend Ihre PDF-, .docx-, .md- und .txt-Dateien hochladen. Open WebUI zerlegt sie in Abschnitte und berechnet die Embeddings im Hintergrund.
- 05Das Embedding-Modell konfigurierenSettings (admin) → Documents → Embedding Model Engine = Ollama, Embedding Model = nomic-embed-text. Speichern. Andernfalls verwendet Open WebUI ein Standardmodell, das weniger gut für Französisch geeignet ist.
- 06Die Wissensdatenbank abfragenIn einem neuen Chat # und anschließend den Namen der Wissensdatenbank eingeben, um sie anzuhängen. Eine Frage stellen – die Antwort wird anhand der relevanten Chunks generiert, mit anklickbaren Quellenverweisnummern.
#2. AnythingLLM: Workspaces und Quellenangaben
AnythingLLM ist die ausgereifteste Alternative zu Open WebUI im Bereich RAG. Während Open WebUI vielseitig ausgelegt ist, basiert AnythingLLM auf dem Workspace-Konzept: Jedes Projekt hat seine eigene Dokumentenbasis, sein eigenes Modell und seinen eigenen Verlauf. Ideal, wenn Sie „Kundenverträge“, „Persönliche Notizen“ und „Technische Dokumentation“ voneinander trennen möchten.
- 01AnythingLLM installierenDas Desktop-Installationsprogramm für Windows, macOS oder Linux von useanything.com herunterladen. Es handelt sich um eine Electron-Anwendung – für die Desktop-Version ist Docker nicht erforderlich.
- 02Ollama als LLM-Anbieter wählenBeim ersten Start fragt der Assistent, welches LLM verwendet werden soll. Ollama auswählen, die URL http://localhost:11434 angeben und qwen3.5:9b aus der automatisch geladenen Liste auswählen.
- 03Die Embedding-Engine wählenNächster Schritt: Embedder. Ollama und das Modell nomic-embed-text auswählen. AnythingLLM kann auch seinen integrierten lokalen Embedder verwenden, wenn Sie nomic-embed-text nicht heruntergeladen haben – weniger gut, aber ohne Konfigurationsaufwand.
- 04Workspace erstellenIn der Seitenleiste: + New Workspace. Einen Namen vergeben. Darauf klicken, dann auf das Upload-Symbol, um Ihre PDFs, .docx-, .csv- und .epub-Dateien, URLs oder sogar YouTube-Videos (automatische Transkription) hineinzuziehen.
- 05Dokumente verschieben → WorkspaceAnythingLLM trennt die Aufnahme der Dokumente (links aufgelistet) von ihrer Nutzung (Workspace rechts). Die Dokumente auswählen, auf „Move to Workspace“ und dann auf „Save and Embed“ klicken. Dabei werden die Embeddings über Ollama berechnet.
- 06Mit Quellenangaben chattenIm Workspace die eigene Frage stellen. Jede Antwort enthält einen ausklappbaren Bereich „Citations“, der genau zeigt, welche Chunks verwendet wurden. Sehr hilfreich, um zu überprüfen, ob das Modell halluziniert hat.
- Open WebUI
- Besser geeignet, wenn Sie eine vielseitige Oberfläche ähnlich wie ChatGPT wünschen, die mehrere Benutzer unterstützt (Team) und Webzugriff bietet. RAG ist dabei eine Funktion unter vielen.
- AnythingLLM
- Besser, wenn RAG der Hauptanwendungsfall ist: strikt abgegrenzte Workspaces, gut umgesetzte Quellenangaben, Unterstützung für mehr Formate (URL, YouTube, GitHub), integrierte Agenten.
#3. Welches Embedding-Modell wählen?
Das Embedding-Modell ist der Baustein, den viele übersehen. Es wandelt Ihre Dokumente in Vektoren um – seine Qualität bestimmt unmittelbar die Relevanz der gefundenen Passagen. Bei französischen Dokumenten sind einige Modelle deutlich besser als andere.
- nomic-embed-text (137M, 274 MB)
- Die empfohlene Standardwahl. Schnell, ordentliche mehrsprachige Leistung, Kontextfenster mit 8192 Tokens. Ein sehr guter Kompromiss für den Einstieg. Direkt verfügbar: ollama pull nomic-embed-text.
- mxbai-embed-large (335M, 670 MB)
- Genauer als nomic, etwas langsamer. Vor allem für Englisch, kommt aber auch mit Französisch bei üblichen Dokumenten zurecht. Zu bevorzugen, wenn Qualität wichtiger ist als Geschwindigkeit. ollama pull mxbai-embed-large.
- bge-m3 (567M, 1,2 GB)
- Ausgezeichnet im mehrsprachigen Einsatz (100+ Sprachen, darunter Französisch auf muttersprachlichem Niveau), Kontextlänge 8192. Größerer Ressourcenbedarf. Auf Hugging Face verfügbar, über ein Modelfile in Ollama importierbar.
- snowflake-arctic-embed
- Gut für mehrere Sprachen geeignet, ressourcenschonender als bge-m3. Gute Alternative, wenn bge-m3 zu viele Ressourcen benötigt.
#4. Lokaler RAG mit 4 GB RAM, ohne GPU
Ja, das ist machbar. RAG ist weniger ressourcenhungrig, als man denkt: Der größte Aufwand (Embeddings) fällt nur beim Einlesen an, und bei der Nutzung antwortet lediglich das LLM mit einigen Tausend zusätzlichen Kontexttokens. Auf einer kleinen Maschine kommt es bei der Abwägung vor allem auf das LLM an, das die Antworten liefert.
- 4 GB RAM, langsame CPU (alter Laptop)
- LLM: qwen3.5:2b oder granite4.2:3b in Q4_K_M (~2 GB). Embeddings: nomic-embed-text. Langsame, aber lesbare Antworten (3–5 Tok/s). Der Kontext des LLM wird auf 2048 gesetzt, um unter der RAM-Grenze zu bleiben.
- 8 GB RAM, aktuelle CPU (i5/Ryzen 5)
- LLM: qwen3.5:4b Q4 (~3,4 GB) oder gemma4:e2b-it-qat. Embeddings: nomic-embed-text. ~6–10 Tokens/s. Das ist die Konfiguration „gar nicht schlecht“ ohne GPU.
- 16 GB RAM, ohne GPU
- LLM: granite4.2:8b oder qwen3.5:9b Q4 (~5–7 GB). Embeddings: nomic oder mxbai. ~4–8 Tokens/s im reinen CPU-Betrieb auf einem neueren Ryzen 7 oder i7.
#Fehlerbehebung
- Das Modell „sieht“ meine Dokumente nicht
- Prüfen Sie, ob die Wissensbasis dem Chat tatsächlich zugeordnet ist (Open WebUI: Befehl #, AnythingLLM: Workspace-Symbol). Prüfen Sie außerdem, ob die Dokumente tatsächlich „embedded“ sind und nicht nur hochgeladen wurden.
- Sehr langsame Antworten bei kleinen Modellen
- RAG fügt dem Kontext 1000 bis 3000 Tokens hinzu. Verringern Sie den Parameter top-k in den RAG-Einstellungen (3 bis 5 Chunks statt 10) und setzen Sie den Parameter num_ctx des LLM auf 2048 oder 4096 herunter.
- Halluzinationen trotz der Dokumente
- Erhöhen Sie den top-k-Wert und prüfen Sie, ob das Embedding-Modell tatsächlich dasselbe ist, das zur Indexierung verwendet wurde (ein Modellwechsel macht die Datenbank ungültig). Aktivieren Sie Quellenangaben, um zu sehen, was das LLM tatsächlich gelesen hat.
- Open WebUI sieht Ollama nicht
- Bei Docker verwenden Sie --add-host=host.docker.internal:host-gateway und geben anschließend unter Settings → Connections http://host.docker.internal:11434 als Ollama-URL an.
- AnythingLLM hängt bei der Erstellung der Embeddings
- Oft ein Mangel an RAM. Schließen Sie andere Anwendungen, teilen Sie den Import auf, oder wechseln Sie zu einem leichteren Embedding-Modell (nomic anstelle von bge-m3).
#Weiterführende Informationen
Sobald Ihr lokales RAG-System mit Ollama eingerichtet ist, bieten sich mehrere weiterführende Anleitungen an:
- Lokales RAG: Einführung
- Der konzeptionelle Leitfaden, der erklärt, was im Hintergrund passiert (Chunking, Embeddings, Retrieval) – nützlich, um zu verstehen, warum etwas funktioniert oder nicht.
- Die besten Embedding-Modelle für Französisch
- Detaillierter Vergleich von BGE, E5 und Solon für französischsprachige Inhalte – wann Sie von nomic-embed-text zu einem anderen Modell wechseln sollten.
- Open WebUI mit Ollama: der komplette Guide
- Um mit Open WebUI über RAG hinauszugehen: Mehrbenutzerbetrieb, Profile, benutzerdefinierte Prompts, Pipelines.
- Ein LLM ohne GPU ausführen
- Detaillierter Leitfaden für den reinen CPU-Betrieb mit Benchmarks in Tokens pro Sekunde für die einzelnen CPUs – wenn Sie Ihr RAG-Setup ohne Grafikkarte optimieren möchten.
Haben Sie Feedback, einen Fehler entdeckt oder möchten Sie etwas präzisieren? Geben Sie uns Bescheid – so wird der Guide für alle besser.