Команда vLLM представила механизм автоматического кэширования префиксов (Automatic Prefix Caching), который значительно ускоряет работу с длинными контекстами и многократными запросами. Технология позволяет повторно использовать KV-кэш для общих частей промптов, таких как системные инструкции или большие документы в RAG-системах, что снижает потребление памяти и сокращает время генерации токенов.

Принцип работы заключается в кэшировании вычисленных состояний внимания (Attention) для общих префиксов запросов. Когда система получает несколько запросов, начинающихся с одинаковой последовательности, она не пересчитывает KV-кэш для этой части, а подгружает его из памяти. Это особенно эффективно в сценариях, где модель постоянно обращается к одним и тем же справочным данным или шаблонам ответов.

Внедрение этого метода позволяет разработчикам оптимизировать пропускную способность инференс-серверов при работе с агентными системами. В таких архитектурах агенты часто отправляют длинные контексты с историей переписки или набором инструментов, которые почти не меняются от шага к шагу. Использование кэширования префиксов позволяет избежать избыточных вычислений, что напрямую влияет на стоимость эксплуатации и задержки (latency) для конечного пользователя.

Ключевые факты

  • Механизм автоматически определяет общие префиксы в поступающих запросах и сохраняет их KV-кэш в памяти.
  • Функция поддерживает как статические системные промпты, так и динамические документы, используемые в RAG-пайплайнах.
  • Использование кэша позволяет существенно сократить время «Time to First Token» (TTFT) для запросов, имеющих общую контекстную базу.
  • Технология реализована на уровне движка vLLM, что позволяет использовать её без изменения логики работы самих LLM.
  • Оптимизация памяти достигается за счет управления блоками KV-кэша, которые могут быть переиспользованы между различными сессиями запросов.