Токен хэмнэх гэж яваад 2 дахин алддаг парадокс: GitHub AI кодинг агентын зардлыг хэрхэн бууруулж байгаагаа дэлгэлээ
AI кодинг агентууд (coding agents) зөвхөн код нөхөж бичихээс гадна код сангийн бүтцийг шинжлэх, терминал дээр тест ажиллуулах, build алдааг засварлах зэрэг цогц даалгавруудыг өөрөө бие даан гүйцэтгэдэг болоод байна. Гэвч багуудын өмнө нэгэн том саад тулгарсан нь: LLM-ийн токен зардал ба хоцролт (latency).
Олон хөгжүүлэгчид болон стартапууд уг зардлыг танахын тулд агент руу дамжуулж буй багажийн гаралт (терминал, build log, test runner output)-ыг аль болох богиносгож, цөөлөх замаар токен хэмнэхийг хичээдэг. Гэтэл GitHub-ийн инженерийн баг бодит хөгжүүлэлтийн туршилт дээр үндэслэн нэгэн сонирхолтой судалгаа нийтэллээ: Нэг удаагийн дуудалтын токеныг хэт хэмнэх гэж оролдох нь даалгаврыг бүхэлд нь шийдэх нийт зардлыг харин ч эсрэгээрээ огцом өсгөдөг ажээ.
Токен тайрагч "Killer"-уудын уналт
GitHub Copilot-ийн баг офлайн бенчмарк болон онлайн туршилтууддаа Rust Token Killer (RTK) зэрэг олон нийтэд өргөн тархсан агрессив шахагч хэрэгслүүдийг туршиж үзжээ. Эдгээр хэрэгсэл нь npm install, багц угсралт (build), тест болон линтингийн нүсэр логуудыг хэдхэн мөр болгон цөөлж хасдаг.
Нэг харвал API дуудалт бүрийн токен зардал буурсан мэт санагдана. Гэвч бодит үр дүн нь эсрэгээрээ байв:
- Харалган агент ба Re-query төөрөгдөл: Гаралтыг хэт тайрснаас болж агент алдааны гол шалтгаан (root cause)-ыг олж харах боломжгүй болжээ. Үр дүнд нь агент алдаагаа оношлох гэж дахин дахин команд ажиллуулж, өөр файлуудыг ухаж, загвар луу дахин дахин prompt илгээсээр байв.
- Нийт зардлын өсөлт: Ганц дуудалт дээр 300 токен хэмнэсэн ч, асуудлаа шийдэж чадахгүй 5-6 нэмэлт алхам хийснээр нийт даалгаврын хугацаа (end-to-end task latency) уртасч, хуримтлагдсан токен зардал харин ч 2 дахин өссөн байна.
GitHub-ийн дүгнэлтээр: Хамгийн хямд токен бол даалгаврыг эхний оролдлогоор л зөв шийдэж чадсан тэр контекст юм.
Зөв арга барил: Бүхэл даалгаврын хэмжүүр (Whole-Task Accounting)
GitHub энэхүү сургамжаас үүдэн Copilot агент дээрээ хэд хэдэн чухал архитектурын шинэчлэл хийснээ танилцууллаа:
1. Selective Output Compression (Сонгомол шахалт)
Мэдээллийг бүхэлд нь тасдаж хаяхын оронд давхардсан, ач холбогдолгүй хэсгийг л ялгаж цэвэрлэх арга барил. Жишээ нь, сангаас багц татаж буй 100 мөр дараалсан прогресс баарыг хасах ч, сангийн хувилбарын зөрчил үүссэн 2 мөр эсвэл stack trace-ийн гол хэсгийг бүрэн эхээр нь хадгалж үлддэг. Ингэснээр загварын ойлгох чадвар буурахгүй.
2. Зааврын урт биш, хатуу бүтэц
Prompt-ийг үгчлэн богиносгох нь агентыг дүрэм журмаа мартахад хүргэдэг. Үүний оронд загварт өгөх дүрмийг илүү саруул бүтэцтэй болгож, урт тайлбарын оронд баталгаажуулалтын алхмуудыг тодорхой болгож өгсөн байна.
3. Нэмэлт Retrieval хийлгүйгээр шууд дамжуулах
Өмнө нь арын горимд (background) ажилласан даалгаврын үр дүнг агент эргэж нэмэлт API-аар дуудаж авдаг байсан нь токен болон хугацаа ихээр үрдэг байв. Одоо үүнийг шууд агентын урсгалд шаардлагатай үед нь автоматаар багцлан нийлүүлдэг болгожээ.
Хөгжүүлэгчид өөрсдийн агентыг бүтээхдээ юу анхаарах ёстой вэ?
Хэрэв танай баг Cursor-ийн custom rule, Claude Code, эсвэл LangChain/LlamaIndex ашиглан дотоод кодинг туслах хэрэгслүүд хөгжүүлж байгаа бол дараах 3 зүйлийг санах хэрэгтэй:
- Per-call зардалд бүү хуурт: Нэг prompt-ийн зардлыг биш, нэг Issue эсвэл PR-ийг бүрэн шийдэж дуусталх (End-to-End) нийт токен болон хугацааг үндсэн хэмжүүрээ болго.
- Контекстийг хайрла: Түүхий өгөгдлийг (raw logs) устгах нь амархан боловч, алдааны гол шинж тэмдгийг хамт устгаснаар агентаа сохолж байна гэсэн үг. Regex эсвэл хөнгөн загвараар зөвхөн хог мэдээллийг шүүх шүүлтүүр (selective filter) бичих нь оновчтой.
- Зэрэгцээ агентуудыг удирдах: GitHub-ийн зүгээс мөн нэг нүсэр даалгаврыг олон жижиг мэргэшсэн агентуудад хуваарилж өгөх нь төөрөгдлийг багасгаж, зардлыг үлэмж хэмжээгээр хэмнэдэг болохыг зөвлөж байна.
AI хэрэгслүүд чатбот байхаа больж, бие даасан хөгжүүлэгч агентын түвшинд шилжиж буй өнөө үед токен хэмнэлт бол зүгээр нэг мөнгөний асуудал биш, харин системийн архитектурын гол үндэс болон хувирчээ.
Эх сурвалж: The GitHub Blog, "How we make AI coding more cost efficient without sacrificing task quality"
Сэтгэгдэл
Ачаалж байна...