این روزها همه در مورد LLM ها،ChatGPT ، Midjourney و هوش مصنوعی های دیگر صحبت می کنند. Prompt Engineering مفهومی جدید است که به سرعت دوره های آموزشی آن در حال انتشار است. اما LLM و Prompt Engineering چیست؟ چطور کار می کنند؟ موارد استفاده چیست؟ من محمدرضا مصباحی در این مجموعه مقالات آموزشی سعی خواهم کرد به همه این سوالات پاسخ دهم و همراه با شما بهترین الگوهای استفاده از ChatGPT را در حوزه های مختلف مرور کنیم.
در واقع LLM مخفف عبارت “Large Language Model” و به معنای "مدل زبان بزرگ" است. این مدل های زبانی در حقیقت سیستمهای هوش مصنوعی پیشرفتهای هستند که برای درک و تولید متنهای شبیه به زبان انسان ها (human-like) بر اساس ورودیهایی که دریافت میکنند، طراحی شدهاند. این مدلها بر روی حجم وسیعی از دادههای متنی آموزش داده شده اند و میتوانند طیف گستردهای از وظایف مرتبط با زبان، مانند پاسخ به سؤالات، انجام مکالمات، خلاصهنویسی متن، ترجمه زبانها و موارد دیگری در این حوزه را انجام دهند.
در چند سال گذشته مرکز تحقیقات OpenAI با مدلها و تحقیقات خود، سهم عمدهای در توسعه این فضا داشته است. با این حال، بازیگران دیگری نیز در بازار وجود دارند، به عنوان مثال، شرکت متا با مدلهای OPT، OPT-IML و LLaMA خود، گوگل FLAN-T5 و BERT، StableLM توسط Stability AI، Alpaca در استانفورد و بسیاری از مدلهای متنباز دیگر را منتشر کرد.
در یک طبقه بندی سطح بالا، LLM ها را می توان به دو نوع دسته بندی کرد، یعنی LLM های پایه (Base LLMs) و LLM های تنظیم شده با دستورالعمل (Instruction Tuned LLMs).
این نوع پایه در واقع LLM هایی هستند که برای پیش بینی کلمه یا عبارت بعدی بر اساس داده های آموزش داده شده طراحی شده اند. این مدل زبان برای پاسخ به سؤالات، انجام مکالمات یا کمک به حل مشکلات طراحی مانند مدل 3-GPT طراحی نشده اند. به عنوان مثال، اگر به یک LLM پایه جمله
“In this book about LLMs, we will discuss”
را بدهید، ممکن است این جمله را کامل کند و به شما بگوید:
“In this book about LLMs, we will discuss what LLMs are, how they work, and how you can leverage them in your applications.”
یا اگر به آن بگویید
“What are some famous social networks?”
به جای پاسخ دادن، ممکن است پاسخ دهد:
“Why do people use social networks?”
همانطور که می بینید، عبارتی سوالی و مرتبط با سوال قبلی را به ما می دهد اما به سوال پاسخی نمی دهد. اینجاست که LLM های تنظیم شده با دستورالعمل وارد بازی میشوند.
این نوع از مدل های زبان، به جای تلاش برای تکمیل خودکار متن شما، سعی می کنند تا از دستورالعمل های خواسته شده با استفاده از داده هایی که بر روی آنها آموزش دیده شده اند تبعیت کنند و دستورالعملی را برای شما انجام دهند. به عنوان مثال، اگر جمله
“What are LLMs?”
را وارد کنید. از داده هایی که بر روی آن آموزش دیده شده است و در اصطلاح بر روی آن داده ها Train شده است، استفاده می کند و سعی می کند به سوال شما پاسخ دهد. به طور مشابه، اگر سوال:
“What are some famous social networks?”
را مطرح کنید، این مدل های زبان سعی خواهند کرد تا به جای اینکه به شما یک پاسخ تصادفی بدهد برای سوال شما یک پاسخ دقیق براساس داده ای یادگرفته شده تولید کنند. این نوع مدل های زبانی یعنی Instruction Tuned LLM ها بر روی Base LLM ساخته شده اند. در حقیقت می توان اینطور بیان کرد که:
Instruction Tuned LLMs = Base LLMs + Further Tuning + RLHF
برای ساختن یک دستورالعمل تنظیمشده LLM، یک Base LLM به عنوان مبناب کار در نظر گرفته میشود و با استفاده از یک مجموعه داده بزرگ که نمونه های «دستورالعملها» را پوشش میدهد و اینکه چگونه مدل باید در نتیجه آن دستورالعملها عمل کند، آموزش داده میشود. سپس این مدل با استفاده از تکنیکی به نام «یادگیری تقویتی با بازخورد انسانی» (RLHF - Reinforcement Learning with Human Feedback) تنظیم میشود که به مدل اجازه میدهد از بازخورد انسان بیاموزد و عملکرد خود را در طول زمان بهبود بخشد.
به طور خلاصه میتوان گفت که LLM ها ابزار قدرتمندی هستند که می توانند برای حل طیف وسیعی از وظایف مرتبط با زبان مورد استفاده قرار گیرند. آنها در صنایع مختلف مانند مراقبت های بهداشتی، مالی، آموزش و غیره برای خودکارسازی فرآیندها و بهبود کارایی استفاده می شوند. LLM ها این پتانسیل را دارند که شیوه تعامل ما با سیستم های کامپیوتری را متحول کنند و زندگی ما را آسان تر کنند.
با شناختی که از این مدل های زبان در این مقاله بدست آوردید در مقاله بعدی سعی خواهیم کرد تا مقدمات Prompt Engineering را با هم بررسی کنیم.