100 000 диалогов/мес → $1 050/мес. Теперь понятно, почему «дёшево на старте» превращается в заметные деньги.
2. Куда уходят токены (и как резать)
Системный промпт — платится КАЖДЫЙ раз. Режь, кэшируй префикс (урок 0003), выноси редкое в отдельные вызовы.
RAG-контекст — больше чанков = дороже. Rerank → меньше чанков в промпт (урок 0012).
История диалога — растёт с каждым ходом. Компактизация, обрезка, саммари (урок 0005).
Тул-результаты — возврат больших данных в контекст. Режь на high-signal (урок 0004).
Ретраи и CoT — каждая попытка и каждый «подумай» = токены. Считай реальный диалог, не идеальный.
Правило: считай стоимость на РЕАЛЬНОМ распределении (с ретраями, с ошибками), не на идеальном случае.
3. Когда local окупается: точка безубыточности GPU
Грубая модель: аренда GPU (A100/H100) = $X/час; API-стоимость = $Y за твоё суточное число токенов.
Точка безубыточности: когда суточный объём × цена API ≥ суточная аренда GPU.
Пример: аренда 1×H100 ≈ $2–3/час ≈ $50–70/день. Если твой трафик через API стоит > $50/день — local начинает окупаться. Если $5/день — не окупится никогда.
Плюс к аренде: инженерное время на vLLM, обслуживание, холодный старт. Минус: качество открытой модели vs фронтир — это тоже «стоимость» (хуже ответы = больше эскалаций).
4. Capacity planning: сколько GPU
Пиковый RPS и токены/запрос (из метрик прода, не из фантазии).
Throughput одного GPU — с vLLM и continuous batching: для 7B модели это ~сотни-тысячи токенов/с, но мерь на своей нагрузке.
Параллельность: max-num-seqs × средние токены = сколько влезает в KV cache.
Формула: нужный throughput / throughput одного GPU + запас 30–50% на пики и ретраи.