Pipelines: UI-unabhängiges OpenAI API Plugin-Framework
VERWENDEN SIE KEINE PIPELINES WENN!
Wenn Ihr Ziel einfach nur die Unterstützung für zusätzliche Anbieter wie Anthropic oder grundlegende Filter ist, benötigen Sie wahrscheinlich keine Pipelines. Für diese Fälle sind Open WebUI Functions besser geeignet – sie sind integriert, wesentlich bequemer und einfacher zu konfigurieren. Pipelines kommen jedoch ins Spiel, wenn Sie rechenintensive Aufgaben (z. B. das Ausführen großer Modelle oder komplexer Logik) bewältigen müssen, die Sie von Ihrer Haupt-Open-WebUI-Instanz entlasten möchten, um bessere Leistung und Skalierbarkeit zu erzielen.
Willkommen bei Pipelines, einer Initiative von Open WebUI. Pipelines bringen modulare, anpassbare Workflows in jeden UI-Client, der OpenAI API-Spezifikationen unterstützt – und vieles mehr! Erweitern Sie Funktionalitäten, integrieren Sie einzigartige Logik und erstellen Sie dynamische Workflows ganz einfach mit wenigen Codezeilen.
🚀 Warum Pipelines wählen?
- Grenzenlose Möglichkeiten: Fügen Sie ganz einfach benutzerdefinierte Logik hinzu und integrieren Sie Python-Bibliotheken, von KI-Agenten bis hin zu Home-Automation-APIs.
- Nahtlose Integration: Kompatibel mit jeder UI/jedem Client, der OpenAI API-Spezifikationen unterstützt. (Nur Pipe-Typ-Pipelines werden unterstützt; Filter-Typen erfordern Clients mit Pipeline-Unterstützung.)
- Benutzerdefinierte Hooks: Erstellen und integrieren Sie benutzerdefinierte Pipelines.
Beispiele für das, was Sie erreichen können:
- Function Calling Pipeline: Verwalten Sie Funktionsaufrufe ganz einfach und verbessern Sie Ihre Anwendungen mit benutzerdefinierter Logik.
- Benutzerdefinierte RAG-Pipeline: Implementieren Sie ausgefeilte Retrieval-Augmented Generation-Pipelines, die auf Ihre Bedürfnisse zugeschnitten sind.
- Nachrichtenüberwachung mit Langfuse: Überwachen und analysieren Sie Nachrichteninteraktionen in Echtzeit mit Langfuse.
- Ratenbegrenzungsfilter: Steuern Sie den Anforderungsfluss, um die Überschreitung von Ratenbegrenzungen zu verhindern.
- Echtzeit-Übersetzungsfilter mit LibreTranslate: Integrieren Sie nahtlos Echtzeit-Übersetzungen in Ihre LLM-Interaktionen.
- Toxischer Nachrichtenfilter: Implementieren Sie Filter, um toxische Nachrichten effektiv zu erkennen und zu verarbeiten.
- Und vieles mehr!: Der Himmel ist die Grenze für das, was Sie mit Pipelines und Python erreichen können. Schauen Sie sich unsere Scaffolds an, um einen Vorsprung bei Ihren Projekten zu erzielen und zu sehen, wie Sie Ihren Entwicklungsprozess rationalisieren können!
🔧 Funktionsweise
Die Integration von Pipelines mit jedem OpenAI API-kompatiblen UI-Client ist einfach. Starten Sie Ihre Pipeline-Instanz und stellen Sie die OpenAI-URL auf Ihrem Client auf die Pipeline-URL ein. Das war's! Sie können jede Python-Bibliothek für Ihre Bedürfnisse nutzen.
⚡ Schneller Einstieg mit Docker
Pipelines sind ein Plugin-System mit beliebiger Codeausführung – laden Sie keine zufälligen Pipelines aus unbekannten Quellen herunter.
Für eine optimierte Einrichtung mit Docker
-
Führen Sie den Pipeline-Container aus
docker run -d -p 9099:9099 --add-host=host.docker.internal:host-gateway -v pipelines:/app/pipelines --name pipelines --restart always ghcr.io/open-webui/pipelines:main -
Verbinden Sie sich mit Open WebUI
- Navigieren Sie in Open WebUI zum Bereich Admin Panel > Einstellungen > Verbindungen.
- Wenn Sie sich auf dieser Seite befinden, können Sie auf die Schaltfläche
+klicken, um eine weitere Verbindung hinzuzufügen. - Stellen Sie die API-URL auf
https://:9099und den API-Schlüssel auf0p3n-w3bu!ein. - Sobald Sie Ihre Pipeline-Verbindung hinzugefügt und verifiziert haben, wird im Feld API-Basis-URL für die hinzugefügte Verbindung ein Symbol angezeigt. Wenn Sie mit der Maus darüber fahren, wird das Symbol selbst als
Pipelinesbezeichnet. Ihre Pipelines sollten nun aktiv sein.
Wenn Ihr Open WebUI in einem Docker-Container ausgeführt wird, ersetzen Sie localhost durch host.docker.internal in der API-URL.
-
Konfigurationen verwalten
- Gehen Sie im Admin-Panel zum Tab Admin Panel > Einstellungen > Pipelines.
- Wählen Sie Ihre gewünschte Pipeline aus und ändern Sie die Ventile-Werte direkt über die WebUI.
Wenn Sie keine Verbindung herstellen können, handelt es sich höchstwahrscheinlich um ein Docker-Netzwerkproblem. Wir ermutigen Sie, selbst zu recherchieren und Ihre Methoden und Lösungen im Diskussionsforum zu teilen.
Wenn Sie eine benutzerdefinierte Pipeline mit zusätzlichen Abhängigkeiten installieren müssen
-
Führen Sie den folgenden Befehl aus
docker run -d -p 9099:9099 --add-host=host.docker.internal:host-gateway -e PIPELINES_URLS="https://github.com/open-webui/pipelines/blob/main/examples/filters/detoxify_filter_pipeline.py" -v pipelines:/app/pipelines --name pipelines --restart always ghcr.io/open-webui/pipelines:main
Alternativ können Sie Pipelines direkt über die Admin-Einstellungen installieren, indem Sie die Pipeline-URL kopieren und einfügen, sofern sie keine zusätzlichen Abhängigkeiten hat.
Das war's! Sie sind jetzt bereit, mühelos anpassbare KI-Integrationen mit Pipelines zu erstellen. Viel Spaß!
📦 Installation und Einrichtung
Beginnen Sie mit Pipelines in wenigen einfachen Schritten
-
Stellen Sie sicher, dass Python 3.11 installiert ist. Dies ist die einzige offiziell unterstützte Python-Version.
-
Klonen Sie das Pipelines-Repository
git clone https://github.com/open-webui/pipelines.git
cd pipelines -
Installieren Sie die erforderlichen Abhängigkeiten
pip install -r requirements.txt -
Starten Sie den Pipelines-Server
sh ./start.sh
Sobald der Server läuft, stellen Sie die OpenAI-URL auf Ihrem Client auf die Pipeline-URL ein. Dies schaltet die vollen Fähigkeiten von Pipelines frei, integriert jede Python-Bibliothek und erstellt benutzerdefinierte Workflows, die auf Ihre Bedürfnisse zugeschnitten sind.
📂 Verzeichnisstruktur und Beispiele
Das Verzeichnis /pipelines ist der Kern Ihrer Einrichtung. Fügen Sie hier neue Module hinzu, passen Sie bestehende an und verwalten Sie Ihre Workflows. Alle Pipelines im Verzeichnis /pipelines werden beim Start des Servers automatisch geladen.
Sie können dieses Verzeichnis von /pipelines in einen anderen Speicherort ändern, indem Sie die Umgebungsvariable PIPELINES_DIR verwenden.
Integrationsbeispiele
Finden Sie verschiedene Integrationsbeispiele im Verzeichnis https://github.com/open-webui/pipelines/blob/main/examples. Diese Beispiele zeigen, wie verschiedene Funktionalitäten integriert werden können, und bieten eine Grundlage für die Erstellung Ihrer eigenen benutzerdefinierten Pipelines.
🎉 In Arbeit
Wir entwickeln uns ständig weiter! Wir würden uns über Ihr Feedback freuen und erfahren, welche Hooks und Funktionen am besten zu Ihrem Anwendungsfall passen. Zögern Sie nicht, uns zu kontaktieren und Teil unserer Open WebUI-Community zu werden!
Unsere Vision ist es, Pipelines zum ultimativen Plugin-Framework für unsere KI-Oberfläche Open WebUI zu machen. Stellen Sie sich Open WebUI als das WordPress der KI-Oberflächen vor, mit Pipelines als seiner vielfältigen Palette an Plugins. Begleiten Sie uns auf dieser spannenden Reise! 🌍



