Selbst gehostetes Dify: KI-Apps auf Basis Ihres LLM erstellen lokal
Dify ist eine Open-Source-Plattform, mit der Sie über eine visuelle Oberfläche KI-Anwendungen – Chatbots, Workflows, Agenten und RAG-Assistenten – erstellen können, ohne eine einzige Zeile Code zu schreiben. Selbst gehostet und mit Ollama verbunden, bietet sie Ihnen eine vollständige No-Code-Schicht für Ihre lokalen Modelle: Ihre Prompts, Dokumente und Daten verlassen niemals Ihren Rechner. Dieser Leitfaden behandelt die Bereitstellung mit Docker Compose, die Verbindung zu einem lokalen LLM und die Erstellung eines ersten funktionsfähigen RAG-Assistenten.
#Warum Dify statt einer Chat-Oberfläche
Open WebUI oder LM Studio reichen aus, um mit einem Modell zu sprechen. Dify geht einen Schritt weiter: wiederverwendbare Anwendungen erstellen. Sie definieren einen Systemprompt, verbinden ihn mit einer Wissensdatenbank, stellen das Ganze über eine API oder ein einbettbares Chat-Widget bereit und versionieren Ihre Iterationen. Das ist das lokale Open-Source-Pendant zu OpenAI Assistants oder Coze.
Die Kombination Dify + Ollama bietet zwei Vorteile. Erstens die Vertraulichkeit: Anders als bei Dify mit Anbindung an GPT-4 oder Claude bleiben hier die indexierten Dokumente und die Gespräche auf Ihrer Infrastruktur. Zweitens die Kosten: Es werden keine Tokens abgerechnet, und Sie können Hunderte von Prompts iterativ testen, ohne die API-Rechnung im Blick behalten zu müssen.
- Chatbot
- Ein dialogorientierter Assistent mit Systemprompt, Eingabevariablen und Gesprächsspeicher.
- Agent
- Ein Assistent, der Werkzeuge (Webrecherche, Berechnungen, API) in einer Schleife aufrufen kann, bis die Aufgabe gelöst ist.
- Workflow
- Eine visuelle Verkettung von Knoten (LLM, Bedingung, Extraktion, HTTP) für deterministische Verarbeitungsschritte.
- Knowledge / RAG
- Die Indexierung Ihrer Dokumente, damit die Apps ihre Antworten darauf stützen und dabei die Quellen angeben.
#Voraussetzungen
Dieser Guide führt Sie zum Modell. Das Kit führt Sie zum Copiloten, der in Ihrem Editor Code schreibt.
- Lebenslanger Online-Zugang
- PDF + Dateien
- Erstattung binnen 30 Tagen
Dify ist eine Anwendung mit mehreren Containern (API, Worker, Frontend, PostgreSQL-Datenbank, Redis, Vektordatenbank). Sie wird über Docker Compose bereitgestellt. Auf Modellseite wird vorausgesetzt, dass Ollama bereits läuft und auf seinem Standardport lauscht.
- Docker + Docker Compose
- Aktuelle Docker Engine mit Compose-Plugin (Befehl docker compose). Unter Windows/macOS reicht Docker Desktop aus.
- Ollama funktionsfähig
- Der Ollama-Daemon ist installiert und unter http://localhost:11434 erreichbar. Testen Sie dies mit ollama list, bevor Sie beginnen.
- Ein Chatmodell
- Zum Beispiel qwen3.5:9b (256k Kontext, multimodal, Apache 2.0), die Referenzwahl für 8 GB im Jahr 2026. In Q4 passt das Modell in etwa 6,6 GB VRAM (eine RTX 3060 mit 12 GB reicht mehr als aus).
- Ein Embeddings-Modell
- Unverzichtbar für RAG: nomic-embed-text ist der Standard, leicht und effizient.
- Ressourcen
- Planen Sie etwa 8 GB RAM für den Dify-Stack selbst ein, zusätzlich zum VRAM/RAM, den Ihre Ollama-Modelle benötigen.
#Dify über Docker Compose installieren
Dify stellt ein offizielles Repository mit einem einsatzbereiten docker-Ordner bereit. Man klont das Repository, kopiert die Beispiel-Umgebungsdatei und startet den Stack.
- 01Repository klonenLaden Sie die neueste stabile Version des Projekts von GitHub herunter und wechseln Sie anschließend in das Verzeichnis docker, das die Datei docker-compose.yaml enthält.
- 02Die .env-Datei erstellenKopieren Sie .env.example nach .env. Die Standardwerte reichen für die lokale Nutzung aus; in dieser Datei passen Sie später die Ports oder Secrets an.
- 03Stack startenFühren Sie docker compose up -d aus. Beim ersten Start werden die Images heruntergeladen und die PostgreSQL-Datenbank initialisiert; rechnen Sie dafür mit einigen Minuten.
- 04Das Admin-Konto erstellenÖffnen Sie http://localhost/install im Browser und geben Sie die E-Mail-Adresse und das Passwort des ersten Administrators ein. Über dieses Konto wird der Arbeitsbereich verwaltet.
#Ollama als Modellanbieter einbinden
Dify kennt Ihre lokalen Modelle nur dann, wenn Sie Ollama als Anbieter deklarieren. Dies erfolgt in den Modell-Einstellungen, nicht in einer Konfigurationsdatei. Der wichtigste Punkt ist die URL: Aus einem Docker-Container bezeichnet localhost den Container selbst, nicht Ihre Hostmaschine, auf der Ollama läuft.
- 01Die Anbietereinstellungen öffnenKlicken Sie auf Ihr Profilsymbol in der oberen rechten Ecke → Einstellungen → Modellanbieter. Suchen Sie Ollama in der Liste und wählen Sie es aus.
- 02URL des Servers eingebenGeben Sie im Feld Base URL die Adresse ein, die vom Container aus erreichbar ist (siehe Hinweis unten). Der Modellname muss genau dem entsprechen, was ollama list zurückgibt, beispielsweise qwen3.5:9b.
- 03Chat-Modell hinzufügenModelltyp: LLM. Geben Sie die Kontextgröße ein (z. B. 8192 oder mehr, je nach Modell) und bestätigen Sie. Dify testet die Verbindung beim Speichern.
- 04Modell für Embeddings hinzufügenWiederholen Sie den Vorgang mit nomic-embed-text und wählen Sie dabei den Typ Text Embedding. Ohne dieses Modell können Sie keine Wissensbasis erstellen.
- 05Standardmodelle definierenLegen Sie ebenfalls in den Einstellungen qwen3.5:9b als standardmäßiges Systemmodell und nomic-embed-text als standardmäßiges Embedding-Modell fest.
#Einen ersten RAG-Assistenten ohne Programmieren erstellen
RAG (Retrieval-Augmented Generation) ermöglicht es dem Modell, Antworten auf Grundlage Ihrer Dokumente zu geben, statt sich allein auf sein Trainingswissen zu stützen. In Dify geschieht dies über eine Wissensbasis (Knowledge), die anschließend mit einer Anwendung verknüpft wird.
- 01Eine Wissensbasis erstellenReiter Knowledge → Erstellen. Importieren Sie Ihre Dateien (PDF, Markdown, TXT, DOCX). Dify zerlegt sie automatisch in Textabschnitte (Chunks).
- 02Aufteilung und Indexierung einstellenWählen Sie den Indexierungsmodus „hohe Qualität“, der Ihr Embedding-Modell nomic-embed-text verwendet. Passen Sie die Chunk-Größe an, wenn Ihre Dokumente stark strukturiert sind (Tabellen, Code).
- 03Chat-Anwendung erstellenRegisterkarte Studio → Anwendung erstellen → Chatbot. Geben Sie dem Chatbot einen Namen und eine Beschreibung.
- 04System-Prompt verfassenBeschreiben Sie im Editor die Rolle des Assistenten: „Du antwortest ausschließlich auf Basis der bereitgestellten Dokumente. Wenn die Information darin nicht enthalten ist, sag das.“ Dadurch werden Halluzinationen begrenzt.
- 05Die Knowledge Base verbindenFügen Sie im Bereich „Kontext“ der App die in Schritt 1 erstellte Wissensdatenbank hinzu. Aktivieren Sie die Quellenangaben, damit die Antworten die verwendeten Textauszüge anzeigen.
- 06Testen und anschließend veröffentlichenVerwenden Sie das Debugging-Fenster rechts, um Fragen zu stellen. Sobald das Verhalten Ihren Erwartungen entspricht, klicken Sie auf Veröffentlichen, um eine Chat-URL und einen API-Schlüssel zu erhalten.
#Workflows und Agenten: Wie weit reicht No-Code?
Über einen einfachen Chatbot hinaus bietet Dify zwei fortgeschrittenere Modi. Der Workflow-Modus stellt eine visuelle Arbeitsfläche bereit, auf der sich Knoten verbinden lassen: Benutzereingabe, LLM-Aufruf, Bedingung (if/else), Parameterextraktion, HTTP-Anfrage und Iteration über eine Liste. So entstehen deterministische Pipelines — zum Beispiel: eine E-Mail empfangen, sie klassifizieren, die Entitäten extrahieren und anschließend eine Standardantwort verfassen.
Im Agent-Modus hingegen entscheidet das Modell selbst, welche Tools es in welcher Reihenfolge aufruft, und wiederholt diesen Vorgang, bis das Ziel erreicht ist. Das ist leistungsfähiger, aber auch störanfälliger: Die Qualität hängt stark davon ab, wie gut das Modell logisch schlussfolgern und das Format für Tool-Aufrufe einhalten kann. Sehr kleine lokale Modelle (2–4B) kommen damit schlecht zurecht; setzen Sie auf ein für die Tool-Nutzung ausgelegtes Modell wie GLM 4.7 Flash (MoE 30B-A3B, MIT, ~19 GB) oder Qwen 3.8 27B (~18 GB), sofern Ihr VRAM dafür ausreicht.
- Was no-code besonders gut macht
- Schnell einen Prototyp eines RAG-Chatbots erstellen, einige LLM-Schritte verketten, eine API bereitstellen, ohne ein Backend schreiben zu müssen, Prompts im Team iterativ überarbeiten.
- Wo es beim lokalen Betrieb hakt
- Anspruchsvolle Agenten, die mehrere Tools nutzen, benötigen ein Modell, das Tools zuverlässig einsetzen kann, und damit auch VRAM. Ein Qwen 3.5 9B reicht für RAG aus, für einen komplexen Agenten jedoch selten.
- Wann Sie zum Code wechseln sollten
- Detaillierte Geschäftslogik, maßgeschneiderte Integrationen, vollständige Kontrolle über die Retrieval-Pipeline: Eine Bibliothek wie LangChain übernimmt dort, wo die visuelle Arbeitsfläche an ihre Grenzen stößt.
#Fehlerbehebung
- „Connection refused“ beim Hinzufügen des Modells
- Dify kann Ollama nicht erreichen. Das Problem ist fast immer die URL: Ersetzen Sie localhost durch host.docker.internal (Docker Desktop) oder die IP-Adresse des Docker-Gateways (Linux) und prüfen Sie, ob Ollama tatsächlich auf 0.0.0.0 lauscht.
- Das Modell erscheint nicht
- Der eingegebene Name stimmt nicht mit der Ausgabe von ollama list überein. Kopieren Sie den genauen Namen einschließlich Tag (qwen3.5:9b und nicht qwen3.5).
- Fehler bei der Dokumentindexierung
- Das Embedding-Modell ist nicht konfiguriert oder nicht heruntergeladen. Führen Sie ollama pull nomic-embed-text aus und wählen Sie es als Standard-Embedding-Modell aus.
- Sehr langsame Antworten
- Das Chat-Modell wird wahrscheinlich teilweise auf der CPU ausgeführt. Wechseln Sie zu einer leichteren Quantisierung (Q4_K_M) oder zu einem kleineren Modell und prüfen Sie, ob Ollama die GPU tatsächlich nutzt.
- Port 80 ist bereits belegt
- Ein anderer Dienst belegt den Port. Ändern Sie EXPOSE_NGINX_PORT in der .env-Datei (z. B. auf 8080) und führen Sie anschließend docker compose up -d erneut aus.
- Antworten am Thema vorbei trotz RAG
- Prüfen Sie, ob die Wissensdatenbank tatsächlich mit der App verknüpft ist und der Systemprompt das Modell verpflichtet, sich auf den Kontext zu stützen. Passen Sie auch die Chunk-Größe an.
#Weiterführende Informationen
Dify ist nur so gut wie das Modell und die Infrastruktur, die es tragen. Diese Leitfäden stärken die Bausteine, auf denen es aufbaut.
- Ollama installieren
- Der Daemon, der Ihr Chatmodell und Ihre Embeddings auf Port 11434 bereitstellt – die Grundlage des gesamten lokalen Dify-Stacks.
- Lokales RAG mit ChromaDB und Ollama
- Um zu verstehen, was Dify im Hintergrund automatisiert, und wieder mit Python die Kontrolle zu übernehmen, wenn No-Code an seine Grenzen stößt.
- n8n + Ollama: lokal automatisieren
- Ein weiterer No-Code-Ansatz, der auf die Automatisierung von Aufgaben ausgerichtet ist und die Dify-Workflows ergänzt.
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.