Einleitung
In diesem Workflow, „Telegram RAG pdf“, nutzen wir die n8n-Plattform, um einfach empfangene Dokumente aus Telegram zu verarbeiten. Wir möchten sicherstellen, dass alle nötigen Schritte klar und verständlich beschrieben werden.
1. Telegram Trigger
- Node Name: Telegram Trigger
- Typ: n8n-nodes-base.telegramTrigger
- Zweck: Dieser Node wird aktiviert, sobald eine neue Nachricht in einem Telegram-Chat eintrifft. Er erkennt insbesondere eingehende Dokumente.
- Einstellungen: Der Webhook wird so konfiguriert, dass er nur Nachrichten empfängt. Dies ermöglicht, dass der Workflow auf dokumentbasierte Interaktionen wartet.
2. Check If is a document
- Node Name: Check If is a document
- Typ: n8n-nodes-base.if
- Zweck: Überprüft, ob die eingehende Nachricht ein Dokument ist.
- Einstellungen: Ein Bedingungstest wird ausgeführt, um zu bestimmen, ob das Feld ‚document‘ in der empfangenen Nachricht existiert.
3. Telegram get File
- Node Name: Telegram get File
- Typ: n8n-nodes-base.telegram
- Zweck: Ruft die Datei, die über Telegram gesendet wurde, ab.
- Einstellungen: Verwendet die Datei-ID der empfangenen Nachricht, um die Datei herunterzuladen.
4. Change to application/pdf
- Node Name: Change to application/pdf
- Typ: n8n-nodes-base.code
- Zweck: Ändert die Metadaten der Datei auf den MIME-Typ von PDF.
- Einstellungen: Hier wird die Funktion genutzt, um sicherzustellen, dass die Datei den richtigen Typ hat und die Endung ‚.pdf‘ trägt.
5. Pinecone Vector Store
- Node Name: Pinecone Vector Store
- Typ: @n8n/n8n-nodes-langchain.vectorStorePinecone
- Zweck: Speichert die empfangene Datei im Pinecone-Index.
- Einstellungen: Der Modus ist auf „insert“ gesetzt, um neue Dokumente hinzuzufügen.
6. Embeddings OpenAI
- Node Name: Embeddings OpenAI
- Typ: @n8n/n8n-nodes-langchain.embeddingsOpenAi
- Zweck: Erstellt Embeddings der Dokumente mittels OpenAI, um sie später zu verwenden.
- Einstellungen: Standardoptionen ohne spezifische Vorgaben.
7. Question and Answer Chain
- Node Name: Question and Answer Chain
- Typ: @n8n/n8n-nodes-langchain.chainRetrievalQa
- Zweck: Beantwortet Fragen auf Basis der abgerufenen Informationen aus der Datenbank.
- Einstellungen: Der Text des Handlers ist auf die eingehende Nachricht gesetzt.
8. Telegram Response
- Node Name: Telegram Response
- Typ: n8n-nodes-base.telegram
- Zweck: Sendet die Antwort zurück zu dem Telegram-Chat.
- Einstellungen: Die Antwort wird an den Benutzer gesendet, der das Dokument ursprünglich geschickt hat.
9. Ergebnis
Über diesen Workflow können Benutzer einfach Dokumente in einem Telegram-Chat senden, die dann automatisch in eine Pinecone-Datenbank gespeichert werden. Wenn das Speichern erfolgreich ist, erhalten die Benutzer eine Bestätigung über die Anzahl der Seiten, die gespeichert wurden.