دما و تنظیمات مدل: چه چیزی را واقعاً کنترل می‌کنند

دما مدل را صادق‌تر یا باهوش‌تر نمی‌کند؛ فقط شکل انتخاب کلمه را عوض می‌کند. توضیح ساده‌ی temperature، top_p و طول خروجی، با مقدارهای پیشنهادی برای هر کار.

🍊 تیم نارنگی ⏱ 4 دقیقه مطالعه
نمودار توزیع احتمال کلمه‌ها در دو مقدار متفاوت دما

یک باور رایج بین کسانی که تازه با API کار می‌کنند: «دما را صفر کن تا مدل دروغ نگوید.» این جمله در ظاهر منطقی است و در عمل غلط. دما با درستی هیچ کاری ندارد.

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

دما چه کار می‌کند

مدل در هر گام یک فهرست از کلمه‌های ممکن با احتمال هرکدام می‌سازد. مثلاً بعد از «هوای امروز خیلی»: «سرد» با احتمال بالا، «گرم» کمی کمتر، «عجیب» خیلی کمتر.

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

💡 تشبیه دقیق‌تر

دما مثل درجه‌ی ریسک‌پذیری یک نویسنده است، نه سطح سوادش. نویسنده‌ی محتاط همیشه واژه‌ی امن را انتخاب می‌کند؛ نویسنده‌ی ریسک‌پذیر گاهی واژه‌ی غافلگیرکننده می‌آورد. هیچ‌کدام چیزی بیشتر از دیگری نمی‌داند.

دمای صفر یعنی درست‌تر؟ نه

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

اما اگر مدل تاریخ تأسیس یک شرکت را اشتباه بداند، در دمای صفر همان اشتباه را هر بار و با لحن مطمئن‌تری تحویل می‌دهد. جلوگیری از جواب ساختگی کار دیگری است: منبع دادن و اجازه‌ی «نمی‌دانم». این را در اشتباه‌های رایج در کار با هوش مصنوعی باز کرده‌ایم.

چه مقداری برای چه کاری

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

بالای حدود ۱٫۲ معمولاً متن شروع به از هم پاشیدن می‌کند: جمله‌ها بی‌ربط می‌شوند و در فارسی زودتر از انگلیسی خراب می‌شود.

top_p و جریمه‌ی تکرار

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

جریمه‌ی تکرار جلوی چرخیدن مدل روی یک عبارت را می‌گیرد. اگر خروجی‌تان مدام یک جمله را با کلمات دیگر تکرار می‌کند، این پارامتر کمک می‌کند — ولی زیادکردنش باعث می‌شود مدل از واژه‌های اصلی موضوع فرار کند و متن عجیب شود.

طول خروجی

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

در چت معمولی چه کنیم

در رابط‌های چت معمولاً به این پارامترها دسترسی ندارید. خبر خوب اینکه بیشتر اثرشان را می‌شود با زبان گرفت:

به‌جای دمای پایین:
«فقط یک نسخه بده. محافظه‌کارانه بنویس و از عبارت‌های
استاندارد استفاده کن. چیزی خارج از متن اضافه نکن.»

به‌جای دمای بالا:
«۱۰ ایده بده که دست‌کم سه‌تایشان غیرمنتظره باشد.
ایده‌های واضح و تکراری را حذف کن.»

این روش در عمل نزدیک به همان نتیجه می‌رسد. جزئیات بیشتر در پرامپت‌نویسی فارسی آمده و می‌توانید هر دو نسخه را در نارنگی پشت سر هم امتحان کنید.

مدل‌های استدلالی حساب جدا دارند

در مدل‌هایی که قبل از جواب دادن مرحله‌ی فکرکردن دارند، دما اغلب بی‌اثر یا محدود است و ارائه‌دهنده توصیه می‌کند دست به آن نزنید. آنجا چیزی که خروجی را عوض می‌کند، میزان تلاش استدلالی است نه تصادفی‌بودن. تفاوت خانواده‌های مدل را در مقایسه‌ی چت‌جی‌پی‌تی، جمینای و کلاد دیده‌اید؛ مقادیر دقیق پارامترها هم در مستندات رسمی API آمده است.

جمع‌بندی

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

ترتیب درست عیب‌یابی این است: اول صورت‌مسئله، بعد منبع و زمینه، و تازه در آخر پارامترها. کسانی که از پارامتر شروع می‌کنند، معمولاً وقتشان را هدر می‌دهند.

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

دما در هوش مصنوعی یعنی چه؟ +
دما عددی است که تعیین می‌کند مدل موقع انتخاب کلمه‌ی بعدی چقدر به گزینه‌های کم‌احتمال‌تر شانس بدهد. دمای پایین یعنی همیشه محتمل‌ترین گزینه، دمای بالا یعنی پراکندگی بیشتر. ربطی به میزان هوش یا دقت اطلاعاتی مدل ندارد.
اگر دما را صفر کنم، جواب‌ها دقیق‌تر می‌شوند؟ +
پایدارتر می‌شوند، نه لزوماً درست‌تر. اگر مدل چیزی را اشتباه بداند، در دمای صفر همان اشتباه را با اطمینان و هر بار یکسان تکرار می‌کند. دقت اطلاعاتی از منبعی می‌آید که به مدل می‌دهید، نه از این عدد.
در چت معمولی می‌توانم دما را تغییر بدهم؟ +
در بیشتر رابط‌های چت، نه — این پارامتر در سطح API در دسترس است. در گفت‌وگوی معمولی همان اثر را با زبان بگیرید: «فقط یک نسخه بده، بدون تنوع» یا «ده گزینه‌ی متفاوت و جسورانه بنویس».
فرق دما با top_p چیست؟ +
هر دو تصادفی‌بودن خروجی را کنترل می‌کنند اما از دو راه: دما توزیع احتمال را تخت یا تیز می‌کند، top_p دامنه‌ی گزینه‌ها را به آن‌هایی محدود می‌کند که مجموع احتمالشان به حد تعیین‌شده برسد. توصیه‌ی رایج این است که فقط یکی را تغییر بدهید.
چرا با یک پرامپت هر بار جواب متفاوتی می‌گیرم؟ +
چون نمونه‌برداری از کلمه‌ی بعدی به‌صورت تصادفی انجام می‌شود و دمای پیش‌فرض معمولاً صفر نیست. حتی با دمای صفر هم تفاوت‌های جزئی ممکن است پیش بیاید، چون محاسبات روی سخت‌افزار دقیقاً تکرارپذیر نیستند.
#دما در هوش مصنوعی #temperature مدل زبانی #top_p #تنظیمات مدل هوش مصنوعی #خروجی تصادفی مدل
به‌دردِ کسی می‌خورد؟ تلگرام واتساپ
🍊

خواندنش خوب بود — حالا امتحانش کن

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

بدونِ نصب هم کار می‌کند — ولی در اپ سریع‌تر است