کار با چت‌بات‌ و آموزش پرامپت‌نویسی

آشنایی با مفاهیم

چت‌بات‌ها یا مدل‌های زبانی محاوره‌­ای (Conversational language model) یا مدل‌های زبانی بزرگ زیر شاخه‌ای از هوش مصنوعی Artificial Intelligence هستند که با تحولات سال‌­های  اخیر و توسعه شبکه‌های عصبی عمیق Deep Neural Network و Transformer‌ها ممکن شده­‌اند. این مدل‌‌ها زیر مجموعه هوش مصنوعی مولد (Generative AI) هستند.  

 این چت بات ها

  • توانایی پاسخ به سوالات، 
  • انجام کار (task) داده شده برای مثال “نوشتن پاراگرافی در مورد کشور ایران”، “دستور العمل پختن قرمه سبزی” یا “نوشتن کد به زبان پایتون برای محاسبه بزرگترین مقسوم علیه مشترک دو عدد” و
  • فراهم کردن پاسخ متنی

را دارند.

تمامی این موارد با الگوریتم‌های محاسباتی و احتمالاتی بعد از یادگیری از متون‌ و  کتاب­‌ها و صفحات وب و پردازش‌های مختلف میانی و بهینه‌سازی ممکن شده‌اند. شکل زیر به صورت خلاصه مراحل از نوشتن پرامپت (دستور ورودی متنی به چت‌­بات) تا تولید خروجی توسط چت‌­بات (متن خروجی پاسخ) را نمایش می­‌دهد.

توضیح روش عملکرد الگوریتم را به صورت خیلی کلی به صورت زیر است:

 الگوریتم پایه چت‌بات‌ها به نحوی نوشته شده تا «ادامه منطقی[1]» متنی که به عنوان ورودی گرفته است را ایجاد کند

  • که در آن «منطقی» به معنی کلمه‌ای است که از فردی بعد از دیدن متون نوشته شده توسط افراد در میلیاردها وب سایت یا صفحات کتاب انتظار می رود تا بنویسد.
  • توانایی اصلی چت‌­بات­ یافتن تمامی متن‌های مشابه و بعد یافتن بسیار سریع کلمات ممکن بعدی و احتمال ممکن برای هر کدام است به صورت لیستی از کلمات و احتمالات مربوط به آنها است.

برای مثال فرض کنید عبارت داده شده ورودی

 “The best thing about AI is its ability to

باشد. شکل زیر خروجی مدل نوعی چت‌­بات را نمایش می­‌دهد.

نمونه هایی با چت‌­بات:

تمرین

  • خودتان امتحان کنید و پرامپت بنویسید؟
  • آیا شباهتی بین این الگوریتم و الگوریتم جستجوی گوگل می­بینید؟ 
 
 

سوال اصلی اینه که این احتمالات از کجا و چطوری محاسبه می­‌شوند.

 ۱- از کجا؛ دیتا آموزشی برای pretraining چه دیتایی بوده است؟

 ۳۰۰ میلیارد توکن، برای پیش آموزش GPT-3 استفاده شده است. جدول زیر داده‌های مورد استفاده برای پیش آموزش GPT-3 را نشان می‌دهد. این مقدار یکی از پارامترهای معرفی چت‌بات است. این عدد برای مدل GPT-4، بیش از ۱۰۰ تریلیارد توکن گزارش شده است.

 ۲- احتمالات چطوری حساب می­شوند؟

 با یادگیری شبکه عصبی بسیار عظیم، برای مثال با ۱۷۵ میلیارد پارامتر در GPT-3. در واقع پیش‌پردازش pre_train شدن یک چت‌بات یعنی یادگیری همین وزن‌ها. تعداد پارامترهای یک شبکه عصبی هم یکی از معیارهای مشخص کننده و متمایزکننده عملکرد چت‌بات‌ها است. برای این کار به قدرت پردازشی بسیار زیاد (پردازنده‌های GPU) نیاز است. توضیح دقیق نحوه پیش‌پردازش، یادگیری و tunning چت‌بات خارج از محتوی این درسنامه است.

برای فهم بهتر پیشنهاد می­کنم درسنامه ؟ و ویدیو را ببینید. 

توضیح دقیق و شرح بلوک دیاگرام های فوق خارج از محتوی این درسنامه است. فقط به برخی مفاهیم بسیار مهم می­پردازیم چون در فهم نحوی کارکرد سیستم چت­بات بسیار مهم هستند:

  • چنین سیستم هایی با کلمه به تنهایی عملکرد مناسبی ندارند، زیرا کلمه نمی­تواند مقدار مناسبی از بافت (Context) موضوعی را منتقل نمی­کند.
  • مقدار متنی شبیه جمله یا بیشتر لازم است تا شامل بافت (Context) موضوعی باشد و آنرا منتقل کند که در ادبیات فنی LLM به آن Token گفته می­شود. متن ورودی پرامپت هم در نهایت به صورت Token فهمیده می­شود.

در بخش بعدی از تعدادی مثال برای ذهنیت بخشیدن به مفهوم بافت (Context) موضوعی  استفاده می­کنیم. 

[1] reasonable continuation

 
Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors