Spotify AI кодинг агентын токен зарцуулалтыг 90% бууруулсан нь: "Хоёр загварт чиглүүлэгч" архитектур
Сүүлийн үед программ хангамжийн багуудын дунд Claude Code, Cursor, Codex зэрэг терминал ба IDE түвшний AI кодинг агентууд ажлын салшгүй хэсэг болсон. Гэвч үүнийг дагаад нэгэн том толгойны өвчин үүссэн нь сар бүрийн токен төлбөрийн тэсрэлт юм. Компаниудын сарын төсөв нэг хөгжүүлэгчид хэдэн зуугаас хэдэн мянган ам.доллароор хэмжигдэж эхэллээ.
Энэхүү тулгамдсан асуудлыг шийдвэрлэхээр Spotify-ийн платформ инженерийн баг өөрсдийн туршилт, судалгааны үр дүнг Hacker News болон албан блогтоо дэлгэж, технологийн ертөнцөд ихээхэн хэлэлцүүлэг өрнүүллээ. Тэдний хөгжүүлсэн "Хоёр загварт чиглүүлэгч" (Two-Model Router / Shunt) хандлага нь Claude Code-ийн токен хэрэглээг даруй 90 хувиар бууруулж чадсан байна.
Хамгийн сонирхолтой нь: Энэхүү архитектурыг ямар ч тусгай төлбөртэй платформгүйгээр өөрийн кодын орчинд шууд хэрэгжүүлэх боломжтой юм.
Гол асуудал: AI агент "сэтгэхэд" биш, "I/O"-д токеноо үрдэг
Spotify-ийн бүтээгдэхүүний захирал Димитри Мазмановын (Dimitri Mazmanov) онцолсноор:
"AI кодинг агентуудын хийдэг ажлын дийлэнх нь нарийн логик сэтгэлгээ (reasoning) биш, ердөө л файл унших болон хуулах I/O (Input/Output) үйлдэл байдаг."
Хөгжүүлэгч нэг л функцийн талаар асуулт тавихад Claude Code эсвэл бусад агент уг төслийн 5–10 том файлыг эхнээс нь дуустал бүрэн уншдаг. Эсвэл өмнөх 20 файлтай яг ижил загвартай 21 дэх boilerplate тест файлыг үүсгэдэг.
Үүний үр дүнд Anthropic-ийн Sonnet, Opus эсвэл OpenAI-ийн үнэтэй Frontier загварууд ямар ч гүнзгий бодол шаардагдахгүй, хэдэн арван мянган энгийн мөрийг контекстдээ ачаалж, оролт/гаралтын өндөр өртөгтэй токенийг асар хурдтайгаар "галдан шатаадаг" байна. Энгийн хуулж бичих ажилд хамгийн өндөр цалинтай архитекторчийг цагийн үнэлгээгээр нь ажиллуулж байгаатай л ижил юм.
Spotify үүнийг хэрхэн шийдсэн бэ? "Shunt" плагин ба AiKA Modes
Spotify энэ асуудлыг шийдэхийн тулд өөрсдийн дотоод хөгжүүлэгчийн портал (Portal by Spotify) дээрх AiKA Modes-ийг ашиглан Claude Code-д зориулсан shunt хэмээх ухаалаг плагин туршжээ.
Энэхүү загварын механизм нь гурван үндсэн зарчим дээр тулгуурладаг:
[Хөгжүүлэгчийн хүсэлт]
│
▼
[Claude Code (Үндсэн загвар)]
│
├─ Файл унших үйлдэл (PreToolUse Hook) ──> [Хэмжээ шалгах: > 350 мөр?]
│ │
│ ┌───────────────────────────────────────┘
│ ▼ (Тийм бол: Shunt барив)
│ [bulk-reader Mode (Хямд загвар: Gemini 2.5 Flash)]
│ │
│ ▼
│ Зөвхөн хэрэгтэй хураангуй / AST мэдээллийг буцаана
│ │
▼ ▼
[Эцсийн өндөр түвшний шийдэл, архитектур боловсруулах]
1. Hook ашиглан том I/O үйлдлийг замаас нь таслах
Claude Code нь үйлдлээ хийхийн өмнө PreToolUse hook дууддаг. Хэрэв агент ReadFile команд эсвэл bash-ээр (cat, head, tail) файл унших гэж оролдвол тохируулсан зааг буюу босго (жишээ нь SHUNT_MIN_LINES=350) давсан эсэхийг hook шалгана. Хэрэв файл 350-аас дээш мөртэй бол шууд уншихыг хориглож, даалгаврыг хямд туслах агент руу чиглүүлдэг.
2. Хоёр тусгай төлөв (AiKA Modes)
Чиглүүлэгч нь ажлыг үндсэн хоёр төлөвт хуваарилдаг:
- Mode 1:
bulk-reader— Олон тооны эсвэл том файлуудыг уншиж анализ хийх ажил. Үүнийг нэг сая токен нь хэдхэн цент байдаг хямд бөгөөд хурдан загварт (жишээ нь: Gemini 2.5 Flash, DeepSeek эсвэл локал загвар) даалгана. Уг загвар нь файлын зөвхөн хамааралтай интерфейс, функцийн бүтэц, шаардлагатай кодын хэсгийг хураангуйлан гаргаж, Claude Code-д өгнө. - Mode 2:
code-writer— Нэгэнт гаргасан архитектурын дагуу давтагдсан boilerplate код, нэгжийн тест (unit test) үүсгэх ажлыг мөн хямд загварт даалгана. Шинээр бичигдсэн код нь үнэтэй Frontier загварын гаралтын токен болж үрэгдэхгүйгээр шууд диск рүү (disk I/O) бичигдэн хадгалагддаг.
Үр дүн ямар байв?
Spotify-ийн инженерүүд өөрсдийн Java monorepo төсөл дээр бодит 4 хувилбараар харьцуулсан тест хийсэн байна:
- Токен хэмнэлт: Том хэмжээний код унших (
bulk-read) үйлдэлд токен зарцуулалт дунджаар 90 хувиар буурчээ. - Гаралтын зардал (Output tokens): Boilerplate код бичих үед үнэтэй загвар зөвхөн төлөөлөн шилжүүлэх (delegation) ганц командыг дууддаг тул гаралтын токений зардал хамгийн доод хэмжээнд хүрсэн байна.
- Хурд ба хүчин чадал: Үндсэн агент асар урт кодын контекстоор "бохирдоогүй" учир анхаарал сарних (context degradation) асуудалгүй болж, үндсэн асуудлаа илүү оновчтой шийдвэрлэх боломж бүрдсэн байна.
Үүнийг өөрийн төсөлдөө хэрхэн хэрэгжүүлэх вэ? (Таны аваад ашиглах загвар)
Энэхүү шийдлийг хэрэгжүүлэхийн тулд Spotify-ийн ажилтан байх, эсвэл тэдний дотоод платформыг ашиглах албагүй. Архитектурын гол санаа нь ердөө: "Frontier загварыг архитекторч болгож, хямд загваруудыг бичээч/уншигч болгох" юм.
Та өөрийн төсөлдөө дараах 3 алхмаар нэвтрүүлж болно:
- Agent Tool Hook тохируулах: Claude Code эсвэл дурын кодинг агентын CLI тохиргоонд өөрийн bash/node скриптийг Tool Interceptor болгон залгах.
- Хямд worker холбох: Curl эсвэл хөнгөн SDK-ээр дамжуулан Google-ийн Flash цуврал, Groq дээрх LLaMA, эсвэл орон нутгийн Ollama зэрэг загварыг дуудах энгийн CLI бичих.
- Контекстийн гэрээ (Contract) үүсгэх: Туслах загварт "Бүх кодыг түүхийгээр нь бүү буцаа. Зөвхөн шаардлагатай type definitions, method signatures болон логикийн гол мөрүүдийг буцаа" гэсэн strict prompt өгөх.
Анхаарах сул тал, эрсдэл бий юу?
Энэ хандлага нь бүх зүйлд төгс биш:
- Давхар хоцролт (Latency): Өөр загварыг дуудаж, хариуг нь хүлээх нэмэлт сүлжээний roundtrip үүсдэг.
- Мэдээлэл алдагдах магадлал: Хямд загвар кодоос ямар нэг нарийн логик эсвэл захын тохиолдлыг (edge case) дутуу хураангуйлбал, үндсэн Frontier загвар дутуу мэдээлэл дээр үндэслэн буруу код бичих эрсдэлтэй.
Гэсэн хэдий ч AI кодинг хэрэгслүүд энгийн туслахаас бүрэн бие даасан систем рүү шилжиж буй өнөө үед токен болон дэд бүтцийн зардлыг удирдах нь хөгжүүлэгч, багийн ахлах бүрийн зайлшгүй анхаарах ур чадвар болж байна.
Эх сурвалж:
- Spotify Engineering: "Portal by Spotify cut my Claude Code token usage by 90%" (Dimitri Mazmanov)
- Hacker News Engineering Discussion & SaaSCity Architecture Analysis: "Spotify Cut Claude Code Token Costs 90% With a Two-Model Router"
Сэтгэгдэл
Ачаалж байна...