سير عمل N8N لإنشاء ملفات CSV باستخدام GPT-4
Prepare CSV files with GPT-4
سير عمل آلي لإنشاء بيانات مستخدمين وهميين تلقائيًا عبر OpenAI GPT-4 وتصديرها دفعةً واحدة كملفات CSV
نظرة عامة على سير العمل
هذا سير عمل آلي مبني على N8N يستخدم GPT-4 لإنشاء بيانات مستخدمين عشوائية وتصديرها كملفات CSV. يقوم السير بطلب OpenAI API لتوليد معلومات مستخدمين وهمية، ثم معالجة هذه البيانات وحفظها كعدة ملفات CSV على القرص المحلي.
شرح تفصيلي لسير العمل
1. مرحلة التفعيل
- العقدة: عند النقر على "تنفيذ سير العمل" (مشغّل يدوي)
- الوظيفة: تشغيل تنفيذ سير العمل بالكامل عبر النقر اليدوي
- الموقع: العقدة الأولى في سير العمل
2. مرحلة إنشاء البيانات
- العقدة: OpenAI
- النوع: n8n-nodes-base.openAi
- الإعدادات:
- النموذج المستخدم: GPT-4
- عدد المرات: 3 استدعاءات
- الحد الأقصى للرموز (Tokens): 2500
- درجة الحرارة (Temperature): 1 (لزيادة العشوائية)
- محتوى المطالبة (Prompt): طلب من GPT-4 توليد مصفوفة JSON تحتوي على 10 مستخدمين عشوائيين، تتضمن الحقول التالية:
user_name: اسم شخصية وهمية (يبدأ الاسم الأول والأخير بنفس الحرف)user_email: عنوان بريد إلكترونيsubscribed: حالة الاشتراك (قيمة منطقية)date_subscribed: تاريخ الاشتراك (إذا كان مشتركًا، يكون تاريخًا عشوائيًا قبل 2023-10-01)
3. مرحلة المعالجة الدُفعية
- العقدة: Split In Batches
- الوظيفة: تقسيم الردود الثلاثة من OpenAI إلى دفعات، ومعالجة رد واحد في كل مرة
- حجم الدفعة: 1
- الغرض: ضمان معالجة كل قائمة مستخدمين تم إنشاؤها بشكل منفصل وحفظها كملف CSV مستقل
4. مرحلة تحليل البيانات
- العقدة: Parse JSON
- النوع: عقدة Set
- الوظيفة: تحليل سلسلة JSON التي أعادتها OpenAI إلى كائن 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
- الوظيفة: إزالة بايت BOM (Byte Order Mark) الخاص بترميز UTF-8
- الأهمية: تجنّب مشاكل الترميز عند قراءة ملفات 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 لمعالجة الدفعة التالية
ميزات سير العمل
المزايا
- درجة عالية من الأتمتة: إنشاء عدة ملفات CSV تحتوي على بيانات عشوائية بنقرة واحدة
- تنسيق بيانات منظم: هيكل البيانات الناتجة واضح ومناسب لسيناريوهات الأعمال الواقعية
- قدرة المعالجة الدُفعية: يمكن إنشاء عدة مجموعات بيانات مختلفة في نفس الوقت
- معالجة دقيقة للترميز: تم التعامل بشكل خاص مع مشكلة بايت BOM لضمان توافق الملفات
حالات الاستخدام
- إنشاء بيانات اختبار
- ملء قواعد البيانات في بيئات التطوير
- أغراض العروض التوضيحية والتدريب
- اختبار سير عمل معالجة ملفات CSV
شرح البيانات الثابتة
يحتوي سير العمل على 3 مجموعات من بيانات الاختبار المُنشأة مسبقًا (pinData)، وكل مجموعة تحتوي على 10 سجلات مستخدم. تم تثبيت هذه البيانات مسبقًا في عقدة OpenAI لتسهيل الاختبار والعرض دون الحاجة إلى استدعاء API في كل مرة.
ملاحظات هامة
- يجب تهيئة بيانات اعتماد (Credentials) صحيحة لواجهة برمجة تطبيقات OpenAI
- التأكد من وجود مجلد
.n8nوامتلاك صلاحيات الكتابة فيه - معالجة بايت BOM أمرٌ بالغ الأهمية لقراءة ملفات CSV عبر المنصات المختلفة
- البيانات المُنشأة وهمية وتُستخدم لأغراض الاختبار فقط