Выравнивание Vision Language Models в TRL: как Hugging Face упростил RLHF и DPO для мультимодальных моделей
Hugging Face объявил о поддержке выравнивания Vision Language Models (VLMs) в библиотеке TRL (Transformer Reinforcement Learning). Это означает, что разработчики теперь могут применять методы RLHF (Reinforcement Learning from Human Feedback) и DPO (Direct Preference Optimization) для мультимодальных

Hugging Face объявил о поддержке выравнивания Vision Language Models (VLMs) в библиотеке TRL (Transformer Reinforcement Learning). Это означает, что разработчики теперь могут применять методы RLHF (Reinforcement Learning from Human Feedback) и DPO (Direct Preference Optimization) для мультимодальных моделей, таких как LLaVA, Idefics2 и другие, используя стандартные инструменты TRL. Ранее такие задачи требовали сложных кастомных решений, а теперь процесс стал доступным для широкого круга специалистов, позволяя улучшать качество ответов моделей, которые одновременно обрабатывают изображения и текст. Это важный шаг к созданию более безопасных и полезных мультимодальных AI-систем.
Зачем нужно выравнивание Vision Language Models
Мультимодальные модели, которые работают одновременно с текстом и изображениями, становятся всё популярнее. Они используются в чат-ботах с поддержкой картинок, системах визуального вопросно-ответного взаимодействия и автоматическом анализе контента. Однако без выравнивания такие модели могут выдавать нерелевантные, вредные или просто не соответствующие ожиданиям пользователя ответы. Выравнивание с помощью RLHF или DPO позволяет настроить модель на предпочтения человека, делая её более полезной и безопасной.
Ранее для выравнивания VLMs разработчикам приходилось писать собственные пайплайны, интегрировать разные библиотеки и решать множество технических проблем. Hugging Face устранил этот барьер, добавив поддержку VLMs в TRL — популярную библиотеку для обучения с подкреплением в NLP. Теперь любой, кто знаком с TRL, может легко применить те же методы к мультимодальным моделям.
Как работает поддержка VLMs в TRL
TRL теперь включает готовые компоненты для обучения VLMs с использованием предпочтений человека. Для RLHF используется стандартный подход: сначала собираются предпочтения от людей (какой ответ лучше), затем обучается модель вознаграждения, и наконец, основная модель оптимизируется с помощью PPO (Proximal Policy Optimization). Для DPO процесс проще: модель напрямую обучается на парах предпочтений без отдельной модели вознаграждения.
Библиотека поддерживает популярные архитектуры VLMs, такие как LLaVA, Idefics2 и другие модели на базе трансформеров. Для работы требуется TRL версии 0.12 или выше. Hugging Face предоставляет примеры скриптов и ноутбуки, которые помогут быстро начать. Например, можно взять предобученную VLM, загрузить датасет с предпочтениями (например, с изображениями и двумя вариантами ответа) и запустить обучение одной командой.
Какие модели и методы поддерживаются
На данный момент TRL поддерживает обучение VLMs с помощью DPO и RLHF (через PPO). В будущем, возможно, добавятся и другие методы, такие как KTO (Kahneman-Tversky Optimization) или более новые подходы. Среди поддерживаемых моделей — LLaVA (Large Language and Vision Assistant), Idefics2 от Hugging Face, а также любые модели, совместимые с библиотекой transformers и имеющие vision encoder.
Для DPO требуется, чтобы модель имела возможность обрабатывать два варианта ответа (выбранный и отклонённый) вместе с изображением. TRL автоматически обрабатывает токенизацию и передачу данных. Для RLHF необходимо сначала обучить модель вознаграждения, что также поддерживается через TRL.
Как начать использовать выравнивание VLMs
Чтобы начать, установите TRL версии 0.12 или выше: pip install trl=0.12. Затем выберите предобученную VLM, например, llava-hf/llava-1.5-7b-hf. Подготовьте датасет в формате, который TRL ожидает для DPO или RLHF. Для DPO датасет должен содержать поля: изображение, prompt, chosen (выбранный ответ) и rejected (отклонённый ответ). Для RLHF — только промпты и ответы для сбора предпочтений.
Пример кода для DPO: python from trl import DPOTrainer from transformers import AutoProcessor, AutoModelForVision2Seq
model = AutoModelForVision2Seq.frompretrained("llava-hf/llava-1.5-7b-hf") processor = AutoProcessor.frompretrained("llava-hf/llava-1.5-7b-hf")
trainer = DPOTrainer( model=model, processor=processor, traindataset=dataset, args=trainingargs, ) trainer.train()
После обучения модель можно сохранить и использовать для инференса как обычно.
Какие преимущества даёт выравнивание VLMs
Выравнивание позволяет модели лучше понимать контекст изображения и давать более точные, релевантные ответы. Например, если пользователь показывает фотографию и спрашивает «Что это?», выровненная модель не просто опишет объект, но и учтёт возможные предпочтения пользователя (например, даст краткий ответ вместо длинного описания). Кроме того, выравнивание снижает вероятность генерации вредного или неэтичного контента, что критично для коммерческих продуктов.
Благодаря интеграции в TRL, разработчики могут легко экспериментировать с разными методами выравнивания и быстро итеративно улучшать модели. Это особенно важно для стартапов и исследовательских групп, которые не имеют ресурсов на разработку собственных пайплайнов.
Какие ограничения и неизвестные аспекты
Пока не раскрыты точные требования к вычислительным ресурсам для обучения VLMs с помощью TRL. Однако, учитывая, что модели типа LLaVA 7B требуют значительной памяти GPU (около 16-24 ГБ для инференса), обучение, вероятно, потребует ещё больше ресурсов. Hugging Face рекомендует использовать облачные GPU или локальные серверы с достаточной памятью.
Также не указано, какие датасеты лучше всего подходят для выравнивания VLMs. Обычно используются датасеты с предпочтениями, собранные вручную, но их создание — трудоёмкий процесс. Возможно, в будущем появятся публичные датасеты для VLMs, аналогичные тем, что есть для текстовых моделей.
Планы по поддержке других методов выравнивания, таких как PPO (уже частично поддерживается через RLHF) или KTO, пока не объявлены. Однако сообщество Hugging Face активно развивает TRL, и новые методы могут появиться в следующих релизах.
Кому будет полезна эта новость
Разработчики, работающие с мультимодальными AI-моделями, исследователи в области компьютерного зрения и NLP, а также компании, создающие чат-ботов с поддержкой изображений или системы визуального вопросно-ответного взаимодействия, получат мощный инструмент для улучшения своих моделей. Интеграция в TRL снижает порог входа и ускоряет разработку.
Заключение
Поддержка выравнивания Vision Language Models в библиотеке TRL — значительный шаг вперёд для сообщества AI. Это делает передовые методы RLHF и DPO доступными для мультимодальных моделей, упрощая создание безопасных и полезных систем. Разработчикам стоит попробовать новые возможности TRL уже сегодня, чтобы улучшить свои VLM-решения.