Workflow zur Erstellung eines Telegram-Bots mit OpenAI und Supabase

Dieser Workflow ermöglicht es, einen Telegram-Bot zu erstellen, der mithilfe von OpenAI Fragen beantwortet und Benutzerdaten in einer Supabase-Datenbank speichert.

Workflow zur Erstellung eines Telegram-Bots mit OpenAI und Supabase

Die Website nutzt die Wordpress-Infrastruktur.

Server: Unser Server befindet sich in einem Unternehmen mit Sitz in Deutschland. Er hat eine hohe und schnelle Internetverbindung. Es gibt eine Generatorunterstützung für ununterbrochenen Strom.

1. Get New Message

Typ: Telegram Trigger

Funktion: Dieser Node fängt neue Nachrichten von einem Telegram-Benutzer ab.

Einstellungen:
Updates: setze das Update auf message. Dadurch wird der Node aktiviert, wenn eine neue Nachricht eingeht.
Credentials: Ein Telegram API-Schlüssel wird benötigt, um den Zugriff auf den Telegram-Bot zu ermöglichen.

2. Find User

Typ: Supabase

Funktion: Sucht in der Supabase-Datenbank nach dem Benutzer basierend auf der Telegram-ID.

Einstellungen:
Filters: Bedingung zum Filtern der Benutzer mit der telegram_id.
operation: getAll gibt alle Einträge zurück, die die Bedingung erfüllen.

3. If User exists

Typ: If Node

Funktion: Überprüft, ob der Benutzer in der Datenbank existiert oder nicht.

Einstellungen:
Conditions: Überprüft, ob der leftValue (keine ID) nicht leer ist.

4. OPENAI – Create thread

Typ: HTTP Request

Funktion: Erstellt einen neuen Thread in OpenAI für die Konversation.

Einstellungen:
URL: Die Endpoint-URL ist https://api.openai.com/v1/threads.
Method: POST um die Daten zu senden.
Header: OpenAI-Beta: assistants=v2 wird gesetzt, um die API-Version zu bestimmen.

5. Create User

Typ: Supabase

Funktion: Erstellt einen neuen Benutzer in der Datenbank, falls der Benutzer nicht existiert.

Einstellungen:
tableId: telegram_users.
fieldsUi: Felder wie telegram_id und openai_thread_id werden initialisiert.

6. Merge

Typ: Merge Node

Funktion: Kombiniert die Daten aus vorherigen Knoten.

Einstellungen: Keine spezifischen Einstellungen erforderlich.

7. OPENAI – Send message

Typ: HTTP Request

Funktion: Sendet die Nachricht des Benutzers an OpenAI und wartet auf die Antwort.

Einstellungen:
URL: Verwendung der dynamischen Thread-ID für den Aufruf, um auf den spezifischen Thread zuzugreifen.
Body: Umfasst die Benutzernachricht, die weitergeleitet wird.

8. OPENAI – Run assistant

Typ: HTTP Request

Funktion: Führt den OpenAI-Assistenten aus, um die Antwort auf die Nachricht zu generieren.

Einstellungen:
URL: Verwendung der dynamischen Thread-ID.
Body: Enthält die Parameter wie assistant_id und den stream-Parameter.

9. OPENAI – Get messages

Typ: HTTP Request

Funktion: Ruft die Nachrichten aus dem spezifischen Thread ab, um die Antwort des Assistenten zu erhalten.

Einstellungen:
URL: Nutzung der dynamischen Thread-ID.
Header: Wie zuvor, um die API-Versionsnummer zu setzen.

10. Send Message to User

Typ: Telegram

Funktion: Sendet die Nachricht, die der Assistent generiert hat, zurück an den Telegram-Benutzer.

Einstellungen:
Text: Dynamisch abgerufen von den OpenAI-Nachrichten.
chatId: Die Telegram-ID des Benutzers.

Ergebnis

Mit diesem Workflow können Benutzer mit Hilfe eines Telegram-Bots und der KI von OpenAI kommunizieren. Der Bot kann Benutzerinformationen speichern und in späteren Interaktionen den Verlauf und den Kontext berücksichtigen, um eine bessere Benutzererfahrung zu gewährleisten.

Für weitere Details oder zur Nutzung des Workflows, siehe den folgenden Download-Link.

Facebook
Twitter
LinkedIn

Andere Projekte