Google разработалновую архитектуру нейронных сетей под названием Titans, которая может решить проблему с памятью в LLM-моделях. Теперь модели смогут обрабатывать больше данных за один раз, не увеличивая затраты на вычисления. Titans помогает находить и сохранять важные кусочки информации даже в очень длинных текстах.
В основе Titans лежит сочетание стандартных блоков внимания и “нейронной памяти”, что позволяет моделям одновременно работать с текущей информацией и запоминать данные для долгосрочного использования. Такие модели могут справляться с миллионами токенов и при этом работают быстрее и точнее, чем классические LLM или их альтернативы, такие как Mamba и Samba.
Обычные модели используют механизм самовнимания (self-attention), который анализирует связи между словами. Но если текст слишком длинный, затраты на вычисления резко возрастают. Некоторые новые подходы с меньшими затратами уступают по точности, так как не могут учитывать все детали. Titans предлагает баланс: сохранять и использовать как короткую, так и долгосрочную память.
Ключевая идея Titans – модуль “нейронной долгосрочной памяти”, который может запоминать новую информацию прямо во время работы модели. Например, если данные неожиданны или отличаются от уже известных, модуль считает их важными и сохраняет. Чтобы память не перегружалась, ненужная информация автоматически удаляется.
Архитектура Titans включает три компонента:
- Ядро. Действует как кратковременная память и обрабатывает контекст с помощью классического механизма самовнимания;
- Долгосрочная память. Хранит данные за пределами текущего контекста;
- Постоянная память. Хранит основные знания, полученные во время обучения.
В тестах на моделях Titans с 170-760 миллионами параметров архитектура показала высокую производительность, особенно на задачах с длинными текстами. Например, в задачах, где нужно находить нужные данные среди большого объёма информации, Titans обошёл GPT-4, GPT-4o-mini и Llama-3.
Контекстное окно Titans удалось увеличить до 2 миллионов токенов, при этом затраты на память остались низкими. Это открывает большие возможности для создания приложений, где можно интегрировать новые данные напрямую в запросы, без сложных дополнительных методов. Google планирует опубликовать код Titans для PyTorch и JAX, чтобы разработчики могли использовать эту архитектуру.