🔎 Retrieval Augmented Generation (RAG)
Wenn Sie Ollama verwenden, beachten Sie, dass es standardmäßig eine Kontextlänge von 2048 Token hat. Das bedeutet, dass abgerufene Daten möglicherweise überhaupt nicht verwendet werden, da sie nicht in das verfügbare Kontextfenster passen. Um die Leistung von Retrieval-Augmented Generation (RAG) zu verbessern, sollten Sie die Kontextlänge in Ihren Ollama-Modelleinstellungen auf 8192+ Token erhöhen.
Retrieval Augmented Generation (RAG) ist eine bahnbrechende Technologie, die die Konversationsfähigkeiten von Chatbots verbessert, indem sie Kontext aus verschiedenen Quellen einbezieht. Sie funktioniert, indem relevante Informationen aus einer breiten Palette von Quellen wie lokalen und entfernten Dokumenten, Webinhalten und sogar Multimediaquellen wie YouTube-Videos abgerufen werden. Der abgerufene Text wird dann mit einer vordefinierten RAG-Vorlage kombiniert und dem Prompt des Benutzers vorangestellt, um eine informiertere und kontextuell relevantere Antwort zu geben.
Einer der Hauptvorteile von RAG ist seine Fähigkeit, auf Informationen aus verschiedenen Quellen zuzugreifen und diese zu integrieren, was es zu einer idealen Lösung für komplexe Konversationsszenarien macht. Wenn ein Benutzer beispielsweise eine Frage zu einem bestimmten Dokument oder einer Webseite stellt, kann RAG die relevanten Informationen aus dieser Quelle abrufen und in die Chat-Antwort integrieren. RAG kann auch Informationen aus Multimediaquellen wie YouTube-Videos abrufen und integrieren. Durch die Analyse der Transkripte oder Untertitel dieser Videos kann RAG relevante Informationen extrahieren und in die Chat-Antwort integrieren.
Lokale und entfernte RAG-Integration
Lokale Dokumente müssen zuerst über den Bereich "Dokumente" im Arbeitsbereich hochgeladen werden, um mit dem #-Symbol vor einer Abfrage darauf zugreifen zu können. Klicken Sie auf die formatierte URL in dem Feld, das oberhalb des Chatfeldes erscheint. Nach der Auswahl erscheint ein Dokumentensymbol über Nachricht senden, das den erfolgreichen Abruf anzeigt.
Sie können auch Dokumente in den Arbeitsbereich laden und darauf zugreifen, indem Sie einen Prompt mit # gefolgt von einer URL beginnen. Dies kann helfen, Webinhalte direkt in Ihre Konversationen einzubinden.
Websuche für RAG
Für die Integration von Webinhalten beginnen Sie eine Abfrage in einem Chat mit #, gefolgt von der Ziel-URL. Klicken Sie auf die formatierte URL in dem Feld, das oberhalb des Chatfeldes erscheint. Nach der Auswahl erscheint ein Dokumentensymbol über Nachricht senden, das den erfolgreichen Abruf anzeigt. Open WebUI ruft Informationen von der URL ab und parst sie, wenn möglich.
Webseiten enthalten oft überflüssige Informationen wie Navigation und Footer. Für bessere Ergebnisse verlinken Sie auf eine rohe oder leserfreundliche Version der Seite.
Anpassung der RAG-Vorlage
Passen Sie die RAG-Vorlage im Menü Admin Panel > Einstellungen > Dokumente an.
RAG-Embedding-Unterstützung
Ändern Sie das RAG-Embedding-Modell direkt im Menü Admin Panel > Einstellungen > Dokumente. Diese Funktion unterstützt Ollama- und OpenAI-Modelle, sodass Sie die Dokumentenverarbeitung nach Ihren Anforderungen verbessern können.
Zitate in der RAG-Funktion
Die RAG-Funktion ermöglicht es Benutzern, den Kontext von an LLMs übergebenen Dokumenten mit zusätzlichen Zitaten als Referenzpunkte leicht zu verfolgen. Dies gewährleistet Transparenz und Rechenschaftspflicht bei der Verwendung externer Quellen in Ihren Chats.
Erweiterte RAG-Pipeline
Die umschaltbare Hybrid-Such-Unterfunktion für unsere RAG-Embedding-Funktion verbessert die RAG-Funktionalität über BM25, mit Re-Ranking durch CrossEncoder und konfigurierbaren Relevanzschwellenwerten. Dies bietet ein präziseres und individuell abgestimmtes RAG-Erlebnis für Ihren spezifischen Anwendungsfall.
YouTube RAG-Pipeline
Die dedizierte RAG-Pipeline zum Zusammenfassen von YouTube-Videos über Video-URLs ermöglicht eine reibungslose Interaktion direkt mit Video-Transkriptionen. Diese innovative Funktion ermöglicht es Ihnen, Videoinhalte in Ihre Chats zu integrieren und so Ihr Konversationserlebnis weiter zu bereichern.
Dokumenten-Parsing
Eine Vielzahl von Parsern extrahiert Inhalte aus lokalen und entfernten Dokumenten. Weitere Informationen finden Sie in der Funktion get_loader.
Google Drive-Integration
In Verbindung mit einem Google Cloud-Projekt, bei dem die Google Picker API und die Google Drive API aktiviert sind, ermöglicht diese Funktion den Benutzern den direkten Zugriff auf ihre Drive-Dateien aus der Chat-Oberfläche und das Hochladen von Dokumenten, Präsentationen, Tabellen und mehr, die als Kontext für Ihren Chat hochgeladen werden. Kann im Menü Admin Panel > Einstellungen > Dokumente aktiviert werden. Müssen die Umgebungsvariablen GOOGLE_DRIVE_API_KEY und GOOGLE_DRIVE_CLIENT_ID festlegen, um sie zu verwenden.
Detaillierte Anweisungen
- Erstellen Sie einen OAuth 2.0-Client und konfigurieren Sie sowohl die autorisierten JavaScript-Ursprünge als auch die autorisierte Umleitungs-URI so, dass sie die URL (einschließlich Port, falls vorhanden) sind, mit der Sie auf Ihre Open-WebUI-Instanz zugreifen.
- Notieren Sie sich die Client-ID, die diesem OAuth-Client zugeordnet ist.
- Stellen Sie sicher, dass Sie sowohl die Google Drive API als auch die Google Picker API für Ihr Projekt aktivieren.
- Setzen Sie außerdem Ihre App (Projekt) auf "Testen" und fügen Sie Ihre Google Drive-E-Mail zur Benutzerliste hinzu.
- Stellen Sie den Berechtigungsumfang so ein, dass er alles umfasst, was diese APIs bieten. Und da sich die App im Testmodus befindet, ist keine Verifizierung durch Google erforderlich, um der App den Zugriff auf die Daten der eingeschränkten Testbenutzer zu gestatten.
- Gehen Sie zur Google Picker API-Seite und klicken Sie auf die Schaltfläche "Anmeldedaten erstellen".
- Erstellen Sie einen API-Schlüssel und wählen Sie unter "Anwendungsbeschränkungen" die Option "Websites". Fügen Sie dann die URL Ihrer Open-WebUI-Instanz hinzu, genauso wie die Einstellungen für autorisierte JavaScript-Ursprünge und autorisierte Umleitungs-URIs in Schritt 1.
- Beschränken Sie die API-Aufrufe für den API-Schlüssel so, dass nur Zugriff auf die Google Drive API & Google Picker API besteht.
- Konfigurieren Sie die Umgebungsvariable
GOOGLE_DRIVE_CLIENT_IDmit der Client-ID des OAuth-Clients aus Schritt 2. - Konfigurieren Sie die Umgebungsvariable
GOOGLE_DRIVE_API_KEYmit dem API-Schlüsselwert aus Schritt 7 (NICHT das OAuth-Client-Geheimnis aus Schritt 2). - Konfigurieren Sie
GOOGLE_REDIRECT_URImit der URL Ihrer Open-WebUI-Instanz (einschließlich Port, falls vorhanden). - Starten Sie dann Ihre Open-WebUI-Instanz mit diesen drei Umgebungsvariablen neu.
- Stellen Sie danach sicher, dass Google Drive unter
Admin Panel<Einstellungen<Dokumente<Google Driveaktiviert wurde.