LLMs: تنظیم دقیق، تقطیر، و مهندسی سریع

واحد قبلی LLM های همه منظوره را توصیف می کند که به طور متفاوتی به این نام شناخته می شوند:

  • بنیاد LLMs
  • پایه LLM
  • LLM های از پیش آموزش دیده

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

تبدیل یک پایه LLM به راه حلی که نیازهای یک برنامه کاربردی را برآورده می کند، نیازمند فرآیندی به نام تنظیم دقیق است. یک فرآیند ثانویه به نام تقطیر یک نسخه کوچکتر (با پارامترهای کمتر) از مدل تنظیم شده ایجاد می کند.

تنظیم دقیق

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

تنظیم دقیق نمونه‌های مخصوص به وظیفه‌ای که برنامه شما انجام خواهد داد. مهندسان گاهی اوقات می توانند یک پایه LLM را فقط بر روی چند صد یا چند هزار مثال آموزشی تنظیم کنند.

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

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

تقطیر

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

تقطیر یک نسخه کوچکتر از یک LLM ایجاد می کند. LLM تقطیر شده پیش‌بینی‌ها را بسیار سریع‌تر ایجاد می‌کند و به منابع محاسباتی و محیطی کمتری نسبت به LLM کامل نیاز دارد. با این حال، پیش‌بینی‌های مدل تقطیر شده معمولاً به خوبی پیش‌بینی‌های LLM اصلی نیستند. به یاد بیاورید که LLM هایی با پارامترهای بیشتر تقریبا همیشه پیش بینی های بهتری نسبت به LLM هایی با پارامترهای کمتر ایجاد می کنند.

مهندسی سریع

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

انسان ها از مثال ها به خوبی یاد می گیرند. LLM ها هم همینطور. نشان دادن یک مثال به یک LLM، درخواست تک شات نامیده می شود. به عنوان مثال، فرض کنید می خواهید مدلی از فرمت زیر برای خروجی خانواده میوه استفاده کند:

کاربر نام میوه را وارد می کند: LLM کلاس آن میوه را خروجی می کند.

یک اعلان تک شات به LLM یک نمونه از قالب قبلی را نشان می‌دهد و سپس از LLM می‌خواهد تا یک پرس و جو را بر اساس آن مثال تکمیل کند. به عنوان مثال:

peach: drupe
apple: ______

گاهی اوقات یک مثال کافی است. اگر اینطور باشد، LLM یک پیش‌بینی مفید را خروجی می‌دهد. به عنوان مثال:

apple: pome

در شرایط دیگر، یک مثال کافی نیست. یعنی کاربر باید چندین نمونه LLM را نشان دهد. به عنوان مثال، دستور زیر شامل دو مثال است:

plum: drupe
pear: pome
lemon: ____

ارائه چندین مثال را چند شات اعلان می نامند. می توانید دو خط اول دستور قبلی را به عنوان نمونه های آموزشی در نظر بگیرید.

آیا یک LLM می‌تواند پیش‌بینی‌های مفیدی را بدون مثال ارائه دهد ( تشویق صفر )؟ گاهی اوقات، اما LLM ها زمینه را دوست دارند. بدون زمینه، دستور صفر شات زیر ممکن است اطلاعات مربوط به شرکت فناوری را به جای میوه بازگرداند:

apple: _______

استنتاج آفلاین

تعداد پارامترها در یک LLM گاهی آنقدر زیاد است که استنتاج آنلاین آنقدر کند است که برای کارهای دنیای واقعی مانند رگرسیون یا طبقه بندی عملی نیست. در نتیجه، بسیاری از تیم های مهندسی به جای آن بر استنتاج آفلاین (همچنین به عنوان استنتاج انبوه یا استنتاج استاتیک نیز شناخته می شود) متکی هستند. به عبارت دیگر، مدل آموزش دیده به جای پاسخ دادن به پرسش ها در زمان ارائه، پیش بینی هایی را از قبل انجام می دهد و سپس آن پیش بینی ها را در حافظه پنهان نگه می دارد.

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

به عنوان مثال، جستجوی گوگل از یک LLM برای استنتاج آفلاین استفاده کرد تا فهرستی از بیش از 800 مترادف واکسن کووید را در بیش از 50 زبان ذخیره کند. سپس جستجوی گوگل از لیست ذخیره شده برای شناسایی سوالات مربوط به واکسن ها در ترافیک زنده استفاده کرد.

از LLM ها مسئولانه استفاده کنید

مانند هر شکلی از یادگیری ماشینی، LLM ها عموماً دارای تعصبات زیر هستند:

  • داده هایی که بر اساس آنها آموزش دیده اند.
  • داده هایی که روی آنها تقطیر شد.

از LLM ها منصفانه و مسئولانه مطابق با دروس ارائه شده در این دوره استفاده کنید.

تمرین: درک خود را بررسی کنید

کدام یک از عبارات زیر در مورد LLM درست است؟
یک LLM مقطر دارای پارامترهای کمتری نسبت به مدل زبان پایه ای است که از آن منشعب شده است.
بله، تقطیر تعداد پارامترها را کاهش می دهد.
یک LLM تنظیم شده دارای پارامترهای کمتری نسبت به مدل زبان پایه است که بر روی آن آموزش داده شده است.
یک مدل دقیق تنظیم شده دارای همان تعداد پارامترهای مدل زبان پایه اصلی است.
همانطور که کاربران مهندسی سریع تری انجام می دهند، تعداد پارامترها در یک LLM افزایش می یابد.
مهندسی سریع پارامترهای LLM را اضافه (یا حذف یا تغییر نمی دهد).