ForkKV переосмысляет KV cache optimization для multi-LoRA serving, устраняя дублирование памяти и повышая throughput
Проблема проявляется в multi-LoRA agent serving, где несколько специализированных агентов работают поверх одной базовой модели. LoRA снижает стоимость fine-tuning, но на этапе инференса возникает узкое место — KV cache. Из-за различий в активациях адаптеров KV cache перестает быть общим даже при идентичном контексте. Это ломает prefix caching и приводит к линейному росту потребления памяти, что напрямую снижает throughput и ограничивает параллелизм.
ForkKV предлагает архитектурный сдвиг: disaggregated KV cache. Вместо хранения единого KV cache система разделяет его на два компонента — общий bCache (base cache) и агент-специфичный rCache (residual cache). Такой дизайн опирается на структуру LoRA: основная проекция xW значительно больше, чем низкоранговая часть xA. Управление этим разделением реализовано через DualRadixTree и модель fork с copy-on-write (CoW), аналогичную процессам в ОС. Новый агент наследует общий bCache и создает только собственный rCache, что устраняет дублирование данных.
Ключевой инженерный компромисс — частичная потеря точности из-за расхождения состояний между агентами. Однако эмпирически это расхождение ограничено: сходство входных состояний превышает 99.4%, а деградация качества генерации составляет около 1.60%. При этом выигрыш в эффективности значителен. В сценариях с общим контекстом 32K токенов ForkKV сокращает потребление памяти с десятков гигабайт до единиц и обеспечивает до 3.0× рост throughput. Это достигается не только за счет экономии памяти, но и благодаря ResidualAttention — кастомному kernel, который реконструирует KV cache прямо в SRAM, избегая накладных расходов HBM и сохраняя батчевую параллельность.
Для индустрии это выглядит как прагматичный путь масштабирования agent-based систем. Вместо горизонтального масштабирования моделей, система увеличивает плотность размещения агентов за счет более эффективного использования памяти. Подход особенно применим в сценариях с длинным общим контекстом — например, кодовые базы или документные пайплайны. Ограничение остается в сложности реализации: требуется специализированный runtime, кастомные kernel и новая модель управления памятью. Однако сам принцип — декомпозиция KV cache и CoW-семантика — уже выглядит как устойчивый паттерн для highload LLM serving.
Новостной источник
arXiv — крупнейший открытый репозиторий препринтов (с 1991, под эгидой Cornell), где учёные оперативно выкладывают рабочие версии статей; материалы общедоступны, но не проходят полноценную рецензии, так что результаты следует считать предварительными и по возможности проверять в обновлённых версиях или в рецензируемых журналах. arxiv.org