Die Open-Source-KI-Chat-App für alle.
Sehen Sie sich hier die neueste Demo an.
Hallo zusammen! Ich habe Ihr Feedback gehört und arbeite hart an einem großen Update.
Dinge wie eine einfachere Bereitstellung, bessere Backend-Kompatibilität und verbesserte mobile Layouts sind auf dem Weg.
Bin bald zurück.
-- Mckay
Nutzen Sie die Chatbot-Benutzeroberfläche, ohne sie selbst hosten zu müssen!
Die offizielle gehostete Version der Chatbot-Benutzeroberfläche finden Sie hier.
Wenn Sie die Chatbot-Benutzeroberfläche nützlich finden, denken Sie bitte darüber nach, mich zu sponsern, um meine Open-Source-Arbeit zu unterstützen :)
Wir beschränken „Probleme“ auf tatsächliche Probleme im Zusammenhang mit der Codebasis.
Wir erhalten übermäßig viele Probleme, die sich auf Funktionsanfragen, Probleme mit Cloud-Anbietern usw. beziehen.
Wenn Sie Probleme mit Dingen wie der Einrichtung haben, lesen Sie bitte den Abschnitt „Hilfe“ auf der Registerkarte „Diskussionen“ oben.
Probleme, die nichts mit der Codebasis zu tun haben, werden wahrscheinlich sofort geschlossen.
Wir empfehlen Ihnen dringend, an der Registerkarte „Diskussionen“ oben teilzunehmen!
Diskussionen sind ein großartiger Ort, um Fragen zu stellen, Ideen auszutauschen und Hilfe zu erhalten.
Wenn Sie eine Frage haben, ist die Wahrscheinlichkeit groß, dass jemand anderes die gleiche Frage hat.
Die Chatbot-Benutzeroberfläche wurde kürzlich auf die Version 2.0 aktualisiert.
Der Code für 1.0 ist im legacy
-Zweig zu finden.
Führen Sie in Ihrem Terminal im Stammverzeichnis Ihres lokalen Chatbot-UI-Repositorys Folgendes aus:
npm run update
Wenn Sie eine gehostete Instanz ausführen, müssen Sie außerdem Folgendes ausführen:
npm run db-push
um die neuesten Migrationen auf Ihre Live-Datenbank anzuwenden.
Befolgen Sie diese Schritte, um Ihre eigene Chatbot-UI-Instanz lokal auszuführen.
Das vollständige Video-Tutorial können Sie hier ansehen.
git clone https://github.com/mckaywrigley/chatbot-ui.git
Öffnen Sie ein Terminal im Stammverzeichnis Ihres lokalen Chatbot-UI-Repositorys und führen Sie Folgendes aus:
npm install
Zuvor haben wir den lokalen Browserspeicher zum Speichern von Daten verwendet. Dies war jedoch aus mehreren Gründen keine gute Lösung:
Wir verwenden jetzt Supabase, weil es einfach zu verwenden ist, Open Source ist, Postgres ist und eine kostenlose Stufe für gehostete Instanzen bietet.
Wir werden in Zukunft weitere Anbieter unterstützen, um Ihnen mehr Möglichkeiten zu bieten.
Sie müssen Docker installieren, um Supabase lokal auszuführen. Sie können es hier kostenlos herunterladen.
MacOS/Linux
brew install supabase/tap/supabase
Windows
scoop bucket add supabase https://github.com/supabase/scoop-bucket.git
scoop install supabase
Führen Sie in Ihrem Terminal im Stammverzeichnis Ihres lokalen Chatbot-UI-Repositorys Folgendes aus:
supabase start
Führen Sie in Ihrem Terminal im Stammverzeichnis Ihres lokalen Chatbot-UI-Repositorys Folgendes aus:
cp .env.local.example .env.local
Rufen Sie die erforderlichen Werte ab, indem Sie Folgendes ausführen:
supabase status
Hinweis: Verwenden Sie API URL
aus supabase status
für NEXT_PUBLIC_SUPABASE_URL
Gehen Sie nun zu Ihrer .env.local
Datei und geben Sie die Werte ein.
Wenn die Umgebungsvariable gesetzt ist, wird die Eingabe in den Benutzereinstellungen deaktiviert.
In der ersten Migrationsdatei supabase/migrations/20240108234540_setup.sql
müssen Sie zwei Werte durch die oben erhaltenen Werte ersetzen:
project_url
(Zeile 53): http://supabase_kong_chatbotui:8000
(Standard) kann unverändert bleiben, wenn Sie Ihre project_id
in der Datei config.toml
nicht ändernservice_role_key
(Zeile 54): Sie haben diesen Wert durch die Ausführung von supabase status
erhaltenDadurch wird verhindert, dass Speicherdateien nicht ordnungsgemäß gelöscht werden.
Folgen Sie den Anweisungen hier.
Führen Sie in Ihrem Terminal im Stammverzeichnis Ihres lokalen Chatbot-UI-Repositorys Folgendes aus:
npm run chat
Ihre lokale Instanz der Chatbot-Benutzeroberfläche sollte jetzt unter http://localhost:3000 ausgeführt werden. Stellen Sie sicher, dass Sie eine kompatible Knotenversion (z. B. v18) verwenden.
Sie können Ihre Backend-GUI unter http://localhost:54323/project/default/editor anzeigen.
Befolgen Sie diese Schritte, um Ihre eigene Chatbot-UI-Instanz in der Cloud zum Laufen zu bringen.
Video-Tutorial folgt in Kürze.
Wiederholen Sie die Schritte 1–4 im „Lokalen Schnellstart“ oben.
Sie benötigen separate Repositorys für Ihre lokalen und gehosteten Instanzen.
Erstellen Sie ein neues Repository für Ihre gehostete Instanz der Chatbot-Benutzeroberfläche auf GitHub und übertragen Sie Ihren Code dorthin.
Gehen Sie zu Supabase und erstellen Sie ein neues Projekt.
Sobald Sie sich im Projekt-Dashboard befinden, klicken Sie ganz unten links auf die Symbolregisterkarte „Projekteinstellungen“.
Hier erhalten Sie die Werte für die folgenden Umgebungsvariablen:
Project Ref
: In „Allgemeine Einstellungen“ als „Referenz-ID“ gefunden
Project ID
: finden Sie in der URL Ihres Projekt-Dashboards (Beispiel: https://supabase.com/dashboard/project/<YOUR_PROJECT_ID>/settings/general)
Klicken Sie, während Sie sich noch in den „Einstellungen“ befinden, links auf die Textregisterkarte „API“.
Hier erhalten Sie die Werte für die folgenden Umgebungsvariablen:
Project URL
: In „API-Einstellungen“ als „Projekt-URL“ gefunden
Anon key
: In „Projekt-API-Schlüssel“ als „anon öffentlich“ gefunden
Service role key
: In „Projekt-API-Schlüssel“ als „service_role“ zu finden (Hinweis: Behandeln Sie dies wie ein Passwort!)
Klicken Sie anschließend ganz links auf die Symbolregisterkarte „Authentifizierung“.
Klicken Sie in den Textregisterkarten auf „Anbieter“ und stellen Sie sicher, dass „E-Mail“ aktiviert ist.
Wir empfehlen, „E-Mail bestätigen“ für Ihre persönliche Instanz zu deaktivieren.
Öffnen Sie Ihr Repository für Ihre gehostete Instanz der Chatbot-Benutzeroberfläche.
In der ersten Migrationsdatei supabase/migrations/20240108234540_setup.sql
müssen Sie zwei Werte durch die oben erhaltenen Werte ersetzen:
project_url
(Zeile 53): Verwenden Sie den Project URL
Wert von obenservice_role_key
(Zeile 54): Verwenden Sie den Service role key
von obenÖffnen Sie nun ein Terminal im Stammverzeichnis Ihres lokalen Chatbot-UI-Repositorys. Wir werden hier einige Befehle ausführen.
Melden Sie sich bei Supabase an, indem Sie Folgendes ausführen:
supabase login
Verknüpfen Sie als Nächstes Ihr Projekt, indem Sie den folgenden Befehl mit der oben erhaltenen „Projekt-ID“ ausführen:
supabase link --project-ref < project-id >
Ihr Projekt sollte nun verknüpft sein.
Zum Schluss übertragen Sie Ihre Datenbank auf Supabase, indem Sie Folgendes ausführen:
supabase db push
Ihre gehostete Datenbank sollte jetzt eingerichtet sein!
Gehen Sie zu Vercel und erstellen Sie ein neues Projekt.
Importieren Sie auf der Setup-Seite Ihr GitHub-Repository für Ihre gehostete Instanz der Chatbot-Benutzeroberfläche. Wechseln Sie in den Projekteinstellungen im Abschnitt „Build & Development Settings“ zu „Framework Preset“ zu „Next.js“.
Fügen Sie in Umgebungsvariablen Folgendes aus den oben erhaltenen Werten hinzu:
NEXT_PUBLIC_SUPABASE_URL
NEXT_PUBLIC_SUPABASE_ANON_KEY
SUPABASE_SERVICE_ROLE_KEY
NEXT_PUBLIC_OLLAMA_URL
(nur erforderlich, wenn lokale Ollama-Modelle verwendet werden; Standard: http://localhost:11434
)Sie können API-Schlüssel auch als Umgebungsvariablen hinzufügen.
OPENAI_API_KEY
AZURE_OPENAI_API_KEY
AZURE_OPENAI_ENDPOINT
AZURE_GPT_45_VISION_NAME
Die vollständige Liste der Umgebungsvariablen finden Sie in der Datei „.env.local.example“. Wenn die Umgebungsvariablen für API-Schlüssel festgelegt sind, wird die Eingabe in den Benutzereinstellungen deaktiviert.
Klicken Sie auf „Bereitstellen“ und warten Sie, bis Ihr Frontend bereitgestellt wird.
Nach der Bereitstellung sollten Sie Ihre gehostete Instanz der Chatbot-Benutzeroberfläche über die von Vercel bereitgestellte URL verwenden können.
Wir arbeiten an einem Leitfaden zum Mitwirken.
Nachricht an Mckay auf Twitter/X