Workflow zur Generierung von SQL-Abfragen aus dem Schema – KI-gestützt

Dieser Workflow generiert SQL-Abfragen basierend auf dem vorgegebenen Datenbankschema mithilfe eines KI-Modells.

Workflow zur Generierung von SQL-Abfragen aus dem Schema – KI-gestützt

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 Schritt-für-Schritt Analyse

1. Chat Trigger

Typ: n8n-nodes-base.manualTrigger

Funktion: Dieser Node initiiert den Workflow manuell, indem er eine Benutzerinteraktion erfordert, um die Abfrage auszulösen.

2. Liste aller Tabellen in einer Datenbank

Typ: n8n-nodes-base.mySql

Funktion: Führt den SQL-Befehl SHOW TABLES; aus, um alle Tabellen in der spezifischen MySQL-Datenbank aufzulisten.

Einstellungen:

  • operation: executeQuery

Mit dieser Operation werden die Tabellen auf dem Bildschirm angezeigt.

3. Extrahiere Datenbankschema

Typ: n8n-nodes-base.mySql

Funktion: Führt den SQL-Befehl DESCRIBE {{ $json.Tables_in_tttytdb2023 }}; aus, um das Schema für die ausgewählte Tabelle zu extrahieren.

Einstellungen:

  • operation: executeQuery

4. Fügen Sie den Tabellennamen zur Ausgabe hinzu

Typ: n8n-nodes-base.set

Funktion: Dieser Node fügt den Tabellennamen in die Ausgabe so hinzu, dass die Struktur der Daten erhalten bleibt.

Einstellungen:

  • assignments: Den Tabellennamen den Daten zuordnen.

5. Konvertiere Daten in Binärformat

Typ: n8n-nodes-base.convertToFile

Funktion: Konvertiert die Schema-Daten in ein JSON-Binärformat, welches für die Speicherung geeignet ist.

Einstellungen:

  • operation: toJson

6. Datei lokal speichern

Typ: n8n-nodes-base.readWriteFile

Funktion: Speichert die konvertierten Daten in einer JSON-Datei mit dem Namen chinook_mysql.json.

Einstellungen:

  • fileName: ./chinook_mysql.json

7. Extrahiere Daten aus Datei

Typ: n8n-nodes-base.extractFromFile

Funktion: Liest die Datenbank-Schema-Datei und extrahiert die Daten als JSON-Objekt.

Einstellungen:

  • operation: fromJson

8. OpenAI Chat Modell

Typ: @n8n/n8n-nodes-langchain.lmChatOpenAi

Funktion: Nutzt ein OpenAI-Modell, um mit Benutzeranfragen zu interagieren und entsprechende SQL-Abfragen zu generieren.

Einstellungen:

  • model: gpt-4o
  • temperature: 0.2

9. Fensterpuffer-Speicher

Typ: @n8n/n8n-nodes-langchain.memoryBufferWindow

Funktion: Verwaltet den Befehlsspeicher für die AI-Agenten und speichert die letzten 10 Kontexte.

Einstellungen:

  • contextWindowLength: 10

10. AI Agent

Typ: @n8n/n8n-nodes-langchain.agent

Funktion: Nutzt den AI-Agenten, um SQL-Abfragen basierend auf dem Schema und der Benutzeranfrage zu erstellen.

Einstellungen:

  • agent: conversationalAgent

11. SQL-Abfrage extrahieren

Typ: n8n-nodes-base.set

Funktion: Prüft die Antwort des Agenten und extrahiert die generierte SQL-Abfrage, falls vorhanden.

Einstellungen:

  • assignments: Zuweisung der query zu einem neuen JSON-Feld.

12. Führe SQL-Abfrage aus

Typ: n8n-nodes-base.mySql

Funktion: Führt die extrahierte SQL-Abfrage gegen die Datenbank aus.

Einstellungen:

  • query: {{ $json.query }}

13. Formatierung der Abfrageergebnisse

Typ: n8n-nodes-base.set

Funktion: Formatiert die SQL-Abfrageergebnisse für die Ausgabe im Stil einer Chatnachricht.

14. Endausgabe vorbereiten

Typ: n8n-nodes-base.set

Funktion: Kombiniert die SQL-Abfrageergebnisse mit den vorherigen Antworten für die finale Ausgabe.

Workflow läuft nun optimal und kann verwendet werden, um SQL-Abfragen mithilfe einer KI zu generieren.

Download Link: Hier herunterladen

Facebook
Twitter
LinkedIn

Andere Projekte