دما و پارامترها در پرامپت‌نویسی؛ خلاقیت و دقت هوش مصنوعی را خودت تنظیم کن

⏱ زمان مطالعه: حدود ۱۰ دقیقه✏️ تمرین دارد
آموزش · پرامپت‌نویسی

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

چکیده. دما (Temperature) میزان تصادفی‌بودن انتخاب کلمه‌های مدل را تعیین می‌کند: دمای پایین یعنی جواب دقیق، قطعی و قابل‌تکرار؛ دمای بالا یعنی جواب متنوع، خلاق و گاهی پرخطا. در کنار دما، پارامترهای top_p و top_k و max_tokens و جریمهٔ تکرار و seed هم خروجی را می‌سازند. این راهنما با مثال‌های پرامپت واقعی نشان می‌دهد برای هر کار چه تنظیمی مناسب است و در رابط‌های چتی که این اهرم‌ها را در اختیارت نمی‌گذارند، چطور همان اثر را با زبان پرامپت بازسازی کنی.
توضیح مفهوم دما یا Temperature در پرامپت‌نویسی هوش مصنوعی

گام یک: دما (Temperature) چیست و دقیقاً چه می‌کند؟

هر بار که مدل می‌خواهد کلمهٔ بعدی را بنویسد، در واقع فهرستی از گزینه‌ها با احتمال‌های متفاوت پیش رو دارد؛ مثلاً بعد از «آسمان آبی» کلمهٔ «است» احتمال بالایی دارد و «می‌خندد» احتمال بسیار کمی. دما تعیین می‌کند مدل چقدر به سراغ گزینه‌های کم‌احتمال برود. دمای نزدیک صفر یعنی مدل تقریباً همیشه محتمل‌ترین گزینه را برمی‌دارد، پس جواب قطعی و قابل‌پیش‌بینی می‌شود. دمای بالا توزیع احتمال را «صاف» می‌کند، گزینه‌های بعید هم شانس انتخاب پیدا می‌کنند و خروجی غافلگیرکننده‌تر اما لغزنده‌تر می‌شود.

به زبان ساده، دما ولوم «ریسک‌پذیری» مدل است، نه ولوم «هوش» آن. دمای بالا مدل را باهوش‌تر نمی‌کند؛ فقط جسورتر و پراکنده‌تر می‌کند. اگر تازه با مفهوم پرامپت آشنا می‌شوی، بد نیست اول پرامپت‌نویسی به زبان ساده را بخوانی تا پایهٔ کار دستت باشد.

مثال: برای استخراج داده از یک متن، در پلی‌گراند یا API تنظیم می‌کنی: {"temperature": 0.2, "input": "از این ایمیل فقط نام شرکت، مبلغ فاکتور و تاریخ سررسید را به‌صورت JSON دربیاور."} — دمای پایین باعث می‌شود مدل چیزی از خودش نسازد.

گام دو: عددها را بشناس؛ سفر از صفر تا دو

بازهٔ دما بسته به سرویس فرق دارد: در خیلی از مدل‌ها بین صفر تا یک است و در بعضی سرویس‌ها مثل جمینای تا دو هم می‌رود. مقدار پیش‌فرض معمولاً حوالی ۰٫۷ تا ۱ است، یعنی حالت متعادلِ کمی خلاق. یک تقسیم‌بندی کاربردی که می‌توانی به‌خاطر بسپاری این است: صفر تا ۰٫۳ برای کارهای دقیق و واقعی مثل کد، استخراج داده و پاسخ حقوقی؛ ۰٫۴ تا ۰٫۷ برای نوشتن متعادل مثل ایمیل و مقاله؛ و ۰٫۸ به بالا برای ایده‌پردازی، شعر، شعار تبلیغاتی و طوفان فکری.

نکتهٔ مهم این است که عدد «درست» مطلق وجود ندارد؛ عددِ مناسب با هدف کار تعیین می‌شود. برای درک بهتر اینکه چرا در کارهای واقعی باید سراغ دمای پایین رفت، مرور توان و محدودیت‌های واقعی هوش مصنوعی کمک می‌کند.

مثال: همین پرامپت را دو بار اجرا کن و فقط دما را عوض کن: «ده اسم برند برای یک قهوهٔ سرد پیشنهاد بده.» با دمای ۰٫۲ اسم‌ها شبیه هم و محافظه‌کار می‌شوند؛ با دمای ۱٫۱ اسم‌ها جسور، بازیگوش و گاهی عجیب می‌شوند. همین تمرین ساده تفاوت را در عمل نشانت می‌دهد.

گام سه: top_p و top_k؛ برادرهای کمتر شناختهٔ دما

دما تنها اهرم تصادفی‌بودن نیست. پارامتر top_p (که به آن نمونه‌گیری هسته‌ای هم می‌گویند) می‌گوید مدل فقط از میان کوچک‌ترین مجموعه‌ای از کلمات انتخاب کند که مجموع احتمالشان به حد مشخصی مثلاً ۰٫۹ برسد؛ یعنی دُم بلند گزینه‌های بی‌ربط را قیچی می‌کند. پارامتر top_k هم ساده‌تر است: فقط k کلمهٔ محتمل‌تر را روی میز نگه می‌دارد و بقیه را کنار می‌گذارد.

قاعدهٔ طلایی: معمولاً فقط یکی از دما یا top_p را دستکاری کن، نه هر دو را با هم. اگر همزمان هر دو را پایین بیاوری، ممکن است جواب‌ها آن‌قدر محدود شوند که خشک و بی‌روح از آب دربیایند؛ و اگر هر دو را بالا ببری، خروجی به هم می‌ریزد. یکی را ثابت بگذار و دیگری را تنظیم کن.

مثال: برای جوابی که هم طبیعی باشد هم از ریل خارج نشود، در API می‌نویسی: {"temperature": 1.0, "top_p": 0.4} و در پرامپت تأکید می‌کنی: «طبیعی و روان بنویس اما از موضوع خارج نشو و چیزی اضافه نساز.»

گام چهار: max_tokens، جریمهٔ تکرار و seed

سه پارامتر دیگر هم هستند که اغلب نادیده گرفته می‌شوند اما نتیجه را عوض می‌کنند. پارامتر max_tokens سقف طول خروجی را تعیین می‌کند؛ اگر خیلی کم باشد، جواب وسط جمله قطع می‌شود و خیلی‌ها این را اشتباهاً به حساب «کم‌حوصلگی» مدل می‌گذارند. جریمهٔ تکرار (frequency_penalty و presence_penalty) از تکرار کلمه‌ها و چرخیدن مدل دور یک موضوع جلوگیری می‌کند و برای متن‌های بلند و خلاقانه مفید است. پارامتر seed هم اجازه می‌دهد با همان ورودی و همان seed، خروجیِ تقریباً یکسان و قابل‌بازتولید بگیری که برای تست و مقایسه حیاتی است.

مثال: برای یک پست طولانی که نباید جمله‌هایش تکراری شود: {"temperature": 0.9, "frequency_penalty": 0.5, "max_tokens": 1200} و در پرامپت: «یک مقالهٔ ۸۰۰ کلمه‌ای بنویس و از تکرار عبارت‌های کلیشه‌ای خودداری کن.»

تنظیم پارامترهای top_p و max_tokens برای کنترل خروجی مدل زبانی

گام پنج: برای هر کار چه دمایی؟ جدول تصمیم سریع

به‌جای حفظ‌کردن اعداد، کافی است نوع کار را به یکی از این سه دسته وصل کنی. این جدول کوتاه، نقطهٔ شروع مطمئنی است که بعد می‌توانی حولش تنظیم کنی:

نوع کار دمای پیشنهادی چرا
کد، استخراج داده، پاسخ واقعی و حقوقی ۰ تا ۰٫۳ دقت و قابلیت تکرار مهم‌تر از تنوع است
ایمیل، خلاصه، مقالهٔ متعادل ۰٫۵ تا ۰٫۷ کمی روانی و لحن، بدون پرت‌شدن از موضوع
ایده‌پردازی، شعار، داستان، طوفان فکری ۰٫۹ به بالا تنوع و غافلگیری ارزش بیشتری دارد

برای کارهای تجاری و تولید محتوایی که قرار است فروش بیاورد، همین انتخاب دما تفاوت می‌سازد؛ اگر می‌خواهی ببینی هوش مصنوعی در کسب‌وکار کجا واقعاً ارزش خلق می‌کند، اهمیت هوش مصنوعی در کسب‌وکار را ببین.

مثال: برای یک قرارداد: «این بند قرارداد را به زبان ساده توضیح بده. دمای ذهنت را پایین نگه دار: دقیق، بدون حدس و بدون افزودن فرض جدید.» — حتی وقتی عددی در کار نیست، همین جمله جهت را مشخص می‌کند.

گام شش: در چت بدون اهرم، دما را با کلمات بساز

اینجا مهم‌ترین نکتهٔ کاربردی است: در رابط وبِ ChatGPT و جمینای و بیشتر چت‌های عمومی، اسلایدر دما را نمی‌بینی. اما خبر خوب این است که می‌توانی اثر دما را تقریباً با زبان پرامپت شبیه‌سازی کنی. برای «دمای پایین»، به مدل بگو دقیق، قطعی و محافظه‌کار باشد و از حدس‌زدن پرهیز کند. برای «دمای بالا»، صریحاً از او تنوع، جسارت و چند گزینهٔ کاملاً متفاوت بخواه.

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

مثال: نسخهٔ دمای پایین: «با دقت بالا و بدون خلاقیت جواب بده. فقط از اطلاعاتی که دادم استفاده کن؛ اگر چیزی را نمی‌دانی بنویس نمی‌دانم.» — نسخهٔ دمای بالا: «مثل یک ایده‌پرداز جسور فکر کن و ۱۵ ایدهٔ کاملاً متفاوت و غیرمنتظره بده؛ از ایده‌های تکراری و امن پرهیز کن.»

گام هفت: اشتباه‌های رایج و راه درست

شایع‌ترین اشتباه این است که کاربر دما را برای همه‌چیز تا ته بالا می‌برد، چون فکر می‌کند جواب «کامل‌تر» می‌شود؛ در واقع فقط پراکنده‌تر و پرخطاتر می‌شود و احتمال توهم بالا می‌رود. اشتباه دوم تغییر همزمان دما و top_p است که نتیجه را غیرقابل‌پیش‌بینی می‌کند. اشتباه سوم، توقع جوابِ کاملاً یکسان در دمای بالاست؛ تصادفی‌بودن ذاتِ کار است. و اشتباه چهارم، مقصردانستن پرامپت وقتی مشکل از max_tokensِ کم یا دمای نامناسب است.

قاعدهٔ عملی: اول هدف کار را روشن کن، بعد دما را از یک نقطهٔ منطقی شروع کن و تک‌به‌تک تغییر بده تا به نتیجه برسی. این همان روش مهندسیِ پشت ساختن محصول واقعی است؛ تفاوت نگاه تفننی و نگاه مهندسی را در توهم توسعه‌دهندهٔ تنها در برابر مهندس واقعی خوب می‌شود دید.

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

جدول تصمیم انتخاب دمای مناسب برای هر نوع کار با هوش مصنوعی

گام هشت: ترکیب دما با تکنیک‌های دیگر

دما وقتی بیشترین اثر را دارد که با تکنیک‌های دیگرِ پرامپت ترکیب شود. برای کارهای استدلالی، دمای پایین را با درخواست «قدم‌به‌قدم فکر کن» ترکیب کن تا هم دقیق باشد هم منطقی. برای تولید محتوای خلاق، دمای بالا را با چند مثال از لحن دلخواهت بده تا تنوع در چارچوب سبک تو بماند. برای مقایسهٔ مدل‌ها هم دما را ثابت نگه دار تا داوری منصفانه باشد — چیزی که در رقابت‌هایی مثل نبرد شطرنجی چت‌جی‌پی‌تی و دیپ‌سیک اهمیت دارد.

به‌روز ماندن در این حوزه هم مهم است، چون سرویس‌ها مدام بازه و پیش‌فرض پارامترها را عوض می‌کنند؛ تازه‌ترین تغییرها را می‌توانی در بخش اخبار دنبال کنی.

مثال: «نقش یک تحلیلگر مالی را بگیر. قدم‌به‌قدم و با دقت بالا (بدون خلاقیت) این سه گزینهٔ سرمایه‌گذاری را مقایسه کن و در پایان یک جدول جمع‌بندی بده.»

پرسش‌های پرتکرار

آیا دمای صفر یعنی جواب همیشه کاملاً یکسان است؟ تقریباً، اما نه همیشه صددرصد. دمای صفر مدل را به انتخاب محتمل‌ترین گزینه هل می‌دهد و خروجی را بسیار پایدار می‌کند، ولی عوامل دیگری مثل به‌روزرسانی مدل می‌توانند تفاوت‌های کوچک بسازند. برای بازتولید دقیق‌تر، seed را هم ثابت کن.

در ChatGPT وب دما را کجا تنظیم کنم؟ در رابط وب معمولاً اهرم مستقیم نداری؛ اگر به پلی‌گراند یا API دسترسی داری آنجا تنظیمش کن، وگرنه با زبان پرامپت همان اثر را بساز: درخواست دقت و قطعیت برای دمای پایین، درخواست تنوع و جسارت برای دمای بالا.

دمای بالا یعنی مدل باهوش‌تر جواب می‌دهد؟ نه. دمای بالا فقط خروجی را متنوع‌تر و غیرمنتظره‌تر می‌کند؛ باهوش‌تر نمی‌کند و حتی احتمال خطا و توهم را بالا می‌برد. برای کارهای حساس، دمای پایین امن‌تر است.

✏️ تمرین

برای استخراج دقیق مبلغ و تاریخ از یک فاکتور، بهترین تنظیم دما کدام است؟



🔒

این بخش ویژهٔ اعضاست

برای دیدن این بخش باید عضو ویژه (VIP) باشی. با شمارهٔ موبایلت وارد شو تا ۱۴ روز دسترسی رایگان فعال شود.

🎁 ورود / ثبت‌نام و شروع ۱۴ روز رایگان

قبلاً عضو شده‌ای؟ فقط کافی است وارد شوی. اشتراک: از ۱۹۹٬۰۰۰ تومان / ماه
جمع‌بندی. دما و پارامترهای کنارش، اهرم‌های پنهانی هستند که پیش از هر کلمهٔ پرامپت، شخصیت جواب را تعیین می‌کنند: دمای پایین برای دقت و تکرارپذیری، دمای بالا برای خلاقیت و تنوع، و بقیهٔ پارامترها برای ریزتنظیمِ طول و تکرار و بازتولید. حتی وقتی هیچ اهرمی در اختیارت نیست، می‌توانی با زبان پرامپت همین اثر را بسازی. این درس بخشی از سری آموزش پرامپت‌نویسی Mr ChatGPT است؛ برای ادامهٔ درس‌ها و تازه‌ترین پرامپت‌ها به @MrChatGPT_IR سر بزن.

نسخهٔ فوری این مطلب در تلگرام: اینجا بخوانید

— (0 رأی)

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *