Недавно в приложении «Алиса» появился режим реального времени, работающий на основе мультимодальной нейросети от Яндекса. Теперь Алиса может через камеру смартфона распознавать объекты и рассказывать о них. До этого технология уже применялась в Поиске по картинкам, Умной камере и Нейроэксперте. Технология постоянно развивалась, и пришло время рассказать, чего мы достигли за последние полгода.
Я из команды компьютерного зрения в Яндексе. Сегодня я поделюсь тем, какой путь прошла наша VLM за это время. Моя коллега Дарья расскажет о том, как устроено зрение Алисы. Мы опишем весь процесс: от архитектуры и сбора данных до финальных замеров качества и скорости.
Что такое VLM
В прошлой статье я подробно рассказывал о задачах, архитектуре и обучении нашей VLM. Здесь напомню основное.
VLM – это визуально-языковая модель, которая объединяет работу с текстом и изображениями. Она получает на вход картинку и текстовый запрос, а выдаёт текстовый ответ.
Архитектура состоит из трёх частей:
языковая модель – ничего не знает о картинках;
кодировщик изображений – ничего не знает о текстах;
адаптер – связывает их воедино.
Новая VLM построена на базе свежего поколения YandexGPT 5.
Как учили модель
Базой послужил претрейн от YandexGPT, а дальше модель проходила несколько этапов обучения на мультимодальных данных. На каждом этапе обучались все веса.
Переход с YandexGPT 4 на пятую версию уже дал заметный рост качества. Но мы не остановились и сделали много улучшений в процессе обучения.
Претрейн
За полгода мы научились собирать качественный датасет из разных источников:
веб-документы с изображениями;
пары картинка-описание;
данные с распознаванием текста;
качественные текстовые документы.
В итоге получился датасет на 400 миллиардов токенов.
SFT
В последней версии качество VLM сравнялось с качеством чисто текстовой модели. Долго подбирали баланс между текстовыми и мультимодальными данными, чтобы модель была сильна в обоих направлениях. Улучшили работу с таблицами и другими сложными случаями.
RL
На финальной стадии использовали метод обучения на парах удачных и неудачных ответов. Собирали ответы нескольких моделей, люди выбирали лучшие, и модель училась на этой разметке. Оказалось, что важнее качество, а не количество – хватило примерно 20 тысяч пар.
Как проверяли качество
Используем два подхода:
асессоры сравнивают ответы двух моделей и выбирают лучший;
замеры на открытых тестах.
Для нас важнее первый способ – он ближе к реальным задачам пользователей.
По нашим данным, сейчас самая сильная открытая модель – Qwen2.5-VL. Сравнивали с ней.
В сравнении моделей лицом к лицу наши результаты:
лёгкая версия обходит Qwen2.5-VL-7B с результатом 56,6% против 43,4%;
профессиональная версия обходит Qwen2.5-VL-72B с результатом 53,3% против 46,7%.
На открытых тестах мы уступаем, но гонка за синтетическими показателями не наша цель – мы делаем продукты для людей.
Как зрение работает в Алисе
У Алисы два режима работы с изображениями:
в чате – можно приложить картинку и задать вопрос, ответ будет развёрнутым;
в реальном времени – голосовой диалог с камерой, ответы короткие и живые.
В обоих режимах работает одна и та же модель – это проще и экономнее.
Как устроен пайплайн
На вход подаётся:
картинка (из чата или кадр с камеры);
вопрос пользователя;
метка режима;
история разговора.
Мы не заставляем модель отвечать сразу из головы – сначала идём в интернет за информацией и только потом даём ответ. Такой подход используют многие крупные игроки.
Преобразователь запросов
Эта модель превращает вопрос пользователя в поисковый запрос. Например, «Что это за зверь?» превращается в «название животного на фото». Для Алисы мы доучили её на диалоговых примерах.
Собиратель ответа
Это доработанная VLM, которая формирует финальный ответ с учётом внешней информации и характера Алисы.
Что мы перепробовали
Главные сложности были в двух вещах: качество на реальных сценариях и скорость для живого режима.
Для генерации диалогов использовали разные приёмы:
диалоги с приближением – постепенное уточнение вопроса при увеличении масштаба;
диалоги с объединением – вопросы про две картинки и их связь;
диалоги с переспросом – уточняющие вопросы про похожие объекты.
Интересный момент: лайки пользователей из Поиска не помогли, а дизлайки – дали буст. Оказывается, люди чаще ставят дизлайк на ошибки в школьных заданиях и распознавании текста – это помогло модели усвоить базовые знания.
Одна модель для двух режимов
Сначала мы пытались использовать одну модель и для чата, и для живого режима – получалось средне. Тогда мы сделали общий датасет и стали управлять режимом с помощью меток. В итоге получилась единая модель, не уступающая по качеству отдельным.
Как выбираем кадр в реальном времени
Мы берём кадр в тот момент, когда пользователь заканчивает говорить. В большинстве случаев люди как раз держат камеру на нужном объекте. Есть алгоритм, который выбирает самый чёткий кадр из небольшого промежутка вокруг этого момента.
Скорость работы
Весь ответ занимает около 3,5 секунды, из них 2 секунды – работа нейросети.
Для преобразователя используем лёгкую модель – его ответ нужен для поиска. Для собирателя ответа – тяжёлую, он отвечает пользователю. Обе модели сжаты, что ускоряет работу примерно на треть.
Результаты качества
Сравнивали с лучшей открытой моделью и с нашей предыдущей версией – обе в режиме работы с внешней информацией.
Результаты в чате:
против Qwen2.5-VL-72B – 57,3% побед;
против нашей предыдущей VLM – 53,7% побед.
В реальном времени:
против Qwen2.5-VL-72B – 53,8% побед;
против нашей предыдущей VLM – 55,8% побед.
Наш пайплайн работает заметно лучше и конкурентов, и нашей старой версии.
Что дальше
Наши VLM уже помогали в Поиске по картинкам, Умной камере и Нейроэксперте. Теперь они дали Алисе возможность видеть – и она стала ещё более полезным помощником.