Fine tuning مدل‌ با n8n

انتشار خودکار محتوا با n8n

مقدمه

Fine tuning مدل‌ با n8n

Fine tuning مدل‌ با n8n: آموزش کامل Fine-tuning مدل‌های OpenAI در n8n و ساخت مدل اختصاصی هوش مصنوعی

Workflow مورد بررسی در این آموزش، فرآیند آماده‌سازی و ارسال فایل آموزشی (JSONL)، ایجاد Job مربوط به Fine-tuning و در نهایت استفاده از مدل آموزش‌دیده را در محیط n8n مدیریت می‌کند. این Workflow علاوه بر خودکارسازی مراحل، باعث کاهش خطاهای انسانی و ساده‌تر شدن مدیریت فرآیند آموزش مدل می‌شود.

در این Template از Google Drive برای نگهداری فایل آموزشی، OpenAI برای آموزش مدل و AI Agent در n8n برای استفاده از مدل جدید استفاده شده است. بنابراین بدون نیاز به انجام مداوم عملیات دستی، می‌توانید مدل اختصاصی خود را ایجاد کرده و در پروژه‌های مختلف از آن استفاده کنید.

در ادامه مقاله، تمام Nodeهای Workflow، نحوه عملکرد هر بخش، تنظیمات موردنیاز، روش شخصی‌سازی، خطاهای رایج و نکات مهم به‌صورت کامل بررسی خواهند شد.

قبل از شروع

اگر هنوز n8n را نصب نکرده‌اید، پیشنهاد می‌کنیم ابتدا مقاله «آموزش n8n» را مطالعه کنید. در آن مقاله، مراحل نصب با Node.js و Docker، راه‌اندازی اولیه و ساخت اولین Workflow به‌صورت کامل آموزش داده شده است. پس از نصب و راه‌اندازی، به این مقاله بازگردید و مراحل پیاده‌سازی این Workflow را دنبال کنید.

این Workflow چه کاری انجام می‌دهد؟

هدف این Workflow، خودکارسازی فرآیند Fine-tuning مدل‌های OpenAI با n8n است.

ابتدا فایل آموزشی با فرمت JSONL از Google Drive دریافت می‌شود. سپس فایل از طریق API به OpenAI ارسال شده و برای عملیات Fine-tuning ثبت می‌شود. پس از آن، یک Job جدید برای آموزش مدل ایجاد می‌شود.

بعد از اتمام فرآیند آموزش در OpenAI، یک مدل اختصاصی تولید خواهد شد که می‌توان از آن در AI Agent داخل n8n استفاده کرد. این موضوع باعث می‌شود چت‌بات یا دستیار هوشمند شما پاسخ‌هایی بسیار نزدیک‌تر به داده‌های آموزشی ارائه دهد.

در این Template همچنین یک Chat Trigger و AI Agent نیز وجود دارد که نشان می‌دهد مدل آموزش‌دیده چگونه در یک گفت‌وگوی واقعی مورد استفاده قرار می‌گیرد.

کاربردهای این Workflow

این Workflow در پروژه‌های مختلف هوش مصنوعی کاربرد فراوانی دارد، از جمله:

  • ساخت چت‌بات اختصاصی برای شرکت‌ها
  • آموزش مدل بر اساس مستندات داخلی سازمان
  • ایجاد دستیار پاسخ‌گویی برای تیم پشتیبانی
  • ساخت دستیار آموزشی برای دانشگاه‌ها و مؤسسات
  • آموزش مدل روی اطلاعات محصولات فروشگاه اینترنتی
  • توسعه سیستم‌های پاسخ‌گویی مبتنی بر دانش سازمان
  • ساخت دستیار تخصصی برای حوزه‌های پزشکی، حقوقی یا مالی
  • کاهش هزینه Promptهای طولانی با استفاده از مدل اختصاصی

 

Fine tuning مدل‌ با n8n

پیش‌نیازهای اجرای این Workflow

برای اجرای صحیح این Workflow باید موارد زیر را آماده کرده باشید:

  • نصب n8n
  • حساب OpenAI
  • OpenAI API Key
  • Credential مربوط به OpenAI در n8n
  • حساب Google Drive
  • Credential مربوط به Google Drive
  • فایل آموزشی با فرمت JSONL
  • دسترسی به API مربوط به Fine-tuning
  • فعال بودن قابلیت Fine-tuning در حساب OpenAI
  • اتصال اینترنت پایدار
  • فضای کافی در Google Drive برای نگهداری فایل آموزشی

فایل JSON این Workflow را از این قسمت دانلود کنید.

رمز فایل: danixai.com

آموزش Import کردن Workflow

وارد داشبورد n8n شوید.

روی Import from File کلیک کنید.

فایل JSON را انتخاب کنید.

Workflow ایجاد خواهد شد.

Credentialهای موردنیاز را تنظیم کنید.

Fine tuning مدل‌ با n8n

ساختار Workflow

در فرآیند Fine-tuning مدل‌های OpenAI با n8n، این Template به دو بخش مجزا تقسیم می‌شود.

بخش اول: ایجاد مدل Fine-tuned
Manual Trigger
        ↓
Google Drive
        ↓
Upload File
        ↓
Create Fine-tuning Job

در این مسیر، فایل آموزشی از Google Drive دریافت شده، به OpenAI ارسال می‌شود و سپس Job مربوط به آموزش مدل ایجاد خواهد شد.

بخش دوم: استفاده از مدل آموزش‌دیده
Chat Trigger
      ↓
AI Agent
      ↓
OpenAI Chat Model (Fine-tuned Model)

این بخش پس از پایان آموزش مدل مورد استفاده قرار می‌گیرد. هر پیام دریافتی توسط Chat Trigger به AI Agent ارسال شده و Agent با استفاده از مدل اختصاصی تولیدشده، پاسخ مناسب را ایجاد می‌کند.

آموزش کامل Nodeهای Workflow

1. Manual Trigger (When clicking “Test workflow”)

وظیفه Node

این Node نقطه شروع اجرای دستی Workflow است.

ورودی

ورودی ندارد.

خروجی

یک سیگنال برای آغاز اجرای Workflow تولید می‌کند.

تنظیمات مهم

تنظیمات خاصی ندارد و تنها هنگام فشردن دکمه Test Workflow اجرا می‌شود.

نکات قابل تغییر

در پروژه‌های واقعی می‌توانید این Node را با موارد زیر جایگزین کنید:

  • Cron
  • Webhook
  • Schedule Trigger
  • Form Trigger
  • Email Trigger

دلیل استفاده در Workflow

از آنجا که فرآیند Fine-tuning معمولاً به‌صورت روزانه اجرا نمی‌شود، استفاده از Manual Trigger امکان کنترل کامل زمان شروع عملیات را فراهم می‌کند.

2. Google Drive

وظیفه Node

این Node فایل آموزشی JSONL را از Google Drive دانلود می‌کند.

ورودی

شناسه فایل (File ID)

خروجی

فایل به‌صورت Binary در اختیار Node بعدی قرار می‌گیرد.

تنظیمات مهم

  • عملیات روی Download قرار گرفته است.
  • File ID فایل آموزشی مشخص شده است.
  • خروجی به‌صورت Binary ذخیره می‌شود.
  • نام Binary Property برابر data.jsonl است.

نکات قابل تغییر

می‌توانید:

  • فایل دیگری انتخاب کنید.
  • مسیر فایل را تغییر دهید.
  • از پوشه دیگری در Google Drive استفاده کنید.
  • File ID را به‌صورت داینامیک دریافت کنید.

دلیل استفاده در Workflow

نگهداری فایل‌های آموزشی در Google Drive باعث می‌شود نسخه‌های مختلف Dataset به‌راحتی مدیریت شوند و نیازی به بارگذاری دستی فایل در هر بار اجرای Workflow نباشد.

3. Upload File

وظیفه Node

این Node فایل دانلودشده را در فضای ذخیره‌سازی OpenAI بارگذاری می‌کند.

ورودی

فایل Binary دریافت‌شده از Google Drive

خروجی

شناسه فایل (File ID) تولیدشده توسط OpenAI

تنظیمات مهم

  • Resource روی File قرار دارد.
  • Purpose برابر fine-tune تنظیم شده است.
  • Binary Property برابر data.jsonl است.

نکات قابل تغییر

در صورت نیاز می‌توانید فایل‌های دیگری را نیز برای کاربردهای متفاوت OpenAI ارسال کنید؛ البته در این Workflow هدف، Fine-tuning است، بنابراین مقدار Purpose نباید تغییر کند.

دلیل استفاده در Workflow

OpenAI قبل از ایجاد Job آموزش، فایل آموزشی را در Storage خود ذخیره می‌کند. شناسه این فایل در مرحله بعد برای ساخت Job مورد استفاده قرار می‌گیرد.

4. Create Fine-tuning Job

وظیفه Node

این Node از طریق درخواست HTTP فرآیند آموزش مدل را آغاز می‌کند.

ورودی

شناسه فایل آپلودشده در OpenAI.

خروجی

اطلاعات مربوط به Job ایجادشده شامل:

  • شناسه Job
  • وضعیت اولیه
  • مدل پایه
  • زمان ایجاد
  • سایر اطلاعات مربوط به آموزش

تنظیمات مهم

  • Method روی POST قرار دارد.
  • Endpoint مربوط به API Fine-tuning استفاده شده است.
  • درخواست به‌صورت JSON ارسال می‌شود.
  • هدر Content-Type برابر application/json تنظیم شده است.
  • احراز هویت از طریق HTTP Header انجام می‌شود.
  • مدل پایه gpt-4o-mini-2024-07-18 انتخاب شده است.

نکات قابل تغییر

در این بخش می‌توانید:

  • مدل پایه را تغییر دهید.
  • Endpointهای جدید OpenAI را استفاده کنید.
  • پارامترهای اضافی Fine-tuning را اضافه کنید.
  • تنظیمات Hyperparameter را در صورت پشتیبانی API اعمال کنید.

دلیل استفاده در Workflow

این Node مهم‌ترین قسمت Workflow است؛ زیرا عملیات واقعی آموزش مدل از همین بخش آغاز می‌شود. بدون اجرای این درخواست، فایل صرفاً در فضای ذخیره‌سازی OpenAI باقی خواهد ماند و فرآیند آموزش شروع نمی‌شود.

5. Chat Trigger (When chat message received)

وظیفه Node

این Node نقطه شروع بخش دوم Workflow است و هر زمان یک پیام جدید از طریق رابط چت n8n دریافت شود، فرآیند پاسخ‌گویی را آغاز می‌کند.

ورودی

  • پیام کاربر
  • اطلاعات Session (در صورت فعال بودن)
  • داده‌های مربوط به مکالمه

خروجی

پیام دریافت‌شده را برای AI Agent ارسال می‌کند.

تنظیمات مهم

  • از Webhook داخلی n8n استفاده می‌کند.
  • قابلیت اتصال به رابط Chat داخلی n8n را دارد.
  • امکان مدیریت Sessionهای مختلف را فراهم می‌کند.

نکات قابل تغییر

می‌توانید این Trigger را با گزینه‌های زیر جایگزین کنید:

  • Telegram Trigger
  • Slack Trigger
  • Discord Trigger
  • WhatsApp Cloud API
  • Webhook
  • فرم‌های وب
  • API اختصاصی

دلیل استفاده در Workflow

پس از آموزش مدل، لازم است راهی برای تعامل کاربران با آن وجود داشته باشد. Chat Trigger این امکان را فراهم می‌کند که هر پیام به مدل Fine-tuned ارسال شده و پاسخ مناسب دریافت شود.

6. AI Agent

وظیفه Node

AI Agent مغز اصلی بخش مکالمه است و مسئول مدیریت تعامل بین کاربر و مدل هوش مصنوعی است.

ورودی

  • پیام کاربر
  • مدل زبانی (Language Model)
  • تنظیمات Agent

خروجی

پاسخ تولیدشده توسط مدل را بازمی‌گرداند.

تنظیمات مهم

در این Template تنظیمات پیش‌فرض استفاده شده است، اما AI Agent قابلیت‌های بسیار بیشتری دارد؛ از جمله:

  • استفاده از Memory
  • اتصال به ابزارها (Tools)
  • اجرای چند مرحله‌ای
  • فراخوانی APIهای دیگر
  • مدیریت Context

نکات قابل تغییر

می‌توانید:

  • Prompt سیستم را تغییر دهید.
  • ابزارهای جدید به Agent اضافه کنید.
  • Memory فعال کنید.
  • چند مدل مختلف به Agent متصل کنید.
  • محدودیت تعداد توکن را تنظیم کنید.

دلیل استفاده در Workflow

به‌جای ارسال مستقیم پیام به مدل، AI Agent انعطاف بیشتری برای توسعه Workflow در آینده فراهم می‌کند و می‌تواند به ابزارها و سرویس‌های مختلف متصل شود.

7. OpenAI Chat Model

وظیفه Node

این Node مدل Fine-tuned ساخته‌شده در OpenAI را در اختیار AI Agent قرار می‌دهد.

ورودی

درخواست تولید متن از AI Agent

خروجی

پاسخ تولیدشده توسط مدل اختصاصی

تنظیمات مهم

در این Workflow شناسه مدل به‌صورت زیر تنظیم شده است:

ft:gpt-4o-mini-2024-07-18:...

این شناسه نشان می‌دهد که به‌جای مدل اصلی GPT-4o Mini، از نسخه آموزش‌دیده آن استفاده می‌شود.

نکات قابل تغییر

می‌توانید:

  • مدل دیگری انتخاب کنید.
  • پس از ساخت نسخه جدید Fine-tuned، شناسه مدل را تغییر دهید.
  • پارامترهایی مانند Temperature یا Max Tokens را تنظیم کنید.
  • از نسخه‌های جدید OpenAI استفاده کنید.

دلیل استفاده در Workflow

تمام هدف این Template استفاده از مدل اختصاصی است. بنابراین AI Agent به‌جای GPT استاندارد، مستقیماً با مدل آموزش‌دیده ارتباط برقرار می‌کند.

نحوه شخصی‌سازی Workflow

یکی از مهم‌ترین مزایای n8n، امکان شخصی‌سازی تقریباً تمام بخش‌های Workflow است. این Template نیز از این قاعده مستثنی نیست و می‌توان آن را متناسب با نیاز هر پروژه تغییر داد.

تغییر Promptها

در صورتی که از Promptهای اختصاصی در AI Agent استفاده می‌کنید، می‌توانید:

  • شخصیت مدل را تغییر دهید.
  • لحن پاسخ‌ها را تنظیم کنید.
  • قوانین پاسخ‌گویی تعریف کنید.
  • محدودیت‌های خاصی برای مدل در نظر بگیرید.
تغییر APIها

در صورت تغییر نسخه API یا انتشار قابلیت‌های جدید OpenAI، تنها کافی است Endpoint یا پارامترهای درخواست HTTP Request را به‌روزرسانی کنید.

تغییر مدل AI

در این Workflow از مدل Fine-tuned مبتنی بر GPT-4o Mini استفاده شده است، اما می‌توانید شناسه مدل را با هر مدل Fine-tuned دیگری که در حساب OpenAI خود ساخته‌اید جایگزین کنید.

تغییر Trigger

به‌جای اجرای دستی یا Chat Trigger می‌توانید از موارد زیر استفاده کنید:

  • Cron
  • Webhook
  • Telegram
  • Slack
  • Discord
  • Gmail
  • فرم‌های آنلاین
  • API اختصاصی
تغییر زمان‌بندی

اگر Dataset شما مرتباً به‌روزرسانی می‌شود، می‌توانید با استفاده از Cron Workflow را به‌صورت روزانه، هفتگی یا ماهانه اجرا کنید تا نسخه جدیدی از مدل آموزش داده شود.

تغییر مسیر اجرای Workflow

امکان اضافه کردن Nodeهای دیگری مانند:

  • IF
  • Switch
  • Merge
  • Code
  • Set
  • Database
  • Google Sheets
  • Gmail
  • Slack
  • Telegram

وجود دارد تا فرآیند آموزش و استفاده از مدل به نیازهای پروژه شما نزدیک‌تر شود.

Fine tuning مدل‌ با n8n

مزایای استفاده از این Workflow

استفاده از این Workflow مزایای متعددی دارد که باعث می‌شود فرآیند آموزش و استفاده از مدل‌های اختصاصی OpenAI بسیار ساده‌تر و قابل مدیریت‌تر شود.

  1. خودکارسازی فرآیند Fine-tuning و حذف بسیاری از مراحل دستی
  2. کاهش احتمال خطا هنگام آپلود فایل‌های آموزشی
  3. مدیریت آسان Datasetها از طریق Google Drive
  4. امکان استفاده مجدد از مدل آموزش‌دیده در Workflowهای مختلف
  5. قابلیت توسعه و اتصال به ده‌ها سرویس دیگر در n8n
  6. صرفه‌جویی در زمان برای پروژه‌هایی که به‌صورت مداوم مدل‌های جدید آموزش می‌دهند
  7. امکان ادغام با سیستم‌های داخلی سازمان
  8. ساخت دستیارهای هوشمند اختصاصی با دانش سازمانی

نکات مهم

قبل از استفاده از این Template بهتر است به نکات زیر توجه داشته باشید:

  1. فایل آموزشی باید با فرمت JSONL تهیه شود؛ فرمت‌های دیگر توسط OpenAI برای Fine-tuning پذیرفته نمی‌شوند.
  2. هر خط فایل JSONL باید شامل یک نمونه آموزشی مستقل و با ساختار صحیح باشد.
  3. کیفیت داده‌های آموزشی تأثیر مستقیمی بر کیفیت مدل نهایی دارد؛ داده‌های تکراری یا نادرست می‌توانند عملکرد مدل را کاهش دهند.
  4. پس از ایجاد Job، فرآیند آموزش ممکن است از چند دقیقه تا چند ساعت زمان ببرد؛ بسته به حجم داده‌ها و وضعیت سرویس OpenAI.
  5. پس از پایان آموزش، شناسه مدل جدید (Fine-tuned Model ID) را در Node OpenAI Chat Model جایگزین کنید.
  6. Credentialهای Google Drive و OpenAI باید قبل از اجرای Workflow به‌درستی پیکربندی شده باشند.
  7. هزینه Fine-tuning و استفاده از مدل آموزش‌دیده بر اساس تعرفه‌های OpenAI محاسبه می‌شود؛ قبل از شروع، هزینه‌ها را بررسی کنید.
  8. بهتر است نسخه‌های مختلف فایل آموزشی را نگهداری کنید تا در صورت نیاز بتوانید مدل را با داده‌های قبلی یا جدید دوباره آموزش دهید.

خطاهای رایج (Troubleshooting)

1. خطای Unauthorized یا 401

علت:

API Key یا Credential مربوط به OpenAI معتبر نیست یا دسترسی لازم را ندارد.

راه‌حل:

  • صحت API Key را بررسی کنید.
  • Credential را مجدداً در n8n ایجاد کنید.
  • مطمئن شوید حساب OpenAI شما به API دسترسی دارد.

2. فایل JSONL پذیرفته نمی‌شود

علت:

ساختار فایل با استاندارد موردنیاز OpenAI مطابقت ندارد.

راه‌حل:

  • فرمت JSONL را بررسی کنید.
  • هر خط باید شامل یک شیء JSON معتبر باشد.
  • فیلدهای messages، role و content باید به‌درستی تعریف شده باشند.

3. Google Drive فایل را دانلود نمی‌کند

علت:

File ID اشتباه است یا حساب Google Drive به فایل دسترسی ندارد.

راه‌حل:

  • شناسه فایل را بررسی کنید.
  • دسترسی فایل را اصلاح کنید.
  • Credential مربوط به Google Drive را دوباره متصل کنید.

4. وضعیت Job برای مدت طولانی در حالت Pending باقی می‌ماند

علت:

سرورهای OpenAI در حال پردازش درخواست‌های متعدد هستند یا حجم داده‌های آموزشی زیاد است.

راه‌حل:

  • چند دقیقه یا چند ساعت صبر کنید.
  • وضعیت Job را از طریق API یا داشبورد OpenAI بررسی کنید.
  • در صورت نیاز، Job جدیدی ایجاد کنید.

5. مدل Fine-tuned در AI Agent کار نمی‌کند

علت:

شناسه مدل آموزش‌دیده در Node OpenAI Chat Model به‌درستی وارد نشده یا آموزش مدل با خطا متوقف شده است.

راه‌حل:

  • شناسه مدل را از داشبورد OpenAI کپی کنید.
  • مطمئن شوید وضعیت آموزش Succeeded است.
  • مدل جدید را در تنظیمات Node جایگزین کنید.

جمع‌بندی

Fine tuning مدل‌ با n8n راهکاری کاربردی برای ساخت مدل‌های هوش مصنوعی متناسب با نیازهای اختصاصی هر کسب‌وکار یا پروژه است. این Workflow با ترکیب Google Drive، OpenAI و قابلیت‌های اتوماسیون n8n، فرآیند آماده‌سازی فایل آموزشی، بارگذاری آن، ایجاد Job آموزش و استفاده از مدل نهایی را در یک جریان منظم و قابل توسعه قرار می‌دهد.

مزیت اصلی این Template، حذف مراحل تکراری و کاهش خطاهای انسانی است. همچنین ساختار ماژولار آن باعث می‌شود بتوانید به‌راحتی سرویس‌های دیگری مانند پایگاه‌داده، پیام‌رسان‌ها، ایمیل یا ابزارهای تحلیلی را به آن اضافه کنید. اگر قصد دارید یک دستیار هوشمند سازمانی، چت‌بات پشتیبانی یا سامانه پاسخ‌گویی مبتنی بر داده‌های اختصاصی ایجاد کنید، این Workflow نقطه شروع مناسبی خواهد بود.

با شخصی‌سازی Promptها، مدل‌های هوش مصنوعی، Triggerها و مسیر اجرای Workflow، می‌توانید آن را با نیازهای پروژه خود تطبیق دهید و از مزایای کامل Fine tuning مدل‌ با n8n در مقیاس‌های مختلف بهره‌مند شوید.

سوالات متداول

1. آیا برای اجرای این Workflow به حساب پولی OpenAI نیاز است؟

بله. برای استفاده از API، آپلود فایل آموزشی و ایجاد Job مربوط به Fine-tuning باید حساب OpenAI شما امکان استفاده از این قابلیت‌ها را داشته باشد و هزینه‌ها بر اساس تعرفه‌های OpenAI محاسبه می‌شود.

2. فایل آموزشی باید چه فرمتی داشته باشد؟

فایل باید با فرمت JSONL و مطابق استاندارد تعیین‌شده توسط OpenAI تهیه شود. هر خط فایل یک نمونه آموزشی مستقل است.

3. آیا می‌توان به‌جای Google Drive از سرویس دیگری استفاده کرد؟

بله. می‌توانید فایل آموزشی را از Dropbox، OneDrive، Amazon S3، FTP، حافظه محلی یا هر منبع دیگری که n8n از آن پشتیبانی می‌کند دریافت کنید.

4. آیا امکان استفاده از مدل آموزش‌دیده در Workflowهای دیگر وجود دارد؟

بله. پس از پایان آموزش، شناسه مدل Fine-tuned را می‌توانید در هر Node مربوط به OpenAI Chat Model یا سایر Workflowهای n8n استفاده کنید.

5. آیا این Workflow برای پروژه‌های سازمانی مناسب است؟

بله. ساختار ماژولار n8n و امکان اتصال به سرویس‌های مختلف باعث می‌شود این Template برای پروژه‌های کوچک، متوسط و سازمانی قابل استفاده و توسعه باشد.

6.آیا Fine tuning مدل‌ با n8n برای کاربران مبتدی مناسب است؟

بله. اگرچه فرآیند Fine-tuning در نگاه اول پیچیده به نظر می‌رسد، اما این Template بسیاری از مراحل را به‌صورت خودکار انجام می‌دهد. تنها کافی است فایل آموزشی (JSONL) را مطابق استاندارد OpenAI آماده کنید، Credentialهای موردنیاز را در n8n تنظیم کنید و Workflow را اجرا نمایید. پس از پایان آموزش، مدل اختصاصی ایجادشده را می‌توانید در AI Agent یا سایر Workflowهای خود استفاده کنید. بنابراین، کاربران مبتدی نیز با داشتن آشنایی اولیه با n8n و OpenAI می‌توانند بدون نیاز به برنامه‌نویسی از این Template استفاده کنند.

GIT

Categories: , ,

توسعه توسط تیم میهن وردپرس