N8N-Workflow zur Erstellung von CSV-Dateien mit GPT-4
Prepare CSV files with GPT-4
Automatisierter Workflow zur Generierung fiktiver Benutzerdaten mithilfe von OpenAI GPT-4 und Massenexport in CSV-Dateien
Workflow-Übersicht
Dies ist ein automatisierter n8n-Workflow, der mithilfe von GPT-4 zufällige Benutzerdaten generiert und diese als CSV-Dateien exportiert. Der Workflow ruft die OpenAI-API auf, um fiktive Benutzerinformationen zu erstellen, verarbeitet diese Daten und speichert sie anschließend als mehrere CSV-Dateien auf der lokalen Festplatte.
Detaillierte Workflow-Beschreibung
1. Auslösephase
- Knoten: „When clicking 'Execute Workflow'“ (manueller Trigger)
- Funktion: Startet die Ausführung des gesamten Workflows durch manuelles Anklicken
- Position: Erster Knoten im Workflow
2. Datengenerierungsphase
- Knoten: OpenAI
- Typ: n8n-nodes-base.openAi
- Konfiguration:
- Verwendetes Modell: GPT-4
- Anzahl der Aufrufe: 3
- Maximale Tokenanzahl: 2500
- Temperaturparameter: 1 (erhöht Zufälligkeit)
- Prompt-Inhalt: Fordert GPT-4 auf, ein JSON-Array mit 10 zufälligen Benutzern zu generieren, das folgende Felder enthält:
user_name: Fiktiver Name (Vor- und Nachname beginnen mit demselben Buchstaben)user_email: E-Mail-Adressesubscribed: Abonnementstatus (boolescher Wert)date_subscribed: Abonnementdatum (falls abonniert: zufälliges Datum vor dem 01.10.2023)
3. Batch-Verarbeitungsphase
- Knoten: Split In Batches
- Funktion: Verarbeitet die drei OpenAI-Antworten einzeln
- Batch-Größe: 1
- Zweck: Stellt sicher, dass jede generierte Benutzerliste separat verarbeitet und als eigenständige CSV-Datei gespeichert wird
4. Datenparsen-Phase
- Knoten: Parse JSON
- Typ: Set-Knoten
- Funktion: Wandelt den von OpenAI zurückgegebenen JSON-String in ein echtes JSON-Objekt um
- Aktion: Extrahiert das Feld „message.content“ und parst es als Array
5. Datenentfaltungsphase
- Knoten: Make JSON Table
- Typ: Item Lists-Knoten
- Funktion: Entfaltet jedes Benutzerobjekt aus dem JSON-Array in separate Datensätze
- Feld: Entfaltet das Feld „content“
6. CSV-Konvertierungsphase
- Knoten: Convert to CSV
- Typ: Spreadsheet File-Knoten
- Konfiguration:
- Ausgabeformat: CSV
- Dateiname:
funny_names_[Nummer].csv(Nummer beginnt bei 1) - Enthält Kopfzeile: Ja
7. Datenbereinigungsphase
7.1 Entfernung des BOM-Bytes
- Knoten: Strip UTF BOM bytes
- Typ: Move Binary Data-Knoten
- Funktion: Entfernt das UTF-8-BOM (Byte Order Mark)
- Wichtigkeit: Vermeidet Kodierungsprobleme beim Lesen der CSV-Dateien
7.2 Erstellung gültiger Binärdaten
- Knoten: Create valid binary
- Typ: Move Binary Data-Knoten
- Konfiguration:
- Modus: JSON zu Binär
- Kodierung: UTF-8
- MIME-Typ: text/csv
- Kein BOM hinzufügen
- Funktion: Konvertiert die verarbeiteten Daten in eine korrekt formatierte Binärdatei
8. Dateispeicherphase
- Knoten: Save to Disk
- Typ: Write Binary File-Knoten
- Pfad:
./.n8n/funny_names_[Nummer].csv - Funktion: Speichert die generierten CSV-Dateien im n8n-Arbeitsverzeichnis
- Schleife: Kehrt nach dem Speichern zum „Split In Batches“-Knoten zurück, um den nächsten Batch zu verarbeiten
Workflow-Merkmale
Vorteile
- Hoher Automatisierungsgrad: Generiert per Knopfdruck mehrere CSV-Dateien mit zufälligen Daten
- Standardisierte Datenformate: Klare Datenstruktur, passend für reale Geschäftsszenarien
- Batch-Fähigkeit: Kann mehrere unterschiedliche Datensätze gleichzeitig erzeugen
- Umfassende Kodierungsbehandlung: Spezielle Behandlung des BOM-Bytes zur Sicherstellung der Dateikompatibilität
Anwendungsfälle
- Generierung von Testdaten
- Befüllung von Entwicklungsumgebungen mit Beispieldaten
- Demos und Schulungszwecke
- Tests von CSV-Verarbeitungsprozessen
Hinweise zu festen Daten
Der Workflow enthält drei vorgenerierte Testdatensätze (pinData), wobei jeder Satz 10 Benutzerdatensätze umfasst. Diese Daten sind bereits im OpenAI-Knoten fixiert, um Tests und Demos ohne wiederholte API-Aufrufe zu ermöglichen.
Wichtige Hinweise
- Gültige OpenAI-API-Anmeldeinformationen müssen konfiguriert sein
- Das Verzeichnis
.n8nmuss existieren und Schreibrechte besitzen - Die BOM-Byte-Behandlung ist entscheidend für die plattformübergreifende Lesbarkeit von CSV-Dateien
- Die generierten Daten sind fiktiv und ausschließlich für Testzwecke gedacht