توی توییتر انگلیسی یه بحث جالبی راه افتاده بود که چرا حتی مدلهای اپنسورس قوی، گاهی اوقات توی دنبال کردن دستورات ساده هم فاجعهان. قضیه این نیست که مدل یه پرامپت ساده رو بفهمه. بحث سر دستورات پیچیده و چند مرحلهایه.
مثلاً به مدل بگی: «برای پاراگراف اول از قانون X استفاده کن، ولی برای پاراگراف دوم قانون Y رو اعمال کن.» اکثر مدلهای اپنسورس اینجا به هم میریزن و یا فقط قانون اول رو اعمال میکنن یا کلاً قاطی میکنن.
ریشهی این مشکل چیه؟ یه چیزی به اسم
State Tracking.یعنی مدل نمیتونه «وضعیت» (state) و قواعدی که بهش دادی رو در طول تولید متن حفظ کنه. اسم یه شخصیت رو توی داستان عوض میکنی، وسط راه یادش میره. جنسیت رو تغییر میدی، قاطی میکنه. نمیتونه context رو بین بخشهای مختلف خروجی حفظ کنه.
📉 این مشکل معماریه یا مشکل آموزش؟
یه عده سریع میپرن وسط و میگن این یه ضعف ذاتی و معماری تو مدلهای ترنسفورمره (شبیه به بحثهای
Reversal Curse که آکادمیکها دوست دارن).اما دیدگاه عملیتر و به نظر من درستتر اینه که این یه
post-training skill issue هست. یعنی مشکل از خود معماری نیست؛ مشکل از کیفیت پایین دیتا و پروسههای fine-tuning (مثل SFT و RLHF) هست. این یه مهارته که باید بعد از pre-training به مدل تزریق بشه.🎯 راه حل چیه؟
استفاده از
Reinforcement Learning (RL) با محیطهایی که مشخصاً برای تست و بهبود instruction following طراحی شدن. دقیقاً همون کاری که انتروپیک استادشه.این نشون میده چرا وقتی با مدلهای اپنسورس (مخصوصاً مدلهای کوچیکتر مثل خانواده Llama 3 8B یا Mistral 7B) کار میکنید، حس میکنید دستوراتتون رو نادیده میگیرن. این اتفاقی نیست، یه چالش اساسیه. طرف داشته با یه مدل 24B کار میکرده و دیده گند میزنه، تهش برگشته سراغ
DeepSeek v3 که ظاهراً تو این زمینه بهتر عمل میکنه.خلاصه: توانایی دنبال کردن دستورات پیچیده، یه مزیت رقابتی جدی برای مدلهای بزرگ و بستهست و یکی از دلایلی که باعث میشه حس کنیم «هوشمندترن». در حالی که صرفاً یه مهارت پایه رو بهتر و عمیقتر یاد گرفتن.
🛠 Join @LLMEngineers Community