BYOD: Обучение только LoRA, одна GPU Colab для превращения авторегрессионной модели в диффузионную языковую модель (Build Your Own DLM)

Рецепт конвертации «авторегрессионная модель → маскированная диффузионная языковая модель» с обучением только LoRA: все параметры базовой модели заморожены, адаптеры составляют 4.1–5.8% от итоговых параметров; после конвертации модель может начинать с полностью замаскированной последовательности, выполнять параллельное предсказание, итеративное удаление шума и использовать двунаправленный контекст в тестах с контролируемым вниманием. Авторы успешно конвертировали четыре модели — Gemma 2 9B, Llama 3.1 8B, Qwen2.5 7B и Ministral 8B — без специальной настройки архитектуры, заявляя, что Ministral является первым публично задокументированным преобразованием модели семейства Mistral.

Рецепт конвертации «авторегрессионная модель → маскированная диффузионная языковая модель» с обучением только LoRA: все параметры базовой модели заморожены, адаптеры составляют 4.1–5.8% от итоговых параметров; после конвертации модель может начинать с полностью замаскированной последовательности, выполнять параллельное предсказание, итеративное удаление шума и использовать двунаправленный контекст в тестах с контролируемым вниманием. Авторы успешно конвертировали четыре модели — Gemma 2 9B, Llama 3.1 8B, Qwen2.5 7B и Ministral 8B — без специальной настройки архитектуры, заявляя, что Ministral является первым публично задокументированным преобразованием модели семейства Mistral.

Лайков 8 · Звёзд на GitHub 2

Причины

  • Низкая стоимость: авторы утверждают, что каждая конвертация требует 25,000 итераций и до 102.4 млн токенов, завершается за 3.1–4.0 часов на одной GPU Google Colab; после слияния адаптеров обратно в базовую модель количество параметров не меняется.
  • Авторы заявляют, что лучшая модель BYOD-Gemma показывает средний результат 50.6% по девяти задачам, тогда как LLaDA 8B Instruct в той же системе оценки показывает 51.9%, при этом сохраняется большая часть знаний родительской модели.
  • Можно увидеть напрямую: для всех четырёх конвертаций есть онлайн-демо на Hugging Face Spaces, LoRA-адаптеры для Gemma / Llama и других моделей загружены на Hugging Face (например, Ruurd/BYOD-Gemma-2-9B), код обучения и оценки распространяется под лицензией MIT, а в ноутбуке Colab можно наблюдать кривые потерь и процесс удаления шума во время обучения.

Использование

  • Самый быстрый способ: откройте ноутбук Colab из README — notebooks/train_diffusion.ipynb, выберите модель для обучения, на шаге 6 откройте страницу интерактивного вывода.
  • Локально: выполните pip install -e ., скопируйте .env.example в .env и укажите токен только для чтения для Hugging Face, затем запустите python train.py --model llama --mode quick (режим quick использует малые модели уровня 1B и LoRA ранга 128, не воспроизводя результаты из статьи; режим paper использует LoRA ранга 1024, оригинальные запуски требовали 96 ГБ видеопамяти).
  • Вывод: используйте load_hub_adapter_session("Ruurd/BYOD-Gemma-2-9B", …) из lad-generic вместе с denoise(…); обычный causal generate() не подходит; python merge_adapter.py позволяет слить адаптер в базовую модель.

Риски

  • Авторы сами указывают, что качество открытой генерации при малом числе шагов является основным слабым местом: при генерации 128 токенов за 64 шагов перплексия составляет 8.3–11.1, у LLaDA — 4.1, у исходной авторегрессионной модели — 2.2–3.0.
  • Родительские модели, такие как Llama и Gemma, находятся в закрытых репозиториях, требующих принятия условий использования; адаптеры наследуют лицензию базовой модели (например, лицензию Gemma).
  • Кодовые бенчмарки в оценке выполняют сгенерированный Python-код, в README рекомендуется использовать одноразовое окружение; результаты приведены по данным авторов.

Открыть · Код · Страница статьи на Hugging Face

Hugging Face Daily Papers

Открыть последние новости ИИ