Если использовать нейросеть как «большой словарь токенов» для архиватора, то можно разработать архиватор с рекордным коэффициентом сжатия. Например, сейчас в мировом бенчмарке Large Text Compression Benchmark (LTCB) лидирует компрессор NNCP, в котором Фабрис Беллар реализовал примерно такую идею:

Результаты LTCB на текстовом корпусе enwik9 (первые 1 000 000 000 байт текста англоязычной Википедии — enwiki-20060303-pages-articles.xml, 4,7 ГБ), июнь 2026

Программа

Результат (байт)

Коэффициент
сжатия

Размер декодера
(zip, байт)

Всего
(байт)

gzip 1.3.5

322 591 995

3,10 : 1

38 801

322 630 796

xz 5.2.1

197 331 816

5,07 : 1

36 752

197 368 568

CMIX (v21)

107 693 380

9,24 : 1

223 485

108 244 767

NNCP 3.2

106 632 363

9,32 : 1

628 955

107 261 318

Токенизация текста

Как видим, с помощью нейронок тексты Википедии сжимаются с коэффициентом 9:1. Мы просто конвертируем текст в токены с помощью открытого токенизатора. Например, OpenAI много лет использует один и тот же токенизатор tiktoken, который устанавливается через PyPi:

pip install tiktoken

Этот токенизатор использует алгоритм кодирования байт-пар BPE, изначально созданный в 1994 году именно для сжатия данных.

BPE заменяет наиболее частую пару байтов на новый байт, который не содержится в исходном наборе данных:

  • ABABCABCD ------Исходная строка входных данных

  • XXCXCD----------Пара AB заменяется на неиспользуемый X

  • XYYD------------Пара XC заменяется на неиспользуемый Y

Для восстановления исходного набора данных хранится таблица замен. Токены соответствуют различным объёмам исходного текста: от отдельных символов (включая одиночные цифры или знаки препинания) до целых слов (даже длинных составных):

Токенизация случайного текста из Википедии, источник
Токенизация случайного текста из Википедии, источник

Токенизатор SentencePiece от компании Google тоже основан на алгоритме BPE.

Превращение текста в токены — обратимый процесс, так что полученные токены всегда можно преобразовать обратно в исходный текст. И сжатие происходит без потерь, то есть это классический lossless-кодек.

Многослойные нейросети RNN исключительно эффективны в предсказании следующего слова, и не только слова. После обучения нейросеть усваивает основные признаки любых данных и умеет сама синтезировать или восстанавливать такие данные на основе скудной информации:

Слева: RNN распознаёт признаки в наборе данных. Справа: RNN учится рисовать номера домов, из статьи Андрея Карпаты 2015 года
Слева: RNN распознаёт признаки в наборе данных. Справа: RNN учится рисовать номера домов, из статьи Андрея Карпаты 2015 года

Предсказание аудиосэмплов

Вопрос в следующем: а можно ли повторить такой подход в сжатии звука? То есть разработать аудиокодек на трансформерах, который будет надёжно предсказывать не следующее слово, а следующий звуковой сэмпл?

В 2016 году DeepMind опубликовала генеративную звуковую модель WaveNet, которая вполне реалистично синтезировала человеческую речь в режиме text-to-speech, хотя в «творческом» режиме свободного текста явно запиналась, подбирая слова.

Сэмпл — минимальная единица информации в цифровом звуке. Одна секунда звука содержит десятки тысяч сэмплов, из блога DeepMind
Сэмпл — минимальная единица информации в цифровом звуке. Одна секунда звука содержит десятки тысяч сэмплов, из блога DeepMind

С тех пор технологии значительно продвинулись, и сейчас синтезированная речь в нейронках Gemini, ChatGPT Advanced Voice ModeQwen и Moshi практически неотличима от настоящей.

Нейронный аудиокодек Mimi

В июле 2024 года французская компания Kyutai опубликовала речевую модель Moshi. Это был первый в мире голосовой end-to-end AI с открытыми исходниками, способный вести диалог в реальном времени и свободный для использования всеми желающими.

Модель умеет думать и говорить одновременно, синтезирует свободный поток слов на любую тему, распознавая речь и генерируя ответы. Демо работает во всех браузерах, беседы ограничены 5 мин.

Основные компоненты архитектуры Moshi: языковая модель Helium; нейронный аудиокодек Mimi; потоковая иерархическая генерация семантических и акустических токенов, источник
Основные компоненты архитектуры Moshi: языковая модель Helium; нейронный аудиокодек Mimi; потоковая иерархическая генерация семантических и акустических токенов, источник

Один из основных компонентов модели — нейронный аудиокодек Mimi с остаточной векторной квантизацией и семантическими знаниями, извлечёнными из самонастраиваемой речевой модели.

Токенизация звука

Аудиокодек и выполняет токенизацию звука примерно таким же способом, как вышеупомянутый алгоритм BPE работает с текстом. Более подробно процесс дискретизации звуковых волн в аудиотокены описан в научных работах «SoundStream: end-to-end нейронный аудиокодек» (Zeghidour et al., 2021) и «Сжатие высококачественного аудио с использованием нейросетей» (D´efossez et al., 2023, arXiv:2210.13438v1). Mimi работает как автоэнкодер.

В научной литературе эти токены называются акустическими, так как они моделируют тонкие звуковые особенности и оптимизированы для высококачественной реконструкции звука. Хотя акустические токены отлично подходят для моделей text-to-audio (text-to-speech, text-to-music), для генерации речи требуется сочетать их с семантическими токенами, извлечёнными из самонаблюдаемых моделей речи.

Совместная работа акустических, семантических и текстовых токенов в Moshi, источник
Совместная работа акустических, семантических и текстовых токенов в Moshi, источник

В отличие от акустических аналогов, семантические токены не позволяют восстанавливать высококачественный аудиофайл, но сильно коррелируют с лингвистическим содержанием. Это сходство с языком позволяет генерировать понятную и последовательную речь даже без текстового описания, используя семантические аудиотокены в качестве префикса для предсказания акустических токенов.

Тем не менее, этот гибридный подход к токенизации несовместим с генерацией в реальном времени. Семантические токены обычно не являются причинными и, следовательно, могут быть вычислены только в офлайн-режиме. Более того, генерация акустических и семантических токенов с помощью отдельных энкодеров представляет собой значительную вычислительную нагрузку. Поэтому Mimi использует дистилляцию для передачи некондиционной, высокоуровневой семантической информации в токены, производимые каузальной моделью, что позволяет осуществлять потоковое кодирование и декодирование семантико-акустических токенов.

Разработчики опубликовали отдельный пост в блоге с описанием работы нейронных аудиокодеков на примере Mimi.

Если добавить LLM в пару кодер-декодер, то система сможет предсказывать звук, а декодер — выполнять обратное преобразование
Если добавить LLM в пару кодер-декодер, то система сможет предсказывать звук, а декодер — выполнять обратное преобразование

Базовая архитектура Mimi сделана по образцу SoundStream (от Google) и Encodec (от экстремистов из Meta), включает в себя автоэнкодер SeaNet и квантователь Residual Vector Quantizer (RVQ).

Квантователь RVQ преобразует массив данных в одномерный вид с формой (t/128 * 8), а LLM предсказывает восемь уровней на отдельных временных шагах:

Упрощение трёхуровневой RVQ для подачи в языковую модель
Упрощение трёхуровневой RVQ для подачи в языковую модель

Таким образом, вместо предсказания сэмплов напрямую, нейронный аудиокодек работает в три этапа:

  1. Токенизация звука.

  2. Предсказание следующих токенов в LLM.

  3. Восстановление оригинала.

Если зафиксировать часть семантических токенов, модель сгенерирует остальные
Если зафиксировать часть семантических токенов, модель сгенерирует остальные

Компания Kyutai — это вообще один из редких примеров успехов европейской науки в области ML и AI, потому что в этой сфере Старый Свет немного уступает США и Китаю. Но вот один из первых нейронных аудиокодеков разработали именно здесь.

Другие модели и кодеки

В 2025 году аудиокодек Mimi стал практически стандартом для сжатия звука в токены, он токенизирует аудио со скоростью 12,5 Гц (около 24 токенов в секунду для каждого слоя квантования), эффективно сжимая голос и окружающие звуки.

После Moshi появились другие модели, которые нативно поддерживают звук, вот некоторые из них:

  • CSM (Sesame, 2025): голосовой чат, Llama + Mimi;

  • Qwen3-Omni (Alibaba, 2025): мультимодальная LLM от Alibaba. Аудио на выходе генерируется отдельной моделью talker, а её выдача не подаётся обратно, так что это по сути текстовая модель с функцией text-to-speech;

  • MiMo-Audio (Xiaomi, 2025): только звук;

  • LFM2-Audio (Liquid AI, 2025): аудио/текст, использует кодек Mimi.

Но рынок развивается очень стремительно, и уже в 2026−2027 гг. может многое измениться. Кроме упомянутых выше SoundStream и Encodec, можно упомянуть ещё нейронные аудиокодеки DAC (Descript Audio Codec) и SNAC (Neural Audio Codec).

В качестве бонуса. Специализированный компрессор для FP64

Вообще, технологии сжатия данных не стоят на месте, каждый год появляются новые научные работы в этой области, исследования и конкретные прикладные разработки, которые можно применять на практике. Например, недавно вышел любопытный архиватор fc (Floating-Point Compressor), это эффективный новый lossless-компрессор для потоков 64-битных цифр с плавающей запятой формата IEEE-754 (FP64, float64, числа двойной точности или double). Он не выполняет токенизации, но теоретически тоже может использоваться для сжатия звука, как и нейронные аудиокодеки, или вместе с ними.

64-битные числа состоят из знака (1 бит), экспоненты (11 бит до запятой) и мантиссы (оставшиеся 52 бита, после запятой).

Формат числа двойной точности
Формат числа двойной точности

При малейшем изменении числа мантисса в двоичном коде сильно изменяется, поэтому для обычных архиваторов она представляет случайный шум. Например, у чисел 2,5439 и 2,5438 совпадают знак, экспонента и первые 13 знаков мантиссы, а далее идёт 39 бит случайного шума, который практически не сжимается:

Мантисса 2,5439 в double: 01000101100111101000000111110010000100101101011101110

Мантисса 2,5438 в double: 01000101100110110011110100000111110010000100101101106

Специализированные кодеки разделяют поток на три независимые дорожки и применяют математическое предсказание к мантиссам соседних чисел, превращая хаотичный шум в более простые для сжатия цепочки данных. Конкретно fc разделяет поток на адаптивно изменяющиеся блоки, а потом использует набор специализированных предсказателей/преобразователей/кодеров для чисел с плавающей запятой — и проверяет, какой из них наиболее эффективен для конкретного блока чисел. То есть он работает как метаархиватор, используя несколько разных методов для сжатия и выбирая лучший.

В результате fc в несколько раз эффективнее стандартных архиваторов, а также неплохо выглядит (чуть ниже среднего) по скорости кодирования и декодирования:

Кодек

Степень сжатия

Кодирование (МБ/с)

Декодирование (МБ/с)

fc

3,07

120

1277

zstd -3

2,07

528

1556

zstd -9

2,09

111

1572

fpzip

1,71

123

121

lz4hc -9

1,69

51

5835

gorilla

1,66

683

971

lz4

1,62

2176

5353

Компрессор предназначен для временны́х рядов, научных данных, симуляций и аналитики, где числа часто имеют структуру: это гладкие кривые, повторяющиеся значения, фиксированные приращения, периодические сигналы, предсказуемые дельты или мантиссы с низкой энтропией.

Если автор в будущем расширит программу для поддержки 32-битных float, то он подойдёт и для lossless-сжатия высококачественного звука.

© 2026 ООО «МТ ФИНАНС»

Комментарии (18)


  1. timmfilpp
    15.06.2026 10:17

    Получается, что вместо обычного сжать файлы мы уже почти учим модель понимать данные и угадывать их дальше. Если это реально доведут до ума, архиваторы вообще изменятся до неузнаваемости.


    1. Affdey
      15.06.2026 10:17

      Ну это не настоящее сжатие же, это индексация во внешней БД. Очень запутанная и многомерная, но индексация.


      1. Zoolander
        15.06.2026 10:17

        архиваторы по сути всегда работали по принципу составления словаря повторяющихся фрагментов

        а как по вашему работает настоящее сжатие, вы деструктивное сжатие как у JPEG подразумеваете что ли?


        1. Void-Cowboy
          15.06.2026 10:17

          так сейчас то жмет по алгоритму и словарь в архиве, а с ИИ словарь будет внешний и не прозрачный. Мало того что никакой гарантированости данных, так еще и будет строго заточено под конкретную модель (нельзя сжать одной, расжать другой)


    1. hrusha
      15.06.2026 10:17

      Кажется тот пример, что описан в начале статьи, хорошо себя проявляет именно на человеческих текстах, когда у него слово "district" это один токен. Если подобным алгоритмом сжимать то, что не является текстом, эффект будет не столь разителен


  1. Dhwtj
    15.06.2026 10:17

    Самое эффективное сжатие это URL


    1. Moog_Prodigy
      15.06.2026 10:17

      xxx> я умею сжимать инфу в сто тыщ миллионов раз!

      xxx> спроси меня содержание всех серий Санта Барбары, и я тебе отвечу

      xxx> херня


  1. PapaBubaDiop
    15.06.2026 10:17

    разве бывают лосслесс автоенкодеры?


  1. mydigitalhabb
    15.06.2026 10:17

    32 float ? CD качество это же 16 битный int.

    И ни слова про FLAC.


  1. riky
    15.06.2026 10:17

    дойдем до того что с файлообменников будут скачиваться промты (меньше 1кб) и по ним с температурой 0 (или CFG) будет генерироваться в реалтайм музыка. ну и модель на пару гигов один раз скачать…


    1. funca
      15.06.2026 10:17

      - Вы слышали, как поет Карузо?

      - Ой, терпеть не могу! Картавит, фальшивит, никудышный голос...

      - А вы сами его слушали?

      - Да, мне вчера Mimi по промту напел: "спой Vesti la giubba как Карузо"


    1. Void-Cowboy
      15.06.2026 10:17

      я думаю такое будет когда нейросети устаканится и будут более широко внедрены

      будет как с эмодзи - примерно одно и тоже только в разных стилях на базе короткого текстового кода

      но такое зайдет только для вообще нестабильных сетей где каждый килобайт на счету и/или сверх безопасное что бы быть уверенным что в картинке ничего нет


    1. DGN
      15.06.2026 10:17

      Вы хотели сказать "модель на пару петов?"


  1. Refridgerator
    15.06.2026 10:17

    Про звук всё неправда написано. И синтез, и анализ речи/музыки делают в частотном домене через short time fourier tranaform. Предсказание следующего сэмпла имеет смысл только в lossless кодеках типа flac, и там никакие словари не помогут - потому что природа звука, равно как и его восприятие, принципиально отличается от текста.


    1. mydigitalhabb
      15.06.2026 10:17

      Так может научаться (или уже научились) через ИИ раскладывать музыку на отдельные ноты-инструменты, и хранить некий midi/st3 + банки, синтезируя музыку на лету, подставляя на нужную высоте сэмпл и накручивая ревёрб (который определился на стадии нейросжатия)

      И в итоге 10 альбомов одного исполнителя будут хороши сжиматься, если там используются одинаковые инструменты и голоса.


  1. alexs963
    15.06.2026 10:17

    И будет как в анекдоте, на одном конце говорят «давай пас своим», на другом получат «давай по своим».


  1. mydigitalhabb
    15.06.2026 10:17

    Кстати, про преобразование речи в текст и последующий синтез, тем же голосом - наверняка это будет (и даже уже есть переводчики в реальном времени тем же голосом), но основная проблема здесь - неправильное распознования (ИИ услышал не те слова). Такая же проблема была в сильном сжатии Djvu, где после сканирования страница распозновалась и превращалась в текст, но иногда путались цифры 6 и 8, что особенно не нравилось бухгалтерам.


  1. kujoro
    15.06.2026 10:17

    Пегий дудочник, начало