Diffusion Language Models
Узнай, как диффузионные языковые модели создают и редактируют текст посредством итеративного устранения шума, а также изучи трансформеры, применения, преимущества и ограничения.
Диффузионные языковые модели — это генеративные модели, которые создают или редактируют текст с помощью итеративного устранения шума, а не генерируют каждый токен строго слева направо. Они начинают с искажённой последовательности, часто содержащей замаскированные, заменённые или неопределённые токены, и многократно уточняют несколько позиций, пока текст не становится связным. Этот подход объединяет идеи языкового моделирования и диффузионных моделей, предлагая альтернативу традиционной генерации следующего токена.
Как работают диффузионные языковые модели#
Сначала текст разделяется с помощью токенизации на слова, субслова, символы или другие дискретные единицы. Во время обучения прямой процесс искажения постепенно удаляет информацию из последовательностей токенов. В зависимости от реализации токены могут заменяться символами маски, случайно выбранными альтернативами или зашумлёнными непрерывными представлениями, называемыми эмбеддингами.
Модель обучается обратному процессу — предсказывать более чистые версии искажённых последовательностей. Во время инференса она начинает с сильно замаскированного или зашумлённого блока и выполняет несколько шагов уточнения. На ранних шагах формируются общий смысл и структура, а на последующих исправляются словарный состав, грамматика, форматирование и локальная согласованность.
Многие диффузионные языковые модели используют трансформер для обработки последовательности. Трансформеры хорошо подходят для этой задачи, поскольку их механизм внимания может связывать каждый токен с окружающим контекстом. В документации PyTorch по Transformer представлен полезный обзор этой базовой архитектуры.
В отличие от системы с фиксированным заполнением пропусков, диффузионная генерация позволяет многократно пересматривать предсказания. Токен, выбранный на одном шаге, не обязательно является окончательным: на последующих итерациях он может быть изменён, если остальная часть последовательности предоставляет более подходящий контекст. В обзоре текстовой диффузии от Google DeepMind показан этот итеративный шаблон генерации на уровне блоков.
Диффузионные модели и связанные понятия#
Несколько тесно связанных терминов описывают разные цели или архитектуры:
- Авторегрессионные большие языковые модели генерируют токены последовательно, при этом каждое предсказание зависит от ранее созданного текста. Этот каузальный процесс продемонстрирован в руководстве по авторегрессионной генерации текста в TensorFlow. Диффузионные модели вместо этого могут обновлять множество позиций на каждом шаге уточнения.
- Маскированные языковые модели предсказывают намеренно скрытые токены, используя контекст с обеих сторон. В примере маскированного языкового моделирования в Keras продемонстрирована эта цель обучения. Диффузионные языковые модели развивают эту идею в полноценный процесс генерации с несколькими уровнями искажения и итерациями устранения шума.
- Stable Diffusion — это система генерации изображений, а не большая языковая модель. Сервисы Stable Diffusion для работы с изображениями от Stability AI создают и редактируют визуальный контент, тогда как диффузионные языковые модели работают с текстовыми токенами или их представлениями.
- Диффузионные трансформеры обозначают использование трансформеров внутри диффузионных систем, обычно для генерации изображений или видео. Диффузионная языковая модель определяется целью генерации текста, а не только архитектурой нейронной сети.
Практические применения#
Одно из конкретных применений — редактирование документов и кода. Вместо добавления текста после курсора диффузионная языковая модель может уточнять весь черновик или выбранный фрагмент. Например, она может восстановить отсутствующую функцию, одновременно изменяя имена переменных, импорты и комментарии во всём блоке. Возможность использовать контекст до и после фрагмента полезна, когда исправления в одном месте влияют на другое.
Второе применение — мультимодальный анализ. Система компьютерного зрения может извлечь из изображения фактическую информацию, после чего диффузионная языковая модель итеративно составит отчёт, подпись или ответ на основе этих наблюдений. Например, обнаружение объектов может выявить автомобили и людей на сцене дорожного движения, прежде чем языковой компонент подготовит краткое описание происшествия.
В следующем рабочем процессе Ultralytics YOLO26 используется для создания структурированного визуального контекста для последующей генерации текста:
from ultralytics import YOLO
# Run object detection on a sample image
model = YOLO("yolo26n.pt")
results = model("https://ultralytics.com/images/bus.jpg")
result = results[0]
# Convert detections into compact language-model context
detections = result.summary()
object_names = sorted({item["name"] for item in detections})
visual_context = ", ".join(object_names)
print(visual_context)Рабочий процесс предсказаний YOLO возвращает структурированные выходные данные, а метод Results.summary() преобразует обнаружения в словари, которые удобнее передавать в языковой конвейер. Такое разделение позволяет модели компьютерного зрения предоставлять обоснованные наблюдения, а языковой модели — выполнять итеративную композицию.
Преимущества, ограничения и практические рекомендации#
Диффузионные языковые модели могут предлагать несколько токенов параллельно, пересматривать предыдущие решения и естественным образом поддерживать заполнение пропусков или редактирование с ограничениями. Однако параллельное предсказание не гарантирует меньшую сквозную задержку: генерация по-прежнему требует нескольких шагов устранения шума, а скорость зависит от длины последовательности, размера модели, оборудования и стратегии выборки.
Текст также является дискретным, поэтому постепенное искажение для него менее естественно, чем добавление шума к непрерывным пикселям изображения. Системы с неправильной конфигурацией могут порождать повторы, пропускать обязательные сведения, без необходимости изменять корректный текст или испытывать трудности с определением длины вывода.
Командам следует оценивать точность выполнения задачи, фактологическую достоверность, стабильность редактирования, задержку и использование ресурсов на репрезентативных запросах. В рекомендациях Google Cloud по оценке генеративного ИИ предлагается сочетать автоматические метрики с оценкой человеком, поскольку качество языка зависит от контекста. Для критически важных развертываний также следует применять структурированный процесс, например Рамочную программу NIST по управлению рисками ИИ.
Для визуальных приложений Ultralytics Platform поддерживает разметку наборов данных, обучение моделей, развертывание и мониторинг, помогая командам создавать компонент восприятия, который может обеспечивать контекст для последующих языковых рабочих процессов на основе диффузии.






