دیروز توی گروه یه اسکرینشات دیدم که مدل وسط چت یهو کدهای عجیبی مثل [control_28] رو چاپ کرد. این یعنی لایه زیرین مدل لو رفته یا همون protocol leakage... مشکل از خودِ هوشِ مدل نیست، احتمالاً موقع تبدیل مدل یا کوانتایز کردن، جای توکنهای کنترلی با متن معمولی قاطی شده.
مدل وقتی این توکنهای غلط رو میبینه، طبق عادتش شروع میکنه به تکرار کردنشون. جالب اینجاست که حتی اگه معذرتخواهی کنه و بخواد از اول بنویسه، باز هم چون حافظهش (KV cache) پر از اون توکنهای خراب شده، نمیتونه از اون لوپ بیاد بیرون. یعنی عملاً سیستم قفل میکنه روی همون اشتباه و راه فراری نداره.
واقعیت اینه که استکِ اجرای مدل (مثل vLLM یا llama.cpp) به اندازه خودِ وزنهای مدل مهمه. اگه تنظیمات توکنساز یا متادیتاها توی پروسه تبدیل ذرهای جابهجا بشه، خروجی نهایی به کل میریزه بهم. اینجور وقتها مدل داره با زبونِ فنی خودش میگه که زیرساختش ایراد داره.
تحلیل کاملتر این قضیه و دلیل این تداخلها رو توی پست لینکدینم باز کردم:
https://www.linkedin.com/pulse/debugging-control-token-leakage-m-shojaei-n07me/
🛠 Join @LLMEngineers Community
Post #405
1.28K