Кэширование промптов в больших языковых моделях — понятное объяснение
Кейс о том, как Claude достигает 92% cache hit-rate
Каждый раз, когда ИИ-агент делает шаг, он отправляет всю историю диалога обратно в модель.
Туда входят системные инструкции, определения инструментов и контекст проекта, который уже обрабатывался три хода назад. Всё это заново читается, заново обрабатывается и заново тарифицируется на каждом шаге.
В долгоживущих агентных воркфлоу такие избыточные вычисления часто становятся самой дорогой строкой затрат во всей ИИ-инфраструктуре.
Системный промпт на 20 000 токенов при 50 шагах — это 1 миллион токенов избыточных вычислений, оплаченных по полной цене и не создающих новой ценности. И эта стоимость накапливается для каждого пользователя и каждой сессии.
Решение — кэширование промптов. Но чтобы использовать его эффективно, нужно понимать, что именно происходит под капотом.
👉 @DataSciencegx
Кейс о том, как Claude достигает 92% cache hit-rate
Каждый раз, когда ИИ-агент делает шаг, он отправляет всю историю диалога обратно в модель.
Туда входят системные инструкции, определения инструментов и контекст проекта, который уже обрабатывался три хода назад. Всё это заново читается, заново обрабатывается и заново тарифицируется на каждом шаге.
В долгоживущих агентных воркфлоу такие избыточные вычисления часто становятся самой дорогой строкой затрат во всей ИИ-инфраструктуре.
Системный промпт на 20 000 токенов при 50 шагах — это 1 миллион токенов избыточных вычислений, оплаченных по полной цене и не создающих новой ценности. И эта стоимость накапливается для каждого пользователя и каждой сессии.
Решение — кэширование промптов. Но чтобы использовать его эффективно, нужно понимать, что именно происходит под капотом.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5
This media is not supported in your browser
VIEW IN TELEGRAM
Техники дообучения LLM, которые стоит изучить для кастомизации:
Сохрани.
1. LoRA
2. QLoRA
3. Prefix Tuning
4. Adapter Tuning
5. Instruction Tuning
6. P-Tuning
7. BitFit
8. Soft Prompts
9. RLHF
10. RLAIF
11. DPO (прямая оптимизация предпочтений)
12. GRPO (групповая относительная оптимизация политики)
13. RLAIF (обучение с подкреплением на основе AI-фидбэка)
14. Многозадачное дообучение
15. Федеративное дообучение
Мой фаворит — GRPO для построения моделей с рассуждением. Что насчёт тебя?
👉 @DataSciencegx
Сохрани.
1. LoRA
2. QLoRA
3. Prefix Tuning
4. Adapter Tuning
5. Instruction Tuning
6. P-Tuning
7. BitFit
8. Soft Prompts
9. RLHF
10. RLAIF
11. DPO (прямая оптимизация предпочтений)
12. GRPO (групповая относительная оптимизация политики)
13. RLAIF (обучение с подкреплением на основе AI-фидбэка)
14. Многозадачное дообучение
15. Федеративное дообучение
Мой фаворит — GRPO для построения моделей с рассуждением. Что насчёт тебя?
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👀2
Microsoft существенно сжал рассуждение в LLM.
В новой работе представлен MEMENTO — метод, при котором модель учится самостоятельно управлять своим контекстом.
Вместо того чтобы раздувать chain-of-thought в плоский поток на 32K токенов, модель сегментирует рассуждение на блоки, сжимает каждый в плотное резюме (memento) и маскирует исходный блок для дальнейшего внимания.
Результат — пилообразный паттерн KV-кэша, где память периодически уменьшается, а не растёт монотонно.
Обучение строится как двухэтапный SFT-пайплайн.
Этап 1: обучение формату блок → memento с полным вниманием.
Этап 2: обучение рассуждению с замаскированными блоками. Каждый блок сжимается в 5–20 раз, а пик KV-кэша уменьшается в 2–2.5 раза на разных моделях.
Самое интересное — эффект «двойного потока информации».
В момент генерации memento модель всё ещё видит полный блок рассуждения, поэтому KV-представления для memento считаются с учётом полного контекста блока.
После маскирования блока эти KV остаются и продолжают нести неявную информацию, которая не содержится в самом тексте memento.
Если пересчитать KV для memento без доступа к исходному блоку, точность падает примерно на 15 процентных пунктов. Тот же текст, но другие KV-представления — заметно хуже результат.
Это ключевое отличие MEMENTO от подходов, которые пересобирают контекст только из текста и теряют этот неявный канал.
Также показано, что разрыв в точности связан с согласованностью, а не со способностями модели. Она всё ещё может решать те же задачи, но менее стабильно. Голосование по нескольким ответам (k=3) восстанавливает базовую точность, а обучение с подкреплением закрывает большую часть оставшегося разрыва.
По мере роста длины рассуждений модели, которые умеют сжимать промежуточное состояние, смогут обслуживать больше пользователей на том же железе. А двойной KV-канал указывает, что маскирование «на месте» фундаментально лучше, чем подходы с перезапуском контекста.
Статья и датасет (228K трасс рассуждений) доступны публично. Ссылка
👉 @DataSciencegx
В новой работе представлен MEMENTO — метод, при котором модель учится самостоятельно управлять своим контекстом.
Вместо того чтобы раздувать chain-of-thought в плоский поток на 32K токенов, модель сегментирует рассуждение на блоки, сжимает каждый в плотное резюме (memento) и маскирует исходный блок для дальнейшего внимания.
Результат — пилообразный паттерн KV-кэша, где память периодически уменьшается, а не растёт монотонно.
Обучение строится как двухэтапный SFT-пайплайн.
Этап 1: обучение формату блок → memento с полным вниманием.
Этап 2: обучение рассуждению с замаскированными блоками. Каждый блок сжимается в 5–20 раз, а пик KV-кэша уменьшается в 2–2.5 раза на разных моделях.
Самое интересное — эффект «двойного потока информации».
В момент генерации memento модель всё ещё видит полный блок рассуждения, поэтому KV-представления для memento считаются с учётом полного контекста блока.
После маскирования блока эти KV остаются и продолжают нести неявную информацию, которая не содержится в самом тексте memento.
Если пересчитать KV для memento без доступа к исходному блоку, точность падает примерно на 15 процентных пунктов. Тот же текст, но другие KV-представления — заметно хуже результат.
Это ключевое отличие MEMENTO от подходов, которые пересобирают контекст только из текста и теряют этот неявный канал.
Также показано, что разрыв в точности связан с согласованностью, а не со способностями модели. Она всё ещё может решать те же задачи, но менее стабильно. Голосование по нескольким ответам (k=3) восстанавливает базовую точность, а обучение с подкреплением закрывает большую часть оставшегося разрыва.
По мере роста длины рассуждений модели, которые умеют сжимать промежуточное состояние, смогут обслуживать больше пользователей на том же железе. А двойной KV-канал указывает, что маскирование «на месте» фундаментально лучше, чем подходы с перезапуском контекста.
Статья и датасет (228K трасс рассуждений) доступны публично. Ссылка
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
Kimi опять двигает инференс-стек.
Moonshot AI выкатили подход Prefill-as-a-Service, где стадии предзаполнения и декодирования больше не привязаны к одному кластеру. Теперь это кросс-датацентровая архитектура с гетерогенным железом, что позволяет гибко распределять нагрузку и снижать стоимость инференса.
Ключевая проблема раньше — перенос KV-кэша между узлами: слишком большой, дорогой по сети. Решение — архитектура Kimi Linear, которая уменьшает размер KV-кэша и делает такую схему практически применимой.
Что получили на практике:
* +1.54× к пропускной способности
* −64% к P90 времени до первого токена
* прямое снижение стоимости токена
Контекст: Kimi уже давно упирается в инфраструктуру, а не только в модель. У них есть собственные решения вокруг KV-кэша и дизагрегации инференса, и это логичное продолжение — вынести prefill как отдельный сервис.
Вывод: рынок движется в сторону разделения инференс-пайплайна и оптимизации под стоимость, а не только под качество модели.
👉 @DataSciencegx
Moonshot AI выкатили подход Prefill-as-a-Service, где стадии предзаполнения и декодирования больше не привязаны к одному кластеру. Теперь это кросс-датацентровая архитектура с гетерогенным железом, что позволяет гибко распределять нагрузку и снижать стоимость инференса.
Ключевая проблема раньше — перенос KV-кэша между узлами: слишком большой, дорогой по сети. Решение — архитектура Kimi Linear, которая уменьшает размер KV-кэша и делает такую схему практически применимой.
Что получили на практике:
* +1.54× к пропускной способности
* −64% к P90 времени до первого токена
* прямое снижение стоимости токена
Контекст: Kimi уже давно упирается в инфраструктуру, а не только в модель. У них есть собственные решения вокруг KV-кэша и дизагрегации инференса, и это логичное продолжение — вынести prefill как отдельный сервис.
Вывод: рынок движется в сторону разделения инференс-пайплайна и оптимизации под стоимость, а не только под качество модели.
Please open Telegram to view this post
VIEW IN TELEGRAM
Гении предложили общий кросс-доменный слой памяти для кодинг-агентов.
Эта идея называется Memory Transfer Learning (MTL).
Собирается один большой пул памяти из разных типов задач по разработке, после чего агент переиспользует эту память между доменами.
→ Такая память становится общим ресурсом и универсальной библиотекой опыта для множества агентов и моделей.
Прирост (+3.7% в среднем) достигается за счёт мета-знаний:
* как валидировать решение
* как структурировать дебаг
* какие проверки запускать
* как детектить паттерны фейлов
При этом важен уровень абстракции: память, слишком привязанная к конкретной задаче, ухудшает качество.
Память для дебага, генерации кода и тестирования складывается в один общий пул. Чем больше памяти, тем лучше работает перенос.
MTL даёт агенту возможность переиспользовать общее рассуждение и проверки, а не только точные трассы решений.
https://github.com/KangsanKim07/MemoryTransferLearning
https://arxiv.org/abs/2604.14004
👉 @DataSciencegx
Эта идея называется Memory Transfer Learning (MTL).
Собирается один большой пул памяти из разных типов задач по разработке, после чего агент переиспользует эту память между доменами.
→ Такая память становится общим ресурсом и универсальной библиотекой опыта для множества агентов и моделей.
Прирост (+3.7% в среднем) достигается за счёт мета-знаний:
* как валидировать решение
* как структурировать дебаг
* какие проверки запускать
* как детектить паттерны фейлов
При этом важен уровень абстракции: память, слишком привязанная к конкретной задаче, ухудшает качество.
Память для дебага, генерации кода и тестирования складывается в один общий пул. Чем больше памяти, тем лучше работает перенос.
MTL даёт агенту возможность переиспользовать общее рассуждение и проверки, а не только точные трассы решений.
https://github.com/KangsanKim07/MemoryTransferLearning
https://arxiv.org/abs/2604.14004
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3👍2
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Ты на собеседовании на ML Engineer в MistralAI.
Интервьюер спрашивает:
«Нам нужна языковая модель, которая хорошо работает в коде, математике и креативном письме. Как добиться мультидоменной производительности?»
Ты: «Я увеличу количество голов внимания».
Собеседование окончено.
Вот что ты упустил:
Головы внимания захватывают паттерны, а не доменную экспертизу.
Больше голов = более богатые представления за один проход.
Больше экспертов = выделенные подсети под разные типы знаний.
Правильный ответ: Mixture of Experts (MoE).
Разберёмся, чем MoE отличается от стандартных трансформеров:
Трансформер и MoE различаются в блоке декодера:
- В трансформере используется полносвязная сеть прямого распространения.
- В MoE используются эксперты — это тоже полносвязные сети прямого распространения, но меньшего размера по сравнению с теми, что в трансформере.
Во время инференса выбирается подмножество экспертов. Это ускоряет инференс в MoE.
Так как сеть содержит несколько слоёв декодера:
- текст проходит через разных экспертов на разных слоях
- выбранные эксперты также различаются для разных токенов
Но как модель решает, какие эксперты подходят лучше?
Это делает маршрутизатор. Разберём его далее.
Задача 1) Обрати внимание на этот паттерн в начале обучения:
- модель выбирает «Эксперт 2»
- эксперт немного улучшается
- его могут выбрать снова
- эксперт обучается дальше
- его снова выбирают
- он продолжает обучаться
- и так далее
Многие эксперты остаются недообученными.
Решаем это в два шага:
- Добавляем шум к выходу полносвязного слоя маршрутизатора, чтобы другие эксперты могли получать более высокие логиты.
- Устанавливаем все логиты, кроме top-K, в −бесконечность. После softmax их значения становятся нулевыми.
Так другие эксперты тоже получают возможность обучаться.
Задача 2) Некоторые эксперты могут получать больше токенов, чем другие — это приводит к тому, что часть экспертов остаётся недообученной.
Это предотвращается ограничением количества токенов, которые может обработать один эксперт.
Если эксперт достигает лимита, входной токен перенаправляется к следующему наиболее подходящему эксперту.
MoE содержит больше параметров для загрузки. Однако активируется только их часть, так как выбирается ограниченное количество экспертов.
Это приводит к более быстрому инференсу. Mixtral 8x7B от MistralAI — известная языковая модель, построенная на MoE.
Вот визуал, который снова сравнивает трансформеры и MoE (ласт гифка)
👉 @DataSciencegx
Интервьюер спрашивает:
«Нам нужна языковая модель, которая хорошо работает в коде, математике и креативном письме. Как добиться мультидоменной производительности?»
Ты: «Я увеличу количество голов внимания».
Собеседование окончено.
Вот что ты упустил:
Головы внимания захватывают паттерны, а не доменную экспертизу.
Больше голов = более богатые представления за один проход.
Больше экспертов = выделенные подсети под разные типы знаний.
Правильный ответ: Mixture of Experts (MoE).
Разберёмся, чем MoE отличается от стандартных трансформеров:
Трансформер и MoE различаются в блоке декодера:
- В трансформере используется полносвязная сеть прямого распространения.
- В MoE используются эксперты — это тоже полносвязные сети прямого распространения, но меньшего размера по сравнению с теми, что в трансформере.
Во время инференса выбирается подмножество экспертов. Это ускоряет инференс в MoE.
Так как сеть содержит несколько слоёв декодера:
- текст проходит через разных экспертов на разных слоях
- выбранные эксперты также различаются для разных токенов
Но как модель решает, какие эксперты подходят лучше?
Это делает маршрутизатор. Разберём его далее.
Задача 1) Обрати внимание на этот паттерн в начале обучения:
- модель выбирает «Эксперт 2»
- эксперт немного улучшается
- его могут выбрать снова
- эксперт обучается дальше
- его снова выбирают
- он продолжает обучаться
- и так далее
Многие эксперты остаются недообученными.
Решаем это в два шага:
- Добавляем шум к выходу полносвязного слоя маршрутизатора, чтобы другие эксперты могли получать более высокие логиты.
- Устанавливаем все логиты, кроме top-K, в −бесконечность. После softmax их значения становятся нулевыми.
Так другие эксперты тоже получают возможность обучаться.
Задача 2) Некоторые эксперты могут получать больше токенов, чем другие — это приводит к тому, что часть экспертов остаётся недообученной.
Это предотвращается ограничением количества токенов, которые может обработать один эксперт.
Если эксперт достигает лимита, входной токен перенаправляется к следующему наиболее подходящему эксперту.
MoE содержит больше параметров для загрузки. Однако активируется только их часть, так как выбирается ограниченное количество экспертов.
Это приводит к более быстрому инференсу. Mixtral 8x7B от MistralAI — известная языковая модель, построенная на MoE.
Вот визуал, который снова сравнивает трансформеры и MoE (ласт гифка)
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3👍1
Граф-ориентированная универсальная RAG-система
RAG-Anything — это графовая, универсальная мультимодальная RAG-система для обработки документов, построенная на базе LightRAG.
Поддерживает все типы контента в рамках единого интегрированного фреймворка.
Полностью с открытым исходным кодом.
👉 @DataSciencegx
RAG-Anything — это графовая, универсальная мультимодальная RAG-система для обработки документов, построенная на базе LightRAG.
Поддерживает все типы контента в рамках единого интегрированного фреймворка.
Полностью с открытым исходным кодом.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Десять лет мы увеличивали ширину и глубину моделей — но почти не меняли то, как слои *взаимодействуют* между собой.
Со времён ResNet с
На бумаге модели выглядят глубокими. Но многие слои «учатся молчать»: по мере накопления информации сигнал размывается и теряется.
Узкое место — не вычисления *внутри* слоёв, а коммуникация *между* ними.
Все предыдущие подходы — DenseNet, DenseFormer, Hyper-Connections, MUDDFormer — отвечают на один и тот же вопрос: «как лучше *смешивать* выходы слоёв?»
Лучшие коэффициенты. Больше каналов. Адаптивные веса.
Но всё это — накопление. И это категориальная ошибка.
Межслойная коммуникация должна быть извлечением, а не накоплением.
Запрос = «что мне нужно».
Ключ = «что у меня есть».
Обе стороны участвуют.
Слой 152 не должен «напрягаться», чтобы услышать слой 3 в общем хоре. Он должен просто обратиться к нему: «что ты сказал?»
Проблема: наивная реализация внимания по глубине занимала 44 924 мс на прямой и обратный проход. Слишком медленно.
Представлен Flash Depth Attention (FDA) — аппаратно-эффективное ядро, ускоряющее внимание по глубине более чем в 40 000 раз, делая полноценное извлечение по глубине пригодным для масштабного обучения.
Классический пайплайн трансформера: остаточные связи → последовательное внимание → остаточные связи → полносвязный слой.
Пайплайн с Flash Depth Attention (FDA): внимание по глубине → последовательное внимание → внимание по глубине → полносвязный слой.
Дальше — Mixture-of-Depths Attention (MoDA): объединение извлечения по глубине и по последовательности в один softmax.
Каждая голова одновременно обращается к KV текущего слоя (по последовательности) и к KV всех предыдущих слоёв (по глубине).
Одна операция, два измерения извлечения.
Результаты: модель активно использует межслойное извлечение, эффект «attention sink» исчезает, MoDA улучшает базовую модель OLMo2 по всем метрикам.
Первая половина развития архитектур была про масштабирование компонентов.
Вторая — про масштабирование *коммуникации*.
Добро пожаловать во вторую половину👋
Статья: https://arxiv.org/abs/2603.15619
Блог (рекомендуется): https://lh-zhu.github.io/The-Second-Half-of-Model-Architecture/
Код: https://github.com/hustvl/MoDA
👉 @DataSciencegx
Со времён ResNet с
x + F(x) в 2015 году глубинная остаточная связь остаётся единственным каналом межслойной коммуникации.На бумаге модели выглядят глубокими. Но многие слои «учатся молчать»: по мере накопления информации сигнал размывается и теряется.
Узкое место — не вычисления *внутри* слоёв, а коммуникация *между* ними.
Все предыдущие подходы — DenseNet, DenseFormer, Hyper-Connections, MUDDFormer — отвечают на один и тот же вопрос: «как лучше *смешивать* выходы слоёв?»
Лучшие коэффициенты. Больше каналов. Адаптивные веса.
Но всё это — накопление. И это категориальная ошибка.
Межслойная коммуникация должна быть извлечением, а не накоплением.
Запрос = «что мне нужно».
Ключ = «что у меня есть».
Обе стороны участвуют.
Слой 152 не должен «напрягаться», чтобы услышать слой 3 в общем хоре. Он должен просто обратиться к нему: «что ты сказал?»
Проблема: наивная реализация внимания по глубине занимала 44 924 мс на прямой и обратный проход. Слишком медленно.
Представлен Flash Depth Attention (FDA) — аппаратно-эффективное ядро, ускоряющее внимание по глубине более чем в 40 000 раз, делая полноценное извлечение по глубине пригодным для масштабного обучения.
Классический пайплайн трансформера: остаточные связи → последовательное внимание → остаточные связи → полносвязный слой.
Пайплайн с Flash Depth Attention (FDA): внимание по глубине → последовательное внимание → внимание по глубине → полносвязный слой.
Дальше — Mixture-of-Depths Attention (MoDA): объединение извлечения по глубине и по последовательности в один softmax.
Каждая голова одновременно обращается к KV текущего слоя (по последовательности) и к KV всех предыдущих слоёв (по глубине).
Одна операция, два измерения извлечения.
Результаты: модель активно использует межслойное извлечение, эффект «attention sink» исчезает, MoDA улучшает базовую модель OLMo2 по всем метрикам.
Первая половина развития архитектур была про масштабирование компонентов.
Вторая — про масштабирование *коммуникации*.
Добро пожаловать во вторую половину
Статья: https://arxiv.org/abs/2603.15619
Блог (рекомендуется): https://lh-zhu.github.io/The-Second-Half-of-Model-Architecture/
Код: https://github.com/hustvl/MoDA
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2🏆1
13+ механизмов внимания, которые стоит знать:
▪️ самовнимание
▪️ кросс-внимание
▪️ каузальное внимание
▪️ линейное внимание
▪️ внимание с softmax
▪️ скользящее окно (локальное внимание)
▪️ глобальное внимание
▪️ FlashAttention
▪️ многоголовое внимание (MHA)
▪️ многозапросное внимание (MQA)
▪️ сгруппированное внимание по запросам (GQA)
▪️ многоголовое латентное внимание (MLA)
▪️ чередующееся внимание по головам (IHA)
* Slim Attention, KArAt, XAttention, Mixture-of-Depths Attention (MoDA)
👉 @DataSciencegx
▪️ самовнимание
▪️ кросс-внимание
▪️ каузальное внимание
▪️ линейное внимание
▪️ внимание с softmax
▪️ скользящее окно (локальное внимание)
▪️ глобальное внимание
▪️ FlashAttention
▪️ многоголовое внимание (MHA)
▪️ многозапросное внимание (MQA)
▪️ сгруппированное внимание по запросам (GQA)
▪️ многоголовое латентное внимание (MLA)
▪️ чередующееся внимание по головам (IHA)
* Slim Attention, KArAt, XAttention, Mixture-of-Depths Attention (MoDA)
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👍2😁1
Microsoft решила проблему контекстного окна.
Сейчас у любой модели есть фундаментальное ограничение — «проблема контекстного окна».
Когда модель решает сложную задачу, она генерирует длинную цепочку рассуждений. При этом каждый токен должен храниться в активной памяти — так называемом KV-кэше.
Чем дольше идёт рассуждение, тем больше разрастается KV-кэш. Это замедляет работу, увеличивает стоимость и в итоге упирается в лимиты памяти.
Казалось, единственный выход — использовать более мощные и дорогие GPU с большим объёмом памяти.
Microsoft показала другой подход в работе «MEMENTO».
Вместо увеличения памяти модель учат забывать.
Как это работает:
Модель не строит одно непрерывное рассуждение, а разбивает его на небольшие блоки.
После завершения блока она формирует плотное сжатое представление логики — «memento».
Затем полностью удаляет предыдущий блок рассуждений из KV-кэша.
В контексте остаётся только это сжатое представление. Модель извлекает суть и сразу избавляется от лишнего.
Результаты:
• Сжатие длины контекста — в 6 раз
• Снижение использования KV-кэша — в 2.5 раза
• Без потери точности в задачах по математике, науке и кодингу
Практическое значение:
Большие контекстные окна перестают быть обязательными.
Становится возможным запуск сложных многошаговых агентных систем локально — без облака, без оплаты за токены, с полной приватностью.
Ключевая идея:
Эффективность модели определяется не объёмом памяти, а способностью отбрасывать нерелевантное и сохранять только суть.
https://github.com/microsoft/memento
👉 @DataSciencegx
Сейчас у любой модели есть фундаментальное ограничение — «проблема контекстного окна».
Когда модель решает сложную задачу, она генерирует длинную цепочку рассуждений. При этом каждый токен должен храниться в активной памяти — так называемом KV-кэше.
Чем дольше идёт рассуждение, тем больше разрастается KV-кэш. Это замедляет работу, увеличивает стоимость и в итоге упирается в лимиты памяти.
Казалось, единственный выход — использовать более мощные и дорогие GPU с большим объёмом памяти.
Microsoft показала другой подход в работе «MEMENTO».
Вместо увеличения памяти модель учат забывать.
Как это работает:
Модель не строит одно непрерывное рассуждение, а разбивает его на небольшие блоки.
После завершения блока она формирует плотное сжатое представление логики — «memento».
Затем полностью удаляет предыдущий блок рассуждений из KV-кэша.
В контексте остаётся только это сжатое представление. Модель извлекает суть и сразу избавляется от лишнего.
Результаты:
• Сжатие длины контекста — в 6 раз
• Снижение использования KV-кэша — в 2.5 раза
• Без потери точности в задачах по математике, науке и кодингу
Практическое значение:
Большие контекстные окна перестают быть обязательными.
Становится возможным запуск сложных многошаговых агентных систем локально — без облака, без оплаты за токены, с полной приватностью.
Ключевая идея:
Эффективность модели определяется не объёмом памяти, а способностью отбрасывать нерелевантное и сохранять только суть.
https://github.com/microsoft/memento
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
Meta решила главное узкое место в RAG.
30× ускорение декодирования. Без потерь точности.
Проблема, о которой почти не говорят:
Когда в LLM подаёшь 80 извлечённых фрагментов, реально полезны только 5–10.
Остальные — мёртвый груз. Но внимание считается для ВСЕХ.
Математика жёсткая:
Традиционный RAG с контекстом 16K:
→ 100+ секунд до первого токена
→ падение пропускной способности в 10×
→ огромный расход памяти
Что делает REFRAG:
Сжимает куски контекста в единичные эмбеддинги.
Вместо обработки 16 384 токенов → обрабатывается 1 024 эмбеддинга чанков.
Результаты:
✓ 30.85× быстрее время до первого токена
✓ нулевая потеря перплексии
✓ расширение контекста в 16× (4K → 64K токенов)
✓ в 3.75× лучше предыдущего SOTA
Почему это работает:
Контексты RAG имеют разреженные паттерны внимания. Большинство извлечённых фрагментов не взаимодействуют друг с другом. REFRAG использует это через:
1. Предвычисляемые эмбеддинги — кэшируются на этапе извлечения и переиспользуются при инференсе
2. Сжатие на основе обучения с подкреплением — политика решает, что сжимать
3. Работает в любой позиции — в отличие от предыдущих подходов
Практический эффект:
• 8 фрагментов с задержкой как у одного
• выше точность при слабых ретриверах
• поддержка неограниченной истории диалога
• не требует изменений архитектуры модели
Это меняет экономику RAG: больше контекста при меньшей задержке.
👉 @DataSciencegx
30× ускорение декодирования. Без потерь точности.
Проблема, о которой почти не говорят:
Когда в LLM подаёшь 80 извлечённых фрагментов, реально полезны только 5–10.
Остальные — мёртвый груз. Но внимание считается для ВСЕХ.
Математика жёсткая:
Традиционный RAG с контекстом 16K:
→ 100+ секунд до первого токена
→ падение пропускной способности в 10×
→ огромный расход памяти
Что делает REFRAG:
Сжимает куски контекста в единичные эмбеддинги.
Вместо обработки 16 384 токенов → обрабатывается 1 024 эмбеддинга чанков.
Результаты:
✓ 30.85× быстрее время до первого токена
✓ нулевая потеря перплексии
✓ расширение контекста в 16× (4K → 64K токенов)
✓ в 3.75× лучше предыдущего SOTA
Почему это работает:
Контексты RAG имеют разреженные паттерны внимания. Большинство извлечённых фрагментов не взаимодействуют друг с другом. REFRAG использует это через:
1. Предвычисляемые эмбеддинги — кэшируются на этапе извлечения и переиспользуются при инференсе
2. Сжатие на основе обучения с подкреплением — политика решает, что сжимать
3. Работает в любой позиции — в отличие от предыдущих подходов
Практический эффект:
• 8 фрагментов с задержкой как у одного
• выше точность при слабых ретриверах
• поддержка неограниченной истории диалога
• не требует изменений архитектуры модели
Это меняет экономику RAG: больше контекста при меньшей задержке.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4❤2🤔1🌚1
Большие языковые модели ломают все допущения, на которых строился классический инференс в машинном обучении.
Традиционная модель (сверточная нейросеть, трансформер-классификатор, XGBoost) выдает результат за один прямой проход.
Между запросами ничего не сохраняется. Графический процессор выполняет однотипную работу каждый раз.
Большие языковые модели работают совершенно иначе.
Выход генерируется по одному токену, авторегрессионно, из-за чего один запрос превращается в сотни последовательных прямых проходов.
Стадия префилла упирается в вычисления, а декодирование — в пропускную способность памяти, и совместный запуск на одном графическом процессоре ухудшает оба этапа.
Кэш ключ-значение растет с длиной диалога и разделяется между запросами, поэтому маршрутизация больше не про наименее загруженные серверы, а про то, на какой реплике уже закэширован нужный префикс.
Модели со смесью экспертов добавляют параллелизм экспертов поверх этого.
Ничего из этого нет в классическом обслуживании моделей машинного обучения.
Именно поэтому появился отдельный стек оптимизаций специально под инференс больших языковых моделей: сжатие, механизм внимания, управление кэшем ключ-значение, батчинг, декодирование, параллелизм и маршрутизация.
На демо видно фото-карту из 72 техник оптимизации больших языковых моделей в продакшене, сгруппированных в девять блоков.
Я также прикрепляю статью , где разбирается, чем инференс больших языковых моделей отличается от классического инференса и зачем нужен каждый из этих блоков.
Вопрос: какие еще техники оптимизации больших языковых моделей ты бы сюда добавил?
👉 @DataSciencegx
Традиционная модель (сверточная нейросеть, трансформер-классификатор, XGBoost) выдает результат за один прямой проход.
Между запросами ничего не сохраняется. Графический процессор выполняет однотипную работу каждый раз.
Большие языковые модели работают совершенно иначе.
Выход генерируется по одному токену, авторегрессионно, из-за чего один запрос превращается в сотни последовательных прямых проходов.
Стадия префилла упирается в вычисления, а декодирование — в пропускную способность памяти, и совместный запуск на одном графическом процессоре ухудшает оба этапа.
Кэш ключ-значение растет с длиной диалога и разделяется между запросами, поэтому маршрутизация больше не про наименее загруженные серверы, а про то, на какой реплике уже закэширован нужный префикс.
Модели со смесью экспертов добавляют параллелизм экспертов поверх этого.
Ничего из этого нет в классическом обслуживании моделей машинного обучения.
Именно поэтому появился отдельный стек оптимизаций специально под инференс больших языковых моделей: сжатие, механизм внимания, управление кэшем ключ-значение, батчинг, декодирование, параллелизм и маршрутизация.
На демо видно фото-карту из 72 техник оптимизации больших языковых моделей в продакшене, сгруппированных в девять блоков.
Я также прикрепляю статью , где разбирается, чем инференс больших языковых моделей отличается от классического инференса и зачем нужен каждый из этих блоков.
Вопрос: какие еще техники оптимизации больших языковых моделей ты бы сюда добавил?
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
lucebox-hub
Потребительские видеокарты на самом деле обладают достаточным аппаратным потенциалом; проблема в том, что универсальные фреймворки теряют значительную часть производительности на неэффективных накладных расходах. Lucebox раскрывает этот потенциал за счёт точечной оптимизации через ручную реализацию вычислительных ядер, позволяя даже RTX 3090 образца 2020 года достигать энергоэффективности на уровне последних чипов Apple.
Lucebox — проект по ручной оптимизации инференса больших языковых моделей на потребительских GPU, в котором на данный момент открыты два ключевых результата. Megakernel нацелен на гибридную модель DeltaNet/Attention Qwen3.5-0.8B, объединяя вычисления, ранее разбросанные по ~100 вызовам CUDA-ядер, в один запуск. На RTX 3090 скорость prefill достигает 37 800 токенов/с, decode — 413 токенов/с, энергоэффективность — 1.87 токена/Дж, сопоставимо с Apple M5 Max; при снижении энергопотребления с 350W до 220W падение скорости всего 5%, при этом энергоэффективность почти удваивается.
DFlash впервые реализует спекулятивное декодирование в подходе GGUF на одной видеокарте. Для Qwen3.5-27B при квантизации Q4_K_M и использовании BF16 для draft-модели достигается 129.5 токенов/с по HumanEval на RTX 3090 — это в 3.43 раза быстрее чистого авторегрессионного декодирования, при этом для контекста 128K требуется не более 24 ГБ памяти.
Основная сложность — ограничения по памяти: целевая модель, draft-модель и промежуточные состояния дерева верификации DDTree должны одновременно помещаться в 24 ГБ, что потребовало переписать загрузчик GGUF и три CUDA-ядра для операций над деревом поверх ggml. Весь код проекта распространяется по лицензии MIT, есть подробная документация, позволяющая воспроизвести бенчмарки напрямую.
https://github.com/Luce-Org/lucebox-hub
👉 @DataSciencegx
Потребительские видеокарты на самом деле обладают достаточным аппаратным потенциалом; проблема в том, что универсальные фреймворки теряют значительную часть производительности на неэффективных накладных расходах. Lucebox раскрывает этот потенциал за счёт точечной оптимизации через ручную реализацию вычислительных ядер, позволяя даже RTX 3090 образца 2020 года достигать энергоэффективности на уровне последних чипов Apple.
Lucebox — проект по ручной оптимизации инференса больших языковых моделей на потребительских GPU, в котором на данный момент открыты два ключевых результата. Megakernel нацелен на гибридную модель DeltaNet/Attention Qwen3.5-0.8B, объединяя вычисления, ранее разбросанные по ~100 вызовам CUDA-ядер, в один запуск. На RTX 3090 скорость prefill достигает 37 800 токенов/с, decode — 413 токенов/с, энергоэффективность — 1.87 токена/Дж, сопоставимо с Apple M5 Max; при снижении энергопотребления с 350W до 220W падение скорости всего 5%, при этом энергоэффективность почти удваивается.
DFlash впервые реализует спекулятивное декодирование в подходе GGUF на одной видеокарте. Для Qwen3.5-27B при квантизации Q4_K_M и использовании BF16 для draft-модели достигается 129.5 токенов/с по HumanEval на RTX 3090 — это в 3.43 раза быстрее чистого авторегрессионного декодирования, при этом для контекста 128K требуется не более 24 ГБ памяти.
Основная сложность — ограничения по памяти: целевая модель, draft-модель и промежуточные состояния дерева верификации DDTree должны одновременно помещаться в 24 ГБ, что потребовало переписать загрузчик GGUF и три CUDA-ядра для операций над деревом поверх ggml. Весь код проекта распространяется по лицензии MIT, есть подробная документация, позволяющая воспроизвести бенчмарки напрямую.
https://github.com/Luce-Org/lucebox-hub
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3