Speicherung von Notion-Seiten als Vektordokumente in Supabase mit OpenAI

Dieser Workflow automatisiert das Speichern von Notion-Seiten als Vektordokumente in einer Supabase-Datenbank.

Speicherung von Notion-Seiten als Vektordokumente in Supabase mit OpenAI

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.

Workflow-Beschreibung

Dieser Workflow automatisiert den Prozess des Speicherns von Notion-Seiten als Vektordokumente in einer Supabase-Datenbank mit einer Vektorspalte. Die Schritte sind wie folgt:

  1. Notion Page Added Trigger:
    Überwacht eine bestimmte Notion-Datenbank auf neu hinzugefügte Seiten. Du kannst eine spezifische Notion-Datenbank erstellen, in die du die Seiten kopierst, die du in Supabase speichern möchtest.
    Node: Page Added in Notion Database
  2. Retrieve Page Content:
    Ruft den gesamten Blockinhalt der neu hinzugefügten Notion-Seite ab.
    Node: Get Blocks Content
  3. Filter Non-Text Content:
    Schließt Blöcke vom Typ „Bild“ und „Video“ aus, um sich auf den Textinhalt zu konzentrieren.
    Node: Filter - Exclude Media Content
  4. Summarize Content:
    Verkettet den Inhalt der Notion-Blöcke, um einen einzelnen Text für die Einbettung zu erstellen.
    Node: Summarize - Concatenate Notion's blocks content
  5. Store in Supabase:
    Speichert die verarbeiteten Dokumente und deren Einbettungen in einer Supabase-Tabelle mit einer Vektorspalte.
    Node: Store Documents in Supabase
  6. Generate Embeddings:
    Nutzt die API von OpenAI, um Einbettungen für den Textinhalt zu generieren.
    Node: Generate Text Embeddings
  7. Create Metadata and Load Content:
    Lädt den Blockinhalt und erstellt zugehörige Metadaten, wie die Seiten-ID und die Block-ID.
    Node: Load Block Content & Create Metadata
  8. Split Content into Chunks:
    Teilt den Text in kleinere Abschnitte für eine einfachere Verarbeitung und GENERIERUNG von Einbettungen.
    Node: Token Splitter

Node-Details

1. Notion – Page Added Trigger

  • Typ: Notion Trigger
  • Beschreibung: Überwacht die Notion-Datenbank
    Die Datenbank-ID wird konfiguriert, um sicherzustellen, dass nur neue Seiten berücksichtigt werden.

2. Notion – Retrieve Page Content

  • Typ: Notion
  • Beschreibung: Holt alle Inhalte von Blöcken aus der Notion-Seite.
    Die Block-ID wird aus dem Trigger entnommen.

3. Filter Non-Text Content

  • Typ: Filter
  • Beschreibung: Schließt Medieninhalte (Bilder und Videos) aus.
    Die Bedingungen sind so konfiguriert, dass nur Textblöcke weiterverarbeitet werden.

4. Summarize – Concatenate Notion’s blocks content

  • Typ: Zusammenfassen
  • Beschreibung: Verbindet den Inhalt der Notion-Blöcke.
    Das Ergebnis ist ein zusammenhängender Text.

5. Create metadata and load content

  • Typ: Dokumenten-Loader
  • Beschreibung: Erstellt Metadaten wie Seiten-ID und Titel.
    Verwendet die Informationen aus dem vorherigen Schritt, um den Textinhalt zu laden.

6. Generate Embeddings

  • Typ: Einbettungen mit OpenAI
  • Beschreibung: Erzeugt Vektoren für den Textinhalt.
    Dies erfolgt mithilfe von OpenAI-APIs.

7. Split Content into Chunks

  • Typ: String-Teiler
  • Beschreibung: Teilt den Inhalt in kleine Abschnitte.
    Chunk-Größe und Überlappung sind auf 256 bzw. 30 gesetzt, um Verarbeitungsfehler zu vermeiden.

8. Store in Supabase

  • Typ: Supabase Vektor-Speicher
  • Beschreibung: Speichert die generierten Einbettungen und die benötigten Metadaten in Supabase.
    Die Optionen stellen sicher, dass die Einbettungen erfolgreich gespeichert werden.

Ergebnis: Nach der Ausführung dieses Workflows werden die neuesten Notion-Seiten automatisch als Vektordokumente in einer Supabase-Datenbank gespeichert, was eine effiziente Speicherung und Verarbeitung von Textinhalten ermöglicht.

Download Link: Hier herunterladen

Facebook
Twitter
LinkedIn

Andere Projekte