یک دستور کوتاه و مبهم میتواند پاسخی کلی و معمولی تولید کند؛ درحالیکه همان درخواست، اگر با ساختار درست نوشته شود، میتواند خروجی بسیار دقیقتر و کاربردیتری ایجاد کند.
در این مقاله یاد میگیریم چگونه یک پرامپت حرفهای را از صفر بسازیم.
پرامپت چیست؟
پرامپت همان دستوری است که به یک مدل هوش مصنوعی میدهید تا بر اساس آن کاری انجام دهد.
برای مثال:
یک متن درباره بازاریابی بنویس.
این یک پرامپت است، اما اطلاعات چندانی درباره خروجی موردنظر در اختیار ChatGPT قرار نمیدهد.
حالا آن را دقیقتر کنیم:
تو یک متخصص بازاریابی دیجیتال هستی. یک مقاله ۱۰۰۰ کلمهای درباره تأثیر شبکههای اجتماعی بر فروش کسبوکارهای کوچک بنویس. متن برای صاحبان کسبوکار نوشته شود، لحن آن ساده و آموزشی باشد و در پایان ۵ راهکار عملی ارائه بده.
در نسخه دوم، مدل اطلاعات بسیار بیشتری درباره کاری که باید انجام دهد دریافت کرده است.
یک پرامپت خوب از چه بخشهایی تشکیل میشود؟
لازم نیست هر پرامپتی تمام این بخشها را داشته باشد، اما معمولاً هرچه مسئله پیچیدهتر باشد، مشخص کردن این موارد نتیجه بهتری میدهد:
۱. نقش یا تخصص
ابتدا مشخص کنید ChatGPT قرار است از چه زاویهای به مسئله نگاه کند.
مثلاً:
تو یک متخصص سئو هستی.
یا:
بهعنوان یک ویراستار حرفهای فارسی عمل کن.
این بخش به مدل کمک میکند چارچوب مناسبی برای پاسخ انتخاب کند.
۲. وظیفه
دقیقاً بگویید چه کاری باید انجام شود.
بهجای:
درباره این موضوع بنویس.
بگویید:
این متن را خلاصه کن و ۵ نکته اصلی آن را به صورت فهرست استخراج کن.
هرچه فعل اصلی درخواست دقیقتر باشد، احتمال دریافت خروجی موردنظر بیشتر میشود.
۳. زمینه و اطلاعات لازم
اگر ChatGPT اطلاعات کافی درباره مسئله نداشته باشد، مجبور است بخشی از آن را حدس بزند.
مثلاً اگر میخواهید برای سایت خودتان مقاله بنویسید، اطلاعاتی مثل مخاطب، موضوع سایت و هدف مقاله را در اختیار مدل قرار دهید.
مثلاً:
مخاطبان این مقاله صاحبان کسبوکارهای کوچک هستند و هدف مقاله آموزش استفاده عملی از ابزارهای هوش مصنوعی است.
۴. فرمت خروجی
این قسمت یکی از مهمترین بخشهای پرامپت است.
اگر خروجی خاصی میخواهید، آن را مشخص کنید.
مثلاً:
پاسخ را در قالب جدول ارائه کن.
یا:
پاسخ را در ۵ بخش با تیترهای H2 بنویس.
یا:
برای هر مورد، ابتدا توضیح کوتاه و سپس یک مثال ارائه بده.
اگر فرمت را مشخص نکنید، مدل خودش تصمیم میگیرد پاسخ را چگونه ارائه کند.
۵. محدودیتها
گاهی چیزی که نمیخواهید مدل انجام دهد به اندازه چیزی که میخواهید انجام دهد اهمیت دارد.
مثلاً:
از کلیگویی خودداری کن.
از اصطلاحات تخصصی بدون توضیح استفاده نکن.
مقدمه طولانی ننویس.
اطلاعاتی که در متن ارائه شدهاند را بدون دلیل تغییر نده.
این محدودیتها میتوانند خروجی را بسیار کنترلشدهتر کنند.
فرمول ساده ساخت پرامپت
برای شروع میتوانید از این ساختار استفاده کنید:
نقش + وظیفه + زمینه + خروجی موردنظر + محدودیتها
برای مثال:
تو یک متخصص سئو هستی. برای یک سایت فارسی درباره هوش مصنوعی، ۱۰ ایده مقاله پیدا کن. مخاطبان سایت کاربران مبتدی هستند. برای هر ایده، یک عنوان، کلمه کلیدی اصلی و توضیح ۵۰ کلمهای ارائه بده. عنوانها باید مشخص و کاربردی باشند و از عناوین کلی مثل «همه چیز درباره هوش مصنوعی» استفاده نکن.
این پرامپت بهمراتب دقیقتر از این درخواست است:
برای سایت من چند مقاله درباره هوش مصنوعی پیشنهاد بده.
یک مثال؛ پرامپت ضعیف در مقابل پرامپت دقیق
فرض کنیم میخواهیم از ChatGPT برای نوشتن کپشن اینستاگرام استفاده کنیم.
پرامپت ضعیف:
برای این محصول کپشن بنویس.
پرامپت بهتر:
برای یک فروشگاه اینترنتی، کپشن اینستاگرام برای معرفی یک ماگ سرامیکی بنویس. مخاطبان ۲۰ تا ۳۵ ساله هستند. لحن صمیمی و کوتاه باشد. روی طراحی محصول و مناسب بودن آن برای میز کار تمرکز کن. کپشن حداکثر ۸۰ کلمه باشد و در پایان یک دعوت به اقدام کوتاه داشته باشد.
تفاوت اصلی این دو پرامپت در «هوشمندتر بودن» مدل نیست؛ در مقدار و کیفیت اطلاعاتی است که به مدل دادهایم.
آیا باید همیشه پرامپتهای خیلی طولانی بنویسیم؟
خیر.
یکی از اشتباهات رایج این است که تصور کنیم هرچه پرامپت طولانیتر باشد، حتماً بهتر است.
هدف، دقت بیشتر است، نه صرفاً تعداد کلمات بیشتر.
اگر یک سؤال ساده دارید، احتمالاً چنین چیزی کافی است:
این متن را در ۳ جمله خلاصه کن و مهمترین نتیجه آن را هم بگو.
اضافه کردن دهها دستور غیرضروری به چنین درخواستی فقط پرامپت را پیچیدهتر میکند.
بنابراین بهجای «پرامپت طولانی»، دنبال پرامپت دقیق باشید.
از مثال برای کنترل خروجی استفاده کنید
یکی از روشهای بسیار کاربردی، نشان دادن نمونه خروجی موردنظر است.
مثلاً:
برای هر محصول یک توضیح کوتاه بنویس. ساختار خروجی دقیقاً شبیه این نمونه باشد:
نام محصول: ...
توضیح: ...
مناسب برای: ...
وقتی نمونه مشخصی ارائه میکنید، مدل راحتتر میتواند الگوی موردنظر شما را تشخیص دهد.
اگر پاسخ ChatGPT اشتباه بود چه کنیم؟
لازم نیست همیشه پرامپت را از ابتدا بنویسید.
میتوانید مشکل پاسخ قبلی را دقیقاً توضیح دهید.
مثلاً:
پاسخ قبلی بیش از حد کلی بود. آن را دوباره بنویس، اما این بار برای هر ادعا یک مثال واقعی ارائه کن و از توضیحات عمومی خودداری کن.
یا:
ساختار خوب است، اما لحن بیش از حد رسمی است. همان محتوا را با لحن ساده و محاورهای بازنویسی کن.
در واقع کار با مدلهای زبانی معمولاً یک فرآیند یکمرحلهای نیست. شما خروجی را بررسی میکنید، مشکل را مشخص میکنید و دستور بعدی را بر اساس همان مشکل اصلاح میکنید.
یک قالب آماده برای ساخت پرامپت
اگر نمیدانید از کجا شروع کنید، میتوانید از این Template استفاده کنید:
نقش: تو یک [تخصص/نقش] هستی.
وظیفه: [دقیقاً بگو چه کاری باید انجام شود].
زمینه: [اطلاعاتی که مدل برای انجام کار نیاز دارد].
مخاطب: [این خروجی برای چه کسی است؟]
فرمت خروجی: [جدول، فهرست، مقاله، کد و غیره].
محدودیتها: [مواردی که باید رعایت یا از آنها اجتناب شود].
نمونه: [در صورت نیاز، نمونه خروجی مطلوب را ارائه کن].
البته لازم نیست تمام قسمتها را در هر پرامپت استفاده کنید. بخشهایی را انتخاب کنید که واقعاً برای مسئله شما اهمیت دارند.
جمعبندی
یک پرامپت حرفهای الزاماً پر از کلمات پیچیده یا دستورهای عجیب نیست. مهمترین ویژگی آن این است که ابهام را کاهش دهد.
قبل از ارسال یک درخواست به ChatGPT، پنج سؤال از خودتان بپرسید:
دقیقاً میخواهم چه کاری انجام شود؟
ChatGPT باید از چه زاویهای به مسئله نگاه کند؟
چه اطلاعاتی برای انجام این کار لازم است؟
خروجی را در چه قالبی میخواهم؟
چه محدودیتهایی باید رعایت شوند؟
هرچه پاسخ این پنج سؤال روشنتر باشد، احتمال اینکه خروجی به چیزی که واقعاً میخواهید نزدیک شود بیشتر خواهد بود.
پرامپت آماده برای کپی
تو یک متخصص در [موضوع] هستی.
وظیفه تو این است که [وظیفه دقیق].
اطلاعات و زمینه مسئله: [اطلاعات].
خروجی برای [مخاطب] تهیه میشود.
پاسخ را در قالب [فرمت خروجی] ارائه بده.
این محدودیتها را رعایت کن: [محدودیتها].
اگر برای انجام دقیق کار اطلاعات مهمی کم است، قبل از ارائه پاسخ سؤالهای لازم را از من بپرس.