Inference
prompt caching
Повторное использование уже вычисленного KV-кеша для одинаковых префиксов запросов.
Что такое prompt caching
Prompt caching — оптимизация инференса, при которой KV-кеш вычисленного промпта (или его части) сохраняется и переиспользуется при следующих запросах с тем же префиксом. Это устраняет необходимость повторного prefill для одинакового системного промпта или контекста RAG.
Типичный сценарий: чат-сервис с системным промптом на 2000 токенов. Без кеширования каждый запрос тратит время и ресурсы на prefill этих 2000 токенов. С кешированием — prefill выполняется один раз, все последующие запросы пропускают его.
Экономия ресурсов
- TTFT снижается на 50–90% для запросов с длинными общими префиксами
- Стоимость снижается: prefill на GPU значительно дороже декодирования в пересчёте на токен
- Throughput растёт: GPU тратит время только на новые токены
Реализации
| Фреймворк | Механизм |
|---|---|
| vLLM | --enable-prefix-caching |
| SGLang | RadixAttention — автоматически |
| Anthropic Claude API | Prefix caching (billing) |
| OpenAI API | Автоматически для длинных промптов |
Когда кеширование особенно выгодно
- Длинный системный промпт (instructions, persona) — одинаков у всех запросов
- RAG с общим документальным контекстом
- Multi-turn диалоги (кешируется история)
- Агентные сценарии с повторяющимися tool definitions
Связанные термины
- KV-кеш — что физически хранится при кешировании
- prefill — фаза, которую кеширование пропускает
- PagedAttention — механизм в vLLM, позволяющий делиться блоками
- TTFT — метрика, улучшаемая кешированием
Готовы запустить GPU-задачу?
Запустить GPU-сервер