اگر ساعتها وقت صرف تنظیم دقیق پارامترهای مدل خود کردهاید، احتمالاً متوجه شدهاید که این تنظیمات هنگام انتقال به یک سرویسدهنده دیگر، دیگر کار نمیکنند. یک تحلیل فنی که در ۳۱ اوت ۲۰۲۶ منتشر شد، فاش میکند که پشتههای نرمافزاری رایج، پارامترهای نمونهگیر را با توالیهای متفاوتی اجرا میکنند و همین موضوع باعث میشود سه عدد یکسان، نتایج کاملاً متفاوتی ایجاد کنند.
این وضعیت شبیه دو دستور پخت غذاست که از مواد اولیه یکسانی استفاده میکنند اما ترتیب اضافه کردن آنها متفاوت است؛ در نهایت طعم غذا تغییر میکند. در فرآیند استنتاج (Inference) — که لحظهای است که مدل واقعاً جواب تولید میکند، مثل خودِ آشپزی و نه دورهی آموزش آشپز — ترتیب عملیات برای Temperature، Top-p و Top-k تعیین میکند که مدل دقیقاً کدام توکنها را برای تولید متن در نظر بگیرد. در این راستا، درک درست از عملکرد این پارامترها ضروری است، چرا که تنظیمات Temperature در مدلهای زبانی لزوماً ابزاری برای افزایش خلاقیت نیستند و بیشتر بر توزیع احتمالات اثر میگذارند.
به نقل از گزارش dev.to، در پشتههای نرمافزاری فعلی دو ترتیب اجرای اصلی وجود دارد:
- ترتیب الف: Temperature $\rightarrow$ top_k $\rightarrow$ top_p
- ترتیب ب: top_k $\rightarrow$ top_p $\rightarrow$ temperature
پارامتر Temperature توزیع احتمالات را تغییر مقیاس میدهد، در حالی که نمونهگیری هستهای (Top-p) آن را بر اساس جرم تجمعی قطع میکند. اگر Temperature اول اجرا شود، جرمی را که Top-p اندازهگیری میکند تغییر میدهد. اما اگر آخر اجرا شود، Top-p ابتدا توزیع خام را برش میزند. نویسنده این گزارش با بررسی ۲۶,۲۰۸ سلول و ۷۰۳,۹۲۱ ادعا ثابت کرد که این دو مسیر، توابع ریاضی متفاوتی هستند.
همانطور که در تحلیلهای قبلی ما دربارهی بهینهسازی پرامپتها اشاره کردیم، ثبات در خروجی مدلها کلید اتوماسیون است. اما این تفاوت در ترتیب اجرا، ریسک بزرگی برای توسعهدهندگانی ایجاد میکند که تنظیمات «تأیید شده» را از وبلاگها کپی میکنند یا سعی در بازتولید مقالات پژوهشی دارند. چون مدل همچنان متنی پذیرفتنی تولید میکند، این شکست «خاموش» است؛ یعنی سیستم کرش نمیکند، بلکه شما صرفاً مجموعهای از توکنها را دریافت میکنید که با قصد تنظیمکننده اصلی متفاوت است.
بر اساس مستندات این تحلیل، برای متخصصان این بدان معناست که تنظیمات نمونهگیر فقط در یک پیادهسازی خاص قابل انتقال هستند. برای تضمین ثبات، باید با این پارامترها به عنوان متغیرهای وابسته به پشته برخورد کنید، نه ثابتهای جهانی.
گام بعدی شما
- تنظیمات مدل خود را هنگام تغییر ارائهدهنده (مثلاً از OpenAI به Anthropic یا مدلهای محلی) مجدداً کالیبره کنید.
- از ابزار بررسی ترتیب نمونهگیر در سایت dev48.infy.uk برای مشاهده تغییر توکنها در لحظه استفاده کنید.
- در مستندات فنی سرویسدهنده خود، ترتیب اجرای Samplerها را جستوجو کنید.
اما این تفاوتهای ریاضی تنها بخشی از چالش است؛ تأثیر کوانتش وزنها بر دقت استنتاج حتی پیچیدهتر است که در گزارش بعدی بررسی خواهیم کرد.




گفتگو