Token economy: LLM-инфраструктура за полдоллара в неделюToken economy: an LLM infrastructure for half a dollar a week
Сергей Пак · проектирует AI-операционные системы
На прошлой неделе моя система сделала 855 обращений к LLM и заплатила за них 50 центов. Ни скидок, ни грантов. Просто три правила, которые я соблюдаю без исключений.
Локальная модель по умолчанию
81% вызовов берёт на себя 9B-модель прямо на моём Mac. Она бесплатная, отвечает быстро, и данные с машины не уходят. Облако получает задачу только после того, как замер показал: маленькая модель тут не вывозит.
Вот как выглядит такой замер. Месяц я гонял облачную и локальную модели бок о бок на оценке качества текстов. Локальная всем подряд ставила 75 из 100 – одну и ту же цифру, с нулевым разбросом. Облачная же раскладывала тексты от 32 до 62 баллов. Миграцию я отменил, оценку качества оставил в облаке. А триаж, классификацию и выжимки давно отдал локальной: там разницы в качестве не нашлось.
Три правила
- Один шлюз на все вызовы. Каждое обращение к LLM идёт через единственный модуль. Он считает стоимость, подбирает модель под тип задачи и кэширует промпты. Прямой вызов API из кода автоматика ловит ещё на коммите.
- Промпты, которые кэшируются. Системный промпт статичный и длиннее порога кэширования, поэтому за повторный вызов я плачу копейки – за уже виденную часть.
- Расходы лежат в базе. Кто потратил, какая модель, сколько токенов. Раз в неделю смотрю срез: что увести на локальную модель, что подорожало и почему. Строчке в дашборде провайдера я бы это не доверил.
Зачем это бизнесу
Сама по себе разница между тремя долларами в неделю и тремястами мало кого греет. Важнее другое: дешёвая инфраструктура может позволить себе думать постоянно – триажить каждое письмо, проверять каждый договор, пересчитывать цифры каждый день, а не раз в квартал перед отчётом. Как только каждый вызов стоит ощутимых денег, экономить начинают на частоте внимания – и система слепнет.
Last week my system made 855 LLM calls and paid 50 cents for them. No discounts, no credits. Just three rules I keep with no exceptions.
Local model by default
A 9B model on my Mac takes 81% of the calls. It's free, it's fast, and the data never leaves the machine. The cloud gets a task only after a measurement shows the small model can't handle it.
Here's what one of those measurements looked like. For a month I ran a cloud model and the local one side by side on text-quality scoring. The local one gave every text the same 75 out of 100, zero variance. The cloud model spread them from 32 to 62. I cancelled the migration and left quality scoring in the cloud. Triage, classification and summaries, though, went local long ago: no quality gap there.
Three rules
- One gateway for every call. Every LLM request goes through a single module. It tracks the cost, picks a model for the task, and caches prompts. A direct API call from the code gets caught at commit time.
- Prompts that cache. The system prompt is static and longer than the caching threshold, so a repeat call pays pennies for the part the model has already seen.
- Costs live in a database. Who spent it, which model, how many tokens. Once a week I read the slice: what to move local, what got pricier and why. I wouldn't trust a line in a provider's dashboard with this.
Why a business should care
The gap between three dollars a week and three hundred isn't the real point. This is: cheap infrastructure can afford to think all the time – triaging every email, checking every contract, recalculating the numbers daily instead of once a quarter before the report. The moment each call costs real money, you start saving on how often the system pays attention, and it goes blind.