سادهترین تعریف Prompt Engineering اینه که چگونه بشر بتونه با هوش مصنوعی صحبت کنه. روشی که به هوش مصنوعی بگوییم چه میخواهیم و چگونه میخواهیم، و معمولاً اطلاعات ورودی از سمت ما میتونه به شکل یک پیام متنی، مجموعهای از کلمات کلیدی یا سایر اشکال راهنمایی باشه.
پرامپت یا اعلان کردن (Prompting) به فرآیند ارائه ورودی (یا راهنمایی) به یک مدل زبان مانند ChatGPT، به منظور دریافت بهترین خروجی اشاره دارد. از تولید محتوای جدید تا بهینهسازی محتوا مانند خلاصه کردن متن یا ویرایش خودکار ویدیو و تصاویر، همچنین تکنیکی برای تاثیرگذاری بر سبک و نوع محتوا خروجی است.
به عبارت دیگر راهی جهت کنترل خروجی به شکل تولید محتوایی خاص برای ما. مثلا میخواهیم تصویری داشته باشیم دقیقا همونطوری که با یک هنرمند و متخصص صحبت میکنیم و آنچه را که میخواهیم با بهترین کلمات و حتی طرح اولیه برای او شرح میدهیم تا منجر به رسیدن به بهترین و مرتبطترین خروجی یعنی همون تصویر مد نظر ما بشه. (ممکنه نیاز باشه نام یک هنرمند، اثر هنری، سبک نقاشی و مواردی از این دست را در ورودی مشخص کنیم. علاوه بر این، ممکنه نیاز باشه برخی از اصطلاحات فنی در زمان ارسال پیام ورودی یا همان رخداد «Prompt» درج بشه.)
مهندس پرامپت ایده شما را به کلماتی که هوش مصنوعی میتونه بفهمه ترجمه میکنه (سادش میشه مترجم بین زبان انسان و زبان هوش مصنوعی). مهندسی پرامپت وظیفه یافتن دستوری است که بهترین نتایج را از هوش مصنوعی میگیره. هدف مهندس پرامپت استفاده درست از عبارات و کوئریها و همینطور بهینهسازی آنها (در جهت فراهم کردن بهترین توصیف و شرح )به عنوان داده ورودی مناسب برای الگوریتمهای هوشمصنوعی است تا منجر به تولید نتیجه دلخواه و مطلوب بشه.
همانطور که در زمان جستجو در گوگل یک فرد متخصص نسبت به یک فرد عادی از عبارات و تکنیکهای بهتری استفاده میکنه و در نتیجه به نتایج خاص و دقیقتری میرسه. این کار اجازه میده تا نتیجه تولید شده هدفمندتر و مفیدتر در مقایسه با یک پیام تصادفی باشه.
۱- آشنایی با مدل زبانی (مثلا چت جی پی تی) که مورد استفاده قرار میدیم . این شامل درک تواناییها، محدودیتها و انواع اعلانهایی است که میتونه به آنها پاسخ بده.
۲- آزمون و خطا: انواع مختلف اعلانها برای آزمایش اینکه مدل چگونه به آنها پاسخ میده.
۳- درک زمینه و مفهوم برای ایجاد پاسخهای دقیق و مناسب، درک بستری که خروجی تولید شده در اون استفاده خواهد شد، مهمه، که این شامل درک مخاطب، مورد استفاده، و هرگونه الزام یا محدودیت خاص است.
۴- تنظیم دقیق مدل: یعنی مدل را با استفاده از انواع خاصی از دستورات، آموزش بدیم.
۵- ارزیابی و نظارت: برای اطمینان از اینکه مدل پاسخهای دقیق و مناسب ایجاد میکنه، ارزیابی متن تولید شده و نظارت بر عملکرد مدل در طول زمان مهم است.
۶- یادگیری مستمر، ارزیابی و انطباق: همانطور که از مدل استفاده میشه، ادامه نظارت و تنظیم دقیق اون مهم خواهد بود. این میتونه شامل ارائه دادههای جدید، تنظیم پارامترها یا آموزش مجدد اون در کارهای جدید باشه.
- بذر (Seed): یک قطعه متن که به موضوع یا کار مورد نظر مرتبط است (شرح کلی از موضوع)
- دستورات شرطی: مشخص کردن شرایط یا نیازهای خاص (مثلا محتوا در حد ۳۰۰ کاراکتر باشه)
- واژههای خاص: مثلا کلمات کلیدی
- کدهای کنترلی: مثلا کدهایی که میتوان برای تنظیم طول و قالب متن تولید شده استفاده بشه یا تعیین کنه که متن باید در یک سبک خاص نوشته بشه
- پرامپتهای خاص برای تنظیم دقیق: مثلا استفاده از پرامپتهای مرتبط با موضوع مورد نظر به عبارتی کالیبره کردن
- قالببندی خاص: استفاده از لیستهای شمارهدار میتونه به مدل کمک کنه تا متن را در قالب ساختاری ترتیب دار تولید کنه
- پرسونای خاص: مثلا شامل مشخصههای سن، جنسیت، شغل و … که میتونیم از آنها برای راهنمایی مدل به تولید متنی همسان با یک شخصیت یا پرسونای خاص استفاده کرد
- زبان خاص: مثلا اگر میخواهید متن را به زبان فرانسه تولید کنید، میتونید کلمه “فرانسه” را در پرامپت اضافه کنید، بنابراین با ایجاد دقیق دستورهایی که مختص یک کار یا موضوع خاص هستند، میتونیم خروجی دقیقتر، مفیدتر و مرتبطتری تولید کنیم.
مهندسی پرامپت، یک باید در عصر جدید محسوب میشود.