کدِ LLMها چرا اینقدر توکن میسوزونه
خلاصهٔ کاملتر
نویسنده، Jim، میگه بعد از یه سال کار با Claude متوجه شده بیشترِ هزینهٔ توکنِ خروجی از یه جای مشخص میاد: مدل بهجای APIهایی که خودِ پلتفرم وب سالهاست فراهم کرده، الگوهای قدیمی Node.js رو تولید میکنه. علتش اینه که دادهٔ آموزشیِ مدل پر از کدهای قدیمی مثل require('url')، querystring.parse() و axiosه، پس همونها رو اول پیشنهاد میده.
به گفتهٔ اون، رانتایمهایی مثل Deno و Cloudflare Workers همون آبجکتهای مرورگر—URL، fetch، FormData، Headers و بقیه—رو بهصورت بومی دارن، پس یه سطح API واحد هم سمت مرورگر و هم سمت سرور کار میکنه. مشکل اینه که مدل این رو دربارهٔ محیط تو نمیدونه مگه اینکه بهش بگی. چون هر توکن خروجی سه تا پنج برابرِ توکن ورودی خرج داره، این فاصله مستقیم روی هزینه اثر میذاره.
مثلاً برای پارسکردن پارامترهای کوئری، مدل بهطور پیشفرض حدود ۱۴۰ توکن کدِ دستی تولید میکنه، در حالی که نسخهٔ بومی فقط حدود ۱۲ توکنه—یعنی حدود ۹۰٪ کمتر:
const params = Object.fromEntries(new URL(rawUrl).searchParams);به گفتهٔ نویسنده، نسخهٔ دستی با کلیدهای خراب بیصدا شکست میخوره، مقدارهای تکراری رو از دست میده و اگه کلید proto باشه یه مسیر برای آلودگیِ پروتوتایپ (prototype pollution) بازه؛ ولی نسخهٔ بومی همهشو طبق استاندارد مدیریت میکنه.
نکتهٔ مهم اینه که رفتن سراغ APIهای بومی فقط توکن کم نمیکنه، بلکه کل دستههایی از باگ رو حذف میکنه. نسخههای بومی طبق استاندارد نوشته شدن و با دهها هزار تستِ Web Platform Tests سنجیده شدن، ولی معادلِ دستسازِ مدل فقط اون چیزیو مدیریت میکنه که نویسنده اون روز بهش فکر کرده. برای همین امنیت و پایداری اینجا یه خروجیِ ساختاریه، نه یه پاورقی.
بخش دیگهٔ مقاله دربارهٔ کامنتهاست. نویسنده به یه تحقیق از MITRE (ژوئن ۲۰۲۵) اشاره میکنه که نشون داده مدلها از نیتِ کامنت پیروی میکنن، حتی وقتی با خودِ کد تناقض داره؛ یه کامنتِ قدیمی و غلط، فهم مدل رو از حالتِ بدونکامنت هم بدتر میکنه. به گفتهٔ اون، کامنت خوب باید «چرا» و محدودیتهای طراحی رو بگه، نه اینکه کار خط بعدی رو تکرار کنه. راهحلی هم که پیشنهاد میده اینه که تو پرامپت صریح اسم APIهای درست رو ببری.
نکات کلیدی:
- مدلها پیشفرض سراغ الگوهای قدیمی Node میرن، نه APIهای بومیِ وب
- APIهای بومی مثل URL و Promise.allSettled تا ۹۲٪ توکن خروجی رو کم میکنن
- توکن خروجی سه تا پنج برابرِ ورودی قیمت داره
- نسخههای بومی طبق استاندارد و امنترن؛ کد دستی پرباگه
- کامنتِ قدیمی و غلط فهم مدل رو خراب میکنه




