- Veröffentlicht am
Einfache Anleitung: Lokale Installation und Ausführung von RagFlow mit DeepSeek - Eine End-to-End-Anleitung

Einleitung
RagFlow ist eine innovative, Open-Source-RAG (Retrieval-Augmented Generation)-Engine, die von Infiniflow entwickelt wurde und auf GitHub verfügbar ist. Sie nutzt tiefes Dokumentenverständnis, um Wissen aus unstrukturierten Daten zu extrahieren und kombiniert dieses mit großen Sprachmodellen (LLMs), insbesondere DeepSeek, um fundierte, zitierfähige Antworten zu liefern. RagFlow ist so konzipiert, dass es komplexe Dokumente verarbeitet, Halluzinationen reduziert und nachvollziehbare Antworten liefert, was es zu einem leistungsstarken Werkzeug für AI-gestützte Workflows macht.
In diesem Beitrag führen wir Sie durch den Prozess der Installation und Ausführung von RagFlow lokal unter Verwendung von DeepSeek als LLM-Modell. Wir werden DeepSeek für Chat-Interaktionen und Mistral zur Erstellung von Embeddings nutzen. Diese Schritt-für-Schritt-Anleitung hilft Ihnen, die Engine einzurichten, zu konfigurieren und effektiv in Ihrer eigenen Umgebung zu nutzen.
Laufumgebung
Unsere Bewertung von RagFlow wurde auf einer Ubuntu-Virtual-Machine durchgeführt, die über WSL (Windows Subsystem for Linux) auf einem Windows 11 PC lief. Diese Einrichtung bot eine robuste und flexible Umgebung zum Testen der Fähigkeiten von RagFlow, sodass wir reale Einsatzszenarien simulieren konnten, während wir die Bequemlichkeit eines Windows-basierten Entwicklungsökosystems nutzten.
Installationsanweisungen
Um mit RagFlow zu beginnen, folgen Sie diesen Schritten:
Repository klonen: Beginnen Sie mit dem Klonen des RagFlow-Repositories von GitHub mit dem folgenden Befehl:
git clone https://github.com/infiniflow/ragflow.gitUmgebung einrichten: Navigieren Sie zu dem geklonten Repository und installieren Sie die erforderlichen Abhängigkeiten mit dem folgenden Befehl:
pip install -r requirements.txt
Für zusätzliche Anweisungen, siehe das offizielle RagFlow GitHub Repository.
Ausführen von RagFlow in Containern
Um den Bereitstellungsprozess zu vereinfachen, kann RagFlow mit Docker-Containern ausgeführt werden. Das Repository enthält eine docker-compose.yml-Datei im docker-Verzeichnis, mit der Sie alle notwendigen Dienste mit einem einzigen Befehl starten können. Um RagFlow im abgetrennten Modus (im Hintergrund laufend) zu starten, verwenden Sie den folgenden Befehl:
docker compose -f docker/docker-compose.yml up -d
Dieser Befehl initialisiert die erforderlichen Container und stellt sicher, dass RagFlow läuft und bereit für die Auswertung oder Integration in Ihre Workflows ist. Für detaillierte Anweisungen, siehe das offizielle RagFlow GitHub Repository.
Standardmäßig verwendet RagFlow Port 80 für HTTP-Dienste. Dieser Port kann jedoch angepasst werden, um Ihren spezifischen Bereitstellungsanforderungen gerecht zu werden, indem Sie die docker-compose.yml-Datei ändern oder die relevanten Umgebungsvariablen anpassen.
Um zu überprüfen, ob RagFlow korrekt gestartet wurde, können Sie die Logs des ragflow-server-Containers mit dem folgenden Befehl überprüfen:
docker logs -f ragflow-server
Wenn RagFlow erfolgreich läuft, sollten Sie eine ähnliche Ausgabe wie die folgende sehen:
* Running on all addresses (0.0.0.0)
* Running on http://127.0.0.1:9380
* Running on http://x.x.x.x:9380
INFO:werkzeug:Press CTRL+C to quit
Diese Ausgabe zeigt an, dass RagFlow aktiv Anfragen auf den angegebenen Adressen und Ports bedient.
Zugriff auf RagFlow über den Browser
Um auf RagFlow über Ihren Browser zuzugreifen, geben Sie die IP-Adresse Ihres Servers ein und melden Sie sich bei RagFlow an. In meinem Fall, da ich den Standardport 80 verwende und ihn in einer WSL Ubuntu VM auf meinem PC ausführe, navigiere ich einfach zu http://localhost.
Wenn Sie ein Erstbenutzer sind, müssen Sie sich registrieren, um ein Konto zu erstellen. Der Registrierungsprozess ist einfach und erfordert nur eine E-Mail-Adresse, einen Nickname und ein Passwort. Sobald Sie registriert sind, können Sie sich anmelden und beginnen, die Funktionen von RagFlow zu erkunden.

Einrichten von Chat- und Embedding-Modellen
In unserer Bewertung verwenden wir deepseek-chat als Chat-Modell und mistral-embed als Embedding-Modell. Um diese Modelle einzurichten, folgen Sie den untenstehenden Schritten:
LLM-Anbieter hinzufügen:
- Navigieren Sie zum Abschnitt Modellanbieter unter den Benutzereinstellungen in der RagFlow-Oberfläche.
- Fügen Sie die notwendigen API-Schlüssel für DeepSeek und Mistral hinzu.
- Speichern Sie die Konfiguration.

Modelle festlegen:
- Drücken Sie System Model Settings.
- Wählen Sie deepseek-chat als Chat-Modell und mistral-embed als Embedding-Modell.
- Speichern Sie die Einstellungen, um die Änderungen anzuwenden.

Sobald die Modelle konfiguriert sind, ist RagFlow bereit, DeepSeek für Chat-Interaktionen und Mistral zur Erstellung von Embeddings zu nutzen.
Erstellen einer Wissensdatenbank und Hinzufügen von Dokumenten
In dieser Bewertung haben wir eine neue Wissensdatenbank namens AI-papers erstellt und 20 PDF-Papiere hinzugefügt, die von arXiv abgerufen wurden, indem wir nach dem Stichwort DeepSeek gesucht haben. Hier ist, wie wir es gemacht haben:
Erstellen der Wissensdatenbank:
- Navigieren Sie zum Abschnitt Wissensdatenbank in der RagFlow-Oberfläche.
- Erstellen Sie eine neue Wissensdatenbank namens AI-papers.
- Speichern Sie die Konfiguration.

Standardmodus für Dokumenten-Chunking und Embedding-Modell beibehalten:
- Wir behielten die Standard-Chunking-Methode zur Verarbeitung der Dokumente bei. Auch für das Embedding-Modell behielten wir das zuvor konfigurierte Standardmodell mistral-embed bei.

Hinzufügen von PDF-Dokumenten zur Wissensdatenbank:
- Laden Sie die 20 PDF-Papiere in die Wissensdatenbank AI-papers hoch.
- Stellen Sie sicher, dass alle Dokumente ordnungsgemäß zur Verarbeitung ausgewählt sind.

Parsen aller Dokumente als Massenoperation:
- Starten Sie den Parsing-Prozess für alle hochgeladenen Dokumente in einer Massenoperation.
- Die Gesamtzeit für das Parsen aller 20 Dokumente betrug etwa 35 Minuten.

Sobald das Parsen abgeschlossen ist, ist die Wissensdatenbank bereit für Abfragen, sodass RagFlow Antworten basierend auf dem Inhalt der hochgeladenen Papiere abrufen und generieren kann.
Erstellen eines neuen Chat-Assistenten
Um einen neuen Chat-Assistenten namens AI-papers Assistant zu erstellen, der die Wissensdatenbank AI-papers nutzt, folgen Sie diesen Schritten:
Navigieren Sie zu Chat in der RagFlow-Oberfläche
Neuen Assistenten erstellen:
- Wählen Sie die Option, einen neuen Assistenten zu erstellen.
- Benennen Sie ihn AI-papers Assistant.
- Wählen Sie die Wissensdatenbank AI-papers aus den verfügbaren Optionen.

Prompt Engine und Modelleinstellungen konfigurieren:
- Behalten Sie die Standardwerte für die Registerkarten Prompt Engine und Modelleinstellungen bei.
- Stellen Sie unter der Modellkonfiguration sicher, dass das Modell deepseek-chat wie zuvor konfiguriert ausgewählt ist.

Konfiguration speichern:
- Speichern Sie die Einstellungen, um die Erstellung des AI-papers Assistant abzuschließen.
Nach Abschluss dieser Schritte ist der AI-papers Assistant bereit, Benutzern zu helfen, indem er die Wissensdatenbank AI-papers nutzt und relevante Antworten basierend auf den hochgeladenen Dokumenten liefert.
Beispielabfrage an den AI-papers Assistant
Eine der Fragen, die Sie dem AI-papers Assistant stellen können, ist: "Was sind die wichtigsten Innovationen im DeepSeek Reasoner Modell?" Um einen Chat mit dem AI-papers Assistant zu starten, folgen Sie diesen Schritten:
Navigieren Sie zur Chat-Oberfläche:
- Gehen Sie zum Chat-Oberflächenabschnitt in der RagFlow-Anwendung.
AI-papers Assistant auswählen:
- Wählen Sie AI-papers Assistant aus der Liste der verfügbaren Assistenten.
Frage stellen:
- Geben Sie die Frage in die Chat-Oberfläche ein.

Antworten empfangen:
- Der AI-papers Assistant wird mit Informationen zu den wichtigsten Innovationen im DeepSeek Reasoner Modell antworten, einschließlich Verweisen auf die Quellinformationen, die für die Antwort verwendet wurden.

Schlussfolgerung
Zusammenfassend bietet RagFlow mehrere überzeugende Funktionen, die es zu einer attraktiven Wahl für Benutzer machen, die eine effektive RAG-Lösung suchen:
Open-Source-Lösung: Als Open-Source-Projekt ermöglicht RagFlow den Benutzern, frei auf seine Entwicklung zuzugreifen, sie zu ändern und dazu beizutragen.
Einfache Installation: Mit Docker-Containern ist die lokale Einrichtung und Ausführung von RagFlow einfach und effizient, was den Bereitstellungsprozess vereinfacht.
Anpassungsfähigkeit: Die Plattform ist hochgradig anpassbar und unterstützt eine breite Auswahl an LLM-Anbietern sowohl für Chat- als auch für Embedding-Modelle, um den unterschiedlichen Bedürfnissen der Benutzer gerecht zu werden.
Intuitive Benutzeroberfläche: Die Benutzeroberfläche von RagFlow ist benutzerfreundlich gestaltet und bietet eine nahtlose Erfahrung bei der Verwaltung von Wissensdatenbanken und der Teilnahme am Chat.
Einbeziehung von Referenzen: Die Einbeziehung von Referenzen in Chat-Antworten erhöht die Glaubwürdigkeit der bereitgestellten Informationen und erleichtert es den Benutzern, Quellen zu überprüfen.
Insgesamt zeichnet sich RagFlow als leistungsstarkes und benutzerfreundliches Werkzeug zur Nutzung der Fähigkeiten der Retrieval-Augmented-Generation-Technologie aus.
Hat Ihnen diese Ankündigung gefallen? Fanden Sie sie informativ? Hinterlassen Sie gerne einen Kommentar unten, um Ihre Gedanken zu teilen oder Fragen zu stellen. Ein GitHub-Konto ist erforderlich, um an der Diskussion teilzunehmen.