Оценка памяти KV cache

MediumML coding
05:00
Лучше работает на десктопе
ML CodingKV CacheLLM InferenceMemory
Реальный собес00:50:42-00:51:262026-05-08 14-02-49Страница собеса

В LLM inference KV cache хранит key и value в каждом transformer-слое для уже обработанных токенов.

Напишите функцию, которая возвращает размер KV cache в байтах.

Для каждого токена, каждого слоя и каждой KV-head нужно хранить два вектора: key и value.

Сигнатура

def kv_cache_bytes(
    batch_size: int,
    context_length: int,
    num_layers: int,
    num_kv_heads: int,
    head_dim: int,
    bytes_per_element: int = 2,
) -> int:

Примеры

Пример 1

Вход:
batch_size = 1
context_length = 1
num_layers = 1
num_kv_heads = 1
head_dim = 1
bytes_per_element = 2
Выход:4

Пример 2

Вход:
batch_size = 1
context_length = 2048
num_layers = 32
num_kv_heads = 32
head_dim = 128
bytes_per_element = 2
Выход:1073741824

Пример 3

Вход:
batch_size = 4
context_length = 1024
num_layers = 24
num_kv_heads = 8
head_dim = 128
bytes_per_element = 2
Выход:402653184
Консоль
Нажмите Run или Ctrl+Enter для запуска