Контекст 64к на 24 гигах: KV-кэш жрет больше половины VRAM. Как вы это разруливаете?
Рейтинг: 52.9% · 8 голосов
Войдите, чтобы голосовать
Голосовать «За» и «Против» могут только авторизованные пользователи. Войдите в свой аккаунт — или зарегистрируйтесь, это займёт минуту.
Нет аккаунта? Зарегистрироваться
Контекст 64к на 24 гигах: KV-кэш жрет больше половины VRAM. Как вы это разруливаете?
Уперся в стену и не понимаю, как люди живут с длинным контекстом локально. 3090, 24 гига. Qwen3-32B в Q4_K_M весит около 19 гигов, влезает с запасом. Но стоит поставить -c 65536, llama.cpp радостно сообщает, что на KV-кэш нужно еще 16 гигов. Посчитал руками: 64 слоя, 8 kv-голов, head_dim 128, fp16, выходит 256 кб на токен. На 64к токенов ровно 16 гигов, все сходится.
Зачем мне 64к: скармливаю модели куски кодовой базы на ревью, 8-16к не хватает даже на пару файлов с зависимостями.
Видел флаги -ctk q8_0 -ctv q8_0, это режет кэш вдвое. Вопрос к тем, кто реально гоняет: насколько просаживается качество? Особенно интересует q4_0 на value, там вообще в 4 раза экономия. И обязателен ли -fa, без него вроде квантование кэша не работает.
llama.cpp b7900, если важно.
Зачем мне 64к: скармливаю модели куски кодовой базы на ревью, 8-16к не хватает даже на пару файлов с зависимостями.
Видел флаги -ctk q8_0 -ctv q8_0, это режет кэш вдвое. Вопрос к тем, кто реально гоняет: насколько просаживается качество? Особенно интересует q4_0 на value, там вообще в 4 раза экономия. И обязателен ли -fa, без него вроде квантование кэша не работает.
llama.cpp b7900, если важно.
✔ Лучший ответ сформирован автоматически — corvet
rabbit8 писал(а):64к в лоб это самый дорогой и самый тупой способ смотря какая задача. для ревью пулреквеста агент с грепом норм, а вот найти дублирование логики по трем модулям или несостыковку контрактов между сервисами агент с repo map не вывозит, проверял. там нужен именно широкий контекст. ТС, по делу: бери -ctk q8_0 -ctv q8_0 -fa, это 8 гигов вместо 16, влезешь впритык. Хочется запаса, выгр…
Re: Контекст 64к на 24 гигах: KV-кэш жрет больше половины VRAM. Как вы это разруливаете?
@armstron, q8_0 на оба гоняю месяцев восемь, разницы с fp16 не увидел ни разу, даже на длинных ревью. q4_0 на K не вздумай, на V еще терпимо. И да, -fa обязателен, без flash attention квантованный V-кэш просто не заведется.
- elixir1337
- Сообщения: 18
- Зарегистрирован: 11 май 2026, 03:21
Re: Контекст 64к на 24 гигах: KV-кэш жрет больше половины VRAM. Как вы это разруливаете?
подпишусь под q8, но добавлю ложку дегтя. на 64к у тебя проблема не в кэше, а в том что 32B после 30-35к контекста начинает тупеть независимо от квантования. в карточке написано 128к, по факту retrieval еще работает, а рассуждать над всем этим объемом модель уже не может. кидаешь ей 50к кода, она ревьюит первые и последние файлы, середину пролистывает. так что 16 гигов на кэш это плата за цифру в конфиге, а не за реальное качество
Re: Контекст 64к на 24 гигах: KV-кэш жрет больше половины VRAM. Как вы это разруливаете?
ну не настолько все плохо. гонял needle-тесты на Qwen3-32B до 80к, иголки находит стабильно, по всей глубине. согласен что глобальное рассуждение над 60к кода проседает, но для ревью обычно и не надо держать все в голове сразу, надо найти косяк в конкретном месте и сверить с соседними файлами. это ближе к retrieval, и это работает. другое дело что prompt processing на 64к у ТС займет минуты полторы на 3090, вот это реально беситelixir1337 писал(а):32B после 30-35к контекста начинает тупеть независимо от квантования
Re: Контекст 64к на 24 гигах: KV-кэш жрет больше половины VRAM. Как вы это разруливаете?
а зачем вообще пихать кодовую базу целиком? у любого нормального агентского клиента есть grep и чтение файлов по запросу, aider тот же строит repo map на пару тысяч токенов. 64к в лоб это самый дорогой и самый тупой способ. ощущение что задача высосана из пальца
Re: Контекст 64к на 24 гигах: KV-кэш жрет больше половины VRAM. Как вы это разруливаете?
✔ Лучший ответ — сформирован автоматически
смотря какая задача. для ревью пулреквеста агент с грепом норм, а вот найти дублирование логики по трем модулям или несостыковку контрактов между сервисами агент с repo map не вывозит, проверял. там нужен именно широкий контекст.rabbit8 писал(а):64к в лоб это самый дорогой и самый тупой способ
ТС, по делу: бери -ctk q8_0 -ctv q8_0 -fa, это 8 гигов вместо 16, влезешь впритык. Хочется запаса, выгрузи пару слоев на CPU через -ngl, на генерации потеряешь процентов десять. И кэш промпта включи, --cache-reuse 256, чтобы при повторных запросах по той же базе не пересчитывать все с нуля.
Поделиться темой:
✈ Telegram
VK
- Похожие темы
-
-
- Контекст-окно растёт, а агент всё равно тупеет на больших задачах. Боремся с этим
14 ответов · 851 просмотров
-
- Подписка vs разовая оплата для микро-SaaS: что реально приносит больше денег?
11 ответов · 619 просмотров
-
-
- Claude Code SWE-bench 80.8% и контекст 1M — это реально чувствуется или маркетинг?
10 ответов · 326 просмотров
-
- AI пишет в 1.7 раза больше багов чем люди — и всё равно все его используют. Что происходит?
9 ответов · 21 просмотров
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость