مقدمه ای برای تنظیم مدل

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

این صفحه راهنمایی در مورد تنظیم مدل متنی در پشت سرویس متنی API Gemini ارائه می دهد.

تنظیم مدل چگونه کار می کند

هدف از تنظیم مدل بهبود بیشتر عملکرد مدل برای کار خاص شما است. تنظیم مدل با ارائه یک مجموعه داده آموزشی به مدل کار می کند که شامل نمونه های زیادی از کار است. برای کارهای خاص، می توانید با تنظیم مدل بر روی تعداد کمی از نمونه ها، پیشرفت های قابل توجهی در عملکرد مدل داشته باشید.

داده های آموزشی شما باید به عنوان نمونه هایی با ورودی های سریع و خروجی های پاسخ مورد انتظار ساختار بندی شوند. همچنین می‌توانید مدل‌ها را با استفاده از داده‌های نمونه مستقیماً در Google AI Studio تنظیم کنید. هدف این است که با ارائه مثال‌های فراوانی که آن رفتار یا وظیفه را نشان می‌دهد، مدل را به تقلید از رفتار یا وظیفه مورد نظر آموزش دهیم.

هنگامی که یک کار تنظیم را اجرا می کنید، مدل پارامترهای اضافی را می آموزد که به آن کمک می کند اطلاعات لازم را برای انجام کار مورد نظر یا یادگیری رفتار مورد نظر رمزگذاری کند. سپس می توان از این پارامترها در زمان استنتاج استفاده کرد. خروجی کار تنظیم یک مدل جدید است که در واقع ترکیبی از پارامترهای تازه آموخته شده و مدل اصلی است.

مدل های پشتیبانی شده

مدل های پایه زیر از تنظیم مدل پشتیبانی می کنند. فقط تکمیل متن تک نوبتی پشتیبانی می شود.

  • Gemini 1.0 Pro
  • text-bison-001

گردش کار برای تنظیم مدل

گردش کار تنظیم مدل به شرح زیر است:

  1. مجموعه داده خود را آماده کنید.
  2. اگر از Google AI Studio استفاده می کنید، مجموعه داده را وارد کنید.
  3. یک کار تنظیم را شروع کنید.

پس از تکمیل تنظیم مدل، نام مدل تیون شده شما نمایش داده می شود. همچنین می‌توانید آن را در Google AI Studio به‌عنوان مدلی برای استفاده در هنگام ایجاد یک درخواست جدید انتخاب کنید.

مجموعه داده خود را آماده کنید

قبل از اینکه بتوانید تنظیم را شروع کنید، به یک مجموعه داده برای تنظیم مدل نیاز دارید. برای بهترین عملکرد، نمونه های موجود در مجموعه داده باید با کیفیت بالا، متنوع و معرف ورودی ها و خروجی های واقعی باشند.

قالب

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

به عنوان مثال، اگر نمونه‌های موجود در مجموعه داده شما شامل یک "question:" و یک "context:" ، ترافیک تولید نیز باید طوری قالب‌بندی شود که شامل یک "question:" و یک "context:" به همان ترتیبی باشد که در زیر نشان داده می‌شود. نمونه های مجموعه داده اگر زمینه را حذف کنید، مدل نمی‌تواند الگو را تشخیص دهد، حتی اگر سؤال دقیق در یک مثال در مجموعه داده باشد.

افزودن یک اعلان یا مقدمه به هر نمونه در مجموعه داده شما نیز می تواند به بهبود عملکرد مدل تنظیم شده کمک کند. توجه داشته باشید، اگر یک اعلان یا مقدمه در مجموعه داده شما گنجانده شده است، باید در زمان استنتاج در اعلان مدل تنظیم شده نیز گنجانده شود.

اندازه داده های آموزشی

شما می توانید یک مدل را با حداقل 20 مثال تنظیم کنید و داده های اضافی به طور کلی کیفیت پاسخ ها را بهبود می بخشد. بسته به کاربردتان باید بین 100 تا 500 نمونه را هدف بگیرید. جدول زیر اندازه های داده توصیه شده را برای تنظیم یک مدل متنی برای کارهای رایج مختلف نشان می دهد:

وظیفه تعداد نمونه در مجموعه داده
طبقه بندی 100+
خلاصه سازی 100-500+
جستجوی سند 100+

مجموعه داده تنظیم را آپلود کنید

داده ها یا با استفاده از API یا از طریق فایل های آپلود شده در Google AI Studio منتقل می شوند.

از دکمه Import برای وارد کردن داده ها از یک فایل استفاده کنید یا یک دستور ساختاریافته با مثال هایی را برای وارد کردن به عنوان مجموعه داده تنظیم خود انتخاب کنید.

کتابخانه مشتری

برای استفاده از کتابخانه مشتری، فایل داده را در فراخوانی createTunedModel ارائه دهید. محدودیت حجم فایل 4 مگابایت است. برای شروع ، شروع سریع تنظیم با پایتون را ببینید.

حلقه

برای فراخوانی REST API با استفاده از Curl، نمونه‌های آموزشی را با فرمت JSON به آرگومان training_data ارائه دهید. برای شروع ، شروع سریع تنظیم با Curl را ببینید.

تنظیمات تنظیم پیشرفته

هنگام ایجاد یک کار تنظیم، می توانید تنظیمات پیشرفته زیر را مشخص کنید:

  • Epochs - یک پاس آموزشی کامل در کل مجموعه آموزشی به طوری که هر نمونه یک بار پردازش شده است.
  • اندازه دسته - مجموعه نمونه هایی که در یک تکرار آموزشی استفاده می شود. اندازه دسته تعداد نمونه ها را در یک دسته تعیین می کند.
  • نرخ یادگیری - یک عدد ممیز شناور که به الگوریتم می‌گوید با چه شدتی پارامترهای مدل را در هر تکرار تنظیم کند. به عنوان مثال، نرخ یادگیری 0.3 می تواند وزن ها و سوگیری ها را سه برابر قوی تر از نرخ یادگیری 0.1 تنظیم کند. نرخ یادگیری بالا و پایین دارای مبادلات منحصر به فرد خود هستند و باید بر اساس موارد استفاده شما تنظیم شوند.
  • ضرب کننده نرخ یادگیری - ضرب کننده نرخ، نرخ یادگیری اصلی مدل را تغییر می دهد. مقدار 1 از نرخ یادگیری اصلی مدل استفاده می کند. مقادیر بیشتر از 1 میزان یادگیری را افزایش می دهد و مقادیر بین 1 تا 0 میزان یادگیری را کاهش می دهد.

جدول زیر پیکربندی های توصیه شده برای تنظیم مدل فونداسیون را نشان می دهد:

فرا پارامتر مقدار پیش فرض تنظیمات توصیه شده
دوران 5 اگر زیان قبل از 5 دوره شروع به افزایش کرد، از مقدار کمتری استفاده کنید.
اگر از دست دادن همگرا است و به نظر نمی رسد فلات باشد، از یک مقدار بالاتر استفاده کنید.
اندازه دسته 4
میزان یادگیری 0.001 برای مجموعه داده های کوچکتر از مقدار کمتری استفاده کنید.

منحنی ضرر نشان می دهد که پیش بینی مدل پس از هر دوره چقدر از پیش بینی های ایده آل در مثال های آموزشی انحراف دارد. در حالت ایده‌آل، می‌خواهید تمرین را در پایین‌ترین نقطه منحنی، درست قبل از اینکه فلات کند، متوقف کنید. به عنوان مثال، نمودار زیر منحنی تلفات را در حدود دوره 4-6 نشان می دهد که به این معنی است که می توانید پارامتر Epoch را روی 4 تنظیم کنید و همچنان همان عملکرد را داشته باشید.

Loss curve

وضعیت کار تنظیم را بررسی کنید

می‌توانید وضعیت کار تنظیم خود را در Google AI Studio UI در برگه My Library یا با استفاده از ویژگی metadata مدل تنظیم شده در Gemini API بررسی کنید.

عیب یابی خطاها

این بخش شامل نکاتی در مورد نحوه رفع خطاهایی است که ممکن است هنگام ایجاد مدل تنظیم شده خود با آن مواجه شوید.

احراز هویت

تنظیم با استفاده از API و کتابخانه مشتری نیاز به احراز هویت کاربر دارد. یک کلید API به تنهایی کافی نیست. اگر خطای 'PermissionDenied: 403 Request had insufficient authentication scopes' مشاهده کردید، باید احراز هویت کاربر را تنظیم کنید.

برای پیکربندی اعتبار OAuth برای Python به آموزش راه اندازی OAuth مراجعه کنید.

مدل های لغو شده

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

بعدش چی