Google технологией TurboQuant в 6 раз снизила потребление памяти ИИ-моделями

Изображение: grok
Инженеры Google представили TurboQuant — разработку, которая резко снижает потребление памяти в ИИ-системах и при этом не теряет в точности вычислений. Для больших языковых моделей это решает одну из самых болезненных проблем, когда памяти всегда не хватает, а стоит она дорого.
Идея в основе не новая, но реализация другая. Разработчики взяли классический метод векторного квантования, который давно используется для сжатия больших массивов данных, и переработали его. Старый подход хорошо сжимает данные, но тащит за собой кучу служебных параметров, которые съедают память. TurboQuant от этого хвоста избавляется.
Ключевой элемент называется PolarQuant. Вместо привычного представления данных через оси X, Y и Z система переходит к полярным координатам. Звучит как математическая абстракция, но на практике это позволяет выбросить лишние вычислительные слои и хранить ту же информацию в меньшем объёме памяти.
После основного сжатия всегда остаётся небольшая ошибка. Чтобы её исправить, применяется дополнительный алгоритм, которому нужен всего один бит данных. Внутри работает математический инструмент под названием преобразование Джонсона–Линденштрауса.
Он умеет уменьшать сложные многомерные массивы, не разрушая связи между элементами. Специальный механизм балансирует точность и степень упрощения, чтобы результат оставался достоверным.
Технологию проверили на стандартных тестах для длинных контекстов — LongBench, Needle In A Haystack, ZeroSCROLLS, RULER и L-Eval. В экспериментах участвовали модели Gemma и Mistral. Во всех случаях TurboQuant показал высокую точность при заметно меньшем потреблении памяти.
Отдельно тестировали работу с KV-кэшем — структурой, которая хранит промежуточные данные в языковых моделях и напрямую влияет на скорость ответов. На базе модели Llama 3.1 8B Instruct новый алгоритм обошёл конкурирующие методы сжатия по основным показателям.


