GPT-4を使用したCSVファイル生成のN8Nワークフロー
Prepare CSV files with GPT-4
OpenAI GPT-4を利用して架空のユーザーデータを自動生成し、CSVファイルとして一括エクスポートする自動化ワークフロー
ワークフロー概要
これは、GPT-4を使用してランダムなユーザー情報を生成し、CSVファイルとしてエクスポートするN8N自動化ワークフローです。このワークフローはOpenAI APIを呼び出して架空のユーザー情報を生成し、そのデータを処理してローカルディスクに複数のCSVファイルとして保存します。
ワークフロー詳細
1. トリガー段階
- ノード: 「Execute Workflow」をクリック時(手動トリガー)
- 機能: 手動でクリックすることにより、ワークフロー全体を実行開始
- 位置: ワークフローの開始ノード
2. データ生成段階
- ノード: OpenAI
- タイプ: n8n-nodes-base.openAi
- 設定:
- 使用モデル: GPT-4
- 生成回数: 3回のAPI呼び出し
- 最大トークン数: 2500
- 温度パラメータ: 1(ランダム性を高める)
- プロンプト内容: GPT-4に以下のフィールドを含む10人のランダムユーザーのJSON配列を生成させる:
user_name: 架空のキャラクター名(名と姓の頭文字が同じ)user_email: メールアドレスsubscribed: 購読ステータス(真偽値)date_subscribed: 購読日(購読済みの場合、2023-10-01以前のランダムな日付)
3. バッチ処理段階
- ノード: Split In Batches
- 機能: 3つのOpenAIレスポンスを1つずつ分割処理
- バッチサイズ: 1
- 目的: 各生成されたユーザーリストを個別に処理し、独立したCSVファイルとして保存することを保証
4. データ解析段階
- ノード: Parse JSON
- タイプ: Setノード
- 機能: OpenAIから返されたJSON文字列を実際のJSONオブジェクトに解析
- 操作: message.contentフィールドを抽出し、配列として解析
5. データ展開段階
- ノード: Make JSON Table
- タイプ: Item Listsノード
- 機能: JSON配列内の各ユーザーオブジェクトを個別のデータ項目に展開
- フィールド: 「content」フィールドを展開
6. CSV変換段階
- ノード: Convert to CSV
- タイプ: Spreadsheet Fileノード
- 設定:
- 出力形式: CSV
- ファイル名:
funny_names_[番号].csv(番号は1から開始) - ヘッダー行を含める: はい
7. データクリーニング段階
7.1 BOMバイトの削除
- ノード: Strip UTF BOM bytes
- タイプ: Move Binary Dataノード
- 機能: UTF-8 BOM(Byte Order Mark)バイトを削除
- 重要性: CSVファイル読み込み時のエンコード問題を回避
7.2 有効なバイナリデータの作成
- ノード: Create valid binary
- タイプ: Move Binary Dataノード
- 設定:
- モード: JSON → バイナリ
- エンコーディング: UTF-8
- MIMEタイプ: text/csv
- BOMを追加しない
- 機能: 処理済みデータを正しい形式のバイナリファイルに変換
8. ファイル保存段階
- ノード: Save to Disk
- タイプ: Write Binary Fileノード
- パス:
./.n8n/funny_names_[番号].csv - 機能: 生成されたCSVファイルをN8N作業ディレクトリに保存
- ループ: 保存後、Split In Batchesノードに戻り次のバッチを処理
ワークフローの特徴
利点
- 高度な自動化: 1クリックで複数のランダムデータを含むCSVファイルを生成可能
- データ形式の標準化: 生成されるデータ構造が明確で、実際の業務シナリオに適合
- バッチ処理能力: 複数の異なるデータセットを同時に生成可能
- エンコーディング処理の充実: BOMバイトの特別な処理により、ファイル互換性を確保
応用シーン
- テストデータの生成
- 開発環境へのデータ投入
- デモおよびトレーニング用途
- CSVファイル処理フローのテスト
固定データについて
このワークフローには、事前に生成済みのテストデータ(pinData)が3セット含まれており、各セットは10件のユーザー記録を含みます。これらのデータはOpenAIノード内に固定されており、毎回APIを呼び出さずにテストやデモが可能です。
注意事項
- 有効なOpenAI API認証情報が必要です。
.n8nディレクトリが存在し、書き込み権限があることを確認してください。- BOMバイトの処理は、クロスプラットフォームでのCSVファイル読み込みにおいて極めて重要です。
- 生成されるデータは架空の内容であり、テスト用途のみに使用してください。