﻿# CacheBlend для RAG: повторение документов за пределами общего префикса

Как CacheBlend использует выборочное повторное вычисление, почему перестановка найденных документов мешает prefix caching и как проверять качество ответов.

Автор: Команда Retrivium
Обновлено: 2026-11-03
Канонический URL: https://retrivium.ai/ru/journal/cacheblend-rag-non-prefix-reuse/
Language: ru

Помощник с поиском по документам часто возвращается к одним материалам в разных сочетаниях. Обычный prefix caching помогает только пока начало сериализованного запроса совпадает. Если новый поиск поставил знакомый документ после другого текста, этот документ уже может не входить в повторяемый префикс. CacheBlend решает именно эту задачу сервинга после того, как поиск выбрал свидетельства, а не заменяет сам поиск.

## Найдите недостающее повторение

Запишите фактический вход модели для последовательных вопросов. Выделите системные инструкции, найденные фрагменты, разделители и вопрос. Присутствие документа в двух запросах ещё не означает одинаковый предшествующий контекст.

[Руководство vLLM по prefix caching](https://docs.vllm.ai/en/latest/features/automatic_prefix_caching/) описывает повторное использование общего начала. Поэтому CacheBlend следует сравнивать с этим существующим механизмом, а не с искусственно лишённым любого кэша развёртыванием. Качество ранжирования остаётся отдельным вопросом: ускорение prefill не делает ошибочно выбранный документ релевантным.

## Поймите выборочный пересчёт

[Описание CacheBlend в LMCache](https://docs.lmcache.ai/kv_cache_optimizations/cacheblend.html) предусматривает сочетание ранее вычисленных фрагментов с выборочным повторным вычислением. Это не обещание свободно склеивать любые KV-блоки без учёта окружающего контекста и без изменения результата.

Отсюда следует устройство проверки качества. Состояние attention конкретного фрагмента рассчитано с определённой историей. Повторение при другой истории требует поддерживаемого восстановления или пересчёта. Проверяйте полноценные ответы, включая зависимости между фрагментами, вместо того чтобы считать успешный поиск блока доказательством эквивалентности вычислений.

## Не смешивайте поколения интеграций

Современные многопроцессные интеграции и старые примеры со встроенным процессом могут использовать разные переключатели и пути исполнения. [Справочник конфигурации LMCache](https://docs.lmcache.ai/api_reference/configurations.html) содержит в том числе прежние настройки blending; их нельзя без проверки переносить в другое поколение интеграции.

Зафиксируйте движок, ревизию LMCache, режим коннектора и документированные ограничения модели и backend. Проверьте представление границ фрагментов в фактическом потоке токенов. Видимый в исходном тексте разделитель может изменяться шаблоном чата до попадания в модель, нарушая предполагаемую границу между документами.

## Постройте тест порядка документов

Выберите вопросы по одному фрагменту, нескольким независимым фрагментам и явной связи между документами. Повторите их при исходном порядке свидетельств, перестановке и частичной замене набора. Сохраните найденные документы неизменными, чтобы эксперимент проверял обработку контекста, а не изменения качества поиска.

Сравните ответы с обычным режимом движка. Оцените правильность ссылок, потерянные ограничения и рассуждения между документами. Затем запишите задержку первого токена, загруженные байты и повторно вычисленную работу каждого случая. Средняя задержка способна скрыть ухудшение именно тех вопросов, где взаимодействие фрагментов важнее всего.

## Опишите полезный режим работы

CacheBlend особенно интересен, когда документы повторяются, но точные префиксы различаются, а prefill занимает существенное время. Уникальные загрузки и короткие контексты оставляют мало полезного состояния. Большая передача блоков тоже способна перекрыть выигрыш от сокращения арифметических операций.

Оставьте документированный резервный путь для неподдерживаемого backend или типа запроса. Публикуйте качество и задержку вместе для проверенной нагрузки, не превращая результат одного корпуса в универсальное обещание ускорения. Ценность такого кэша зависит одновременно от повторяемости документов и сохранения качества решаемой задачи.

## Материалы по теме

[Prefix caching: когда повторяющийся контекст помогает GPU-пулу](/ru/journal/prefix-caching/), [Сервер с увеличенной RAM для RAG: что держать в памяти](/ru/journal/high-ram-rag-servers/).
