Multi-Block Diffusion: Как текст научили генерироваться пачками, а не по слову
Разбираем BD-LM: новый подход к генерации текста через блочную диффузию. Сравнение с авторегрессией, скорость, качество, перспективы.
Авторегрессия устала. Диффузия не понимала текст. Нужен был третий путь
Если вы следили за генеративным AI последние пару лет, то заметили странную вещь. Изображения, видео, аудио — всё давно генерируется диффузией. Текст же упрямо сидит на авторегрессии. Почему? Да потому что язык — это последовательность. Сказал слово, потом следующее. Диффузия же привыкла шуметь и денисить всё сразу. Попытки перетащить диффузию в текст были смелыми — Nemotron Labs попробовали, Sber с GFusion-10B ускорили генерацию на 70%. Но качество всё ещё хромало: диффузионные LLM часто галлюцинировали на длинных дистанциях, теряли логику.
И вот в первой половине 2026 года группа исследователей из нескольких университетов (MIT, Stanford, Tsinghua) выкатила preprint с дерзким названием — Multi-Block Diffusion Language Models (BD-LM). Идея проста до гениальности: зачем шуметь весь текст, если можно шуметь блоками? Под капотом — гибрид, который берёт лучшее от двух миров.
Суть BD-LM: текст разбивается на блоки (например, предложения или абзацы). Во время обучения каждый блок зашумляется независимо. Модель учится восстанавливать блок целиком, глядя на контекст соседних блоков. Генерация — итеративный процесс: на каждом шаге модель параллельно денисит все незашумлённые блоки, постепенно уменьшая шум.
Почему блоки, а не токены? Скорость, чёрт возьми
Авторегрессивные модели (GPT, LLaMA) генерируют по одному токену. Чтобы написать абзац из 50 слов, нужно 50 шагов. BD-LM за то же количество шагов может сгенерировать 5 блоков по 10 слов — итого 50 слов за 5 шагов. Ускорение в 10 раз. Конечно, шаги у BD-LM дороже (нужно обработать все блоки сразу), но с современными GPU это даёт выигрыш в 3–5 раз по времени в реальных задачах.
Сравнительная табличка (для тех, кто любит цифры):
Параметр
Autoregressive (GPT-4o, Llama 4)
Standard Diffusion (GFusion-10B)
BD-LM (Multi-Block)
Скорость генерации (токенов/сек)
30–50
60–80
120–180
Качество (Perplexity на тесте)
8.2
11.4
9.0
Сложность обучения
Высокая (данные + compute)
Очень высокая
Средняя (нужно разбиение на блоки)
Контроль длины
Точный (токен за токеном)
Плохой (длина фиксирована)
Гибкий (блоки + маска)
Да, по качеству BD-LM пока не дотягивает до лучших авторегрессивных моделей, но разрыв сокращается. И главное — BD-LM позволяет генерировать длинные связные тексты без потери контекста. Если классическая диффузия для текста страдала «размытостью» на больших расстояниях, то блочная структура сохраняет локальную согласованность внутри блока и глобальную — между блоками через attention.
Как это устроено: без сложных формул, но с пониманием
Архитектура BD-LM — это трансформер с модифицированным механизмом шумоподавления. Входная последовательность разбивается на блоки фиксированной (или переменной) длины. Каждый блок проходит через embedding, маскируется (зашумляется) с помощью случайного Gaussian noise, и модель обучается предсказывать оригинальные токены блока, зная соседние блоки (которые могут быть как чистыми, так и зашумлёнными).
Хитрость в том, что на этапе инференса модель не генерирует блоки последовательно. Вместо этого все блоки инициализируются шумом, и на каждом шаге модель денисит их все параллельно, но с разной степенью шума — так называемый multi-step block refinement. После нескольких итераций шум уменьшается, и блоки «проявляются» как проявка фотоплёнки.
«Блочная диффузия — это как собрать пазл, где вы одновременно видите все кусочки, но некоторые ещё в тумане. С каждым шагом туман рассеивается, и картинка становится чётче. Только пазл — это текст, а туман — гауссов шум» — комментирует один из авторов BD-LM.
Ключевое отличие от обычной диффузии — модель не пытается восстановить всё сразу, а фокусируется на блоках. Это снижает вычислительную сложность (O(n²) превращается в O((n/k)²), где k — размер блока) и позволяет использовать более крупные блоки (до 1024 токенов) без потери качества.
Практические кейсы: где BD-LM уже показал себя
Пока что BD-LM существует в виде исследовательского прототипа, но команда уже провела бенчмарки на нескольких датасетах:
Story generation (WritingPrompts) — BD-LM сгенерировал рассказы на 2–3 страницы с лучшей когезией, чем GPT-4 и гибридные архитектуры малого размера. Человеческая оценка: 72% против 65% у GPT-4.
Code generation (HumanEval) — BD-LM набрал 78% pass@1, что на 5% выше, чем у StarCoder2, но на 3% ниже, чем у Claude 4. Однако BD-LM генерирует код в 2 раза быстрее.
Документация и отчёты — модель справляется с длинными шаблонными текстами почти без галлюцинаций.
Звучит красиво, но есть и подводные камни. BD-LM требует тонкой настройки размера блока: слишком маленькие блоки (менее 16 токенов) приближаются к авторегрессии и теряют преимущество в скорости; слишком большие (более 256) — модель начинает «забывать» порядок внутри блока и генерировать бессвязицу. Оптимальный размер — 32–64 токена (примерно 1–2 предложения).
Важный нюанс: BD-LM пока не умеет генерировать текст «с нуля» в том же смысле, что и GPT. Ему нужен seed-блок — первое предложение или тема. Но это решается простой «разогревочной» генерацией через авторегрессию на первых токенах, после чего модель переключается в блочный режим. В статье авторы называют это two-stage inference.
Что дальше? Коммерческий потенциал
Уже сейчас видно, что BD-LM станет основой для нового поколения AI-писателей и ассистентов кода. Скорость генерации в 3–5 раз выше при сопоставимом качестве — это то, что нужно для продакшена. Не удивлюсь, если в конце 2026 года мы увидим первую коммерческую модель на основе блочной диффузии от OpenAI или Anthropic.
А пока — локальные модели активно тестируют BD-LM для синтеза данных. И результаты впечатляют: сгенерированные синтетические датасеты получаются более разнообразными, чем от авторегрессии, и менее зашумлёнными, чем от обычной диффузии.
Лично я жду, когда кто-нибудь объединит BD-LM с RAG (например, этот гайд показывает, как легко собрать RAG-систему — представьте, если в неё засунуть блочную генерацию для ответов на длинные вопросы). Получится молниеносный AI-ассистент, который не «задумывается» по словам, а выдаёт готовые абзацы.
Пока это всё — эксперимент. Но первые шаги выглядят многообещающе. Текст перестал быть последовательным? Нет, он стал блочным. И, кажется, это именно то, что нужно для следующего скачка в генерации.