Workflow N8N utilisant GPT-4 pour générer des fichiers CSV
Prepare CSV files with GPT-4
Workflow automatisé générant des données fictives d'utilisateurs via OpenAI GPT-4 et les exportant par lots au format CSV
Vue d’ensemble du workflow
Il s’agit d’un workflow automatisé N8N utilisant GPT-4 pour générer des données aléatoires d’utilisateurs et les exporter vers des fichiers CSV. Ce workflow appelle l’API OpenAI afin de produire des informations fictives sur des utilisateurs, puis traite ces données et les enregistre sous forme de plusieurs fichiers CSV sur le disque local.
Détails du processus
1. Phase de déclenchement
- Nœud : « When clicking "Execute Workflow" » (déclencheur manuel)
- Fonction : Lance l’exécution complète du workflow par un clic manuel
- Position : Nœud initial du workflow
2. Phase de génération des données
- Nœud : OpenAI
- Type : n8n-nodes-base.openAi
- Configuration :
- Modèle utilisé : GPT-4
- Nombre d’appels : 3
- Nombre maximal de tokens : 2500
- Température : 1 (accroît l’aléatoire)
- Prompt : Demande à GPT-4 de générer un tableau JSON contenant 10 utilisateurs aléatoires avec les champs suivants :
user_name: nom fictif (prénom et nom commençant par la même lettre)user_email: adresse e-mailsubscribed: statut d’abonnement (booléen)date_subscribed: date d’abonnement (une date aléatoire antérieure au 2023-10-01 si abonné)
3. Phase de traitement par lots
- Nœud : Split In Batches
- Fonction : Traite séquentiellement les 3 réponses OpenAI, une par une
- Taille du lot : 1
- Objectif : Garantir que chaque liste d’utilisateurs générée soit traitée individuellement et enregistrée dans un fichier CSV distinct
4. Phase d’analyse des données
- Nœud : Parse JSON
- Type : Nœud Set
- Fonction : Convertit la chaîne JSON renvoyée par OpenAI en objet JSON exploitable
- Opération : Extrait le champ
message.contentet le transforme en tableau
5. Phase d’expansion des données
- Nœud : Make JSON Table
- Type : Nœud Item Lists
- Fonction : Transforme chaque objet utilisateur du tableau JSON en élément de données indépendant
- Champ concerné : Expansion du champ « content »
6. Phase de conversion CSV
- Nœud : Convert to CSV
- Type : Nœud Spreadsheet File
- Configuration :
- Format de sortie : CSV
- Nom du fichier :
funny_names_[numéro].csv(numéro commençant à 1) - Inclure l’en-tête : Oui
7. Phase de nettoyage des données
7.1 Suppression des octets BOM
- Nœud : Strip UTF BOM bytes
- Type : Nœud Move Binary Data
- Fonction : Supprime les octets BOM (Byte Order Mark) UTF-8
- Importance : Évite les problèmes d’encodage lors de la lecture des fichiers CSV
7.2 Création d’un binaire valide
- Nœud : Create valid binary
- Type : Nœud Move Binary Data
- Configuration :
- Mode : Conversion JSON vers binaire
- Encodage : UTF-8
- Type MIME : text/csv
- Ne pas ajouter de BOM
- Fonction : Convertit les données traitées en fichier binaire correctement formaté
8. Phase d’enregistrement des fichiers
- Nœud : Save to Disk
- Type : Nœud Write Binary File
- Chemin :
./.n8n/funny_names_[numéro].csv - Fonction : Enregistre les fichiers CSV générés dans le répertoire de travail de N8N
- Boucle : Après l’enregistrement, retourne au nœud Split In Batches pour traiter le lot suivant
Caractéristiques du workflow
Avantages
- Haut niveau d’automatisation : Génération en un clic de plusieurs fichiers CSV contenant des données aléatoires
- Format structuré : Les données produites sont claires et conformes aux scénarios professionnels réels
- Capacité de traitement par lots : Permet de générer simultanément plusieurs jeux de données distincts
- Gestion rigoureuse de l’encodage : Traitement spécifique des octets BOM pour assurer la compatibilité des fichiers
Cas d’utilisation
- Génération de données de test
- Remplissage de bases de données en environnement de développement
- Démos et formations
- Tests de workflows de traitement de fichiers CSV
Données fixes intégrées
Le workflow inclut trois jeux de données de test pré-générés (pinData), chacun contenant 10 enregistrements d’utilisateurs. Ces données sont déjà intégrées au nœud OpenAI, facilitant ainsi les tests et démonstrations sans nécessiter d’appel API à chaque exécution.
Remarques importantes
- Une clé d’API OpenAI valide doit être configurée
- Le répertoire
.n8ndoit exister et disposer des droits en écriture - La gestion des octets BOM est essentielle pour garantir la compatibilité interplateforme des fichiers CSV
- Les données générées sont fictives et réservées strictement à des fins de test