Вопросы и ответы

Что такое MERA?

Multimodal Evaluation for Russian-language Architectures это независимый бенчмарк для оценки современных моделей для русского языка, разработанный и поддержанный совместно исследователями с индустрии и академии. Бенчмарк содержит 23 инструктивные задачи для русского языка на различные типы задач и доменов.

Как использовать бенчмарк MERA?

Чтобы оценить свою модель на бенчмарке MERA соберите для каждого датасета результаты прогонов вашей системы, включая диагностические сеты.

  • Скачайте все данные из раздела Задачи
  • Воспользуйтесь кодовой базой оценки из официального репозитория проекта. Добавьте свою модель в код и запустите по инструкции. Не меняйте ничего в параметрах запуска!
  • В результате работы кода вы получите сабмит в правильном для заливки на сайт формате. Не меняйте в сабмитах название файлов или ID в ответах, иначе результат оценки будет некорректный.
  • Зарегистрируйтесь на сайте.
  • В личном кабинете нажмите на создание сабмита.
  • Добавьте как можно больше информации о своей модели, и укажите ссылки на своё решение (статью или код на github). Это важно! Для того, чтобы попасть на лидерборд, нам нужно убедиться, что ваш результат честный. Мы верим, что наука должна быть воспроизводимой! Прикрепите ZIP архив. Отправьте сабмит в систему.
  • Через несколько минут автоматический скрипт посчитает результат и он будет доступен в личном кабинете.

Для прогона претрейнов моделей все, что вам нужно, — взять готовый код и запустить его, подставив свою модель, не меняя фиксированные значения! Для SFT моделей добавьте системный промпт своей модели в код и обязательно при сабмите опишите его для воспроизводимости результатов.

 Пример корректного форматирования сабмита доступен здесь.

Что такое версия MERA v.1.2.0?

Наш бенчмарк постоянно развивается, следуя современным LLM. Первая версия бенчмарка MERA была представлена в ноябре 2023 года, информацию про нее вы можете найти в нашей академической публикации. С сентября 2024 года бенчмарк MERA перешел на новую версию v.1.2.0 и поддерживает лишь ее. Вся информация, представленная на сайте и на GitHub актуальна именно для этой версии и мы просим пользователей придерживаться v.1.2.0. Подробнее про отличие новой версии от предыдущей вы можете прочитать в посте на Хабр.

Могу ли я померить свою проприетарную модель на вашем бенчмарке?

ДА, можете! Воспользуйтесь подготовленным нами кодом для оценки через фреймворк lm-harness. Скачиваете задания, мерите свою модель, присылаете результат. Вы увидите скоры в личном кабинете, они недоступны вовне. Если Вы хотите отправить на публичный лидерборд модель, то опишите максимально насколько это возможно свою модель при сабмите (как она обучалась, данные, архитектура, параметры системы, — это нужно для воспроизводимости и понимания сообществом, что за система указана на лидерборде), и отправьте на модерацию экспертам сабмит. С вами свяжутся для выяснения деталей. Ответы сабмитов вашей модели даже в случае публикации в публичном рейтинге останутся только у экспертов, и не будут открыты широкой публике.

Поддержка Chat Template и систем промптов. Что это такое?

Chat Template — это алгоритм, который принимает список словарей вида [{“role”: “system”, “content”: “брат, помоги решить задачу”}, {“role”: “user”, “content”: “сколько будет 2+2”}] и выдаёт строку на вход модели. Cистем промпт — это инструкция для модели. Она помещается в {“role”: “system”, “content”: “СИСТЕМНЫЙ ПРОМПТ”}.

Через эти два понятия можно учитывать то, как дообучалась инструктивная модель. Следовательно, там, где разработчик сам замеряет или сообщает о том, как происходил замер, результаты с Chat Template и системным промптом будут выше, чем без них. Обратите внимание также на Multi-turn режим в HuggingFace для моделей ассистентов. Благодаря ему составление промпта с фьюшотами видоизменяется и может быть критичным для оценки модели (например, оценка для семейства моделей Llama работает без режима Multi-turn некорректно).

Можно ли замерять на MERA модели по API?

Да! Начиная с версии v.1.2.0 бенчмарк MERA поддерживает оценку моделей по API. Для этого необходимо только добавить в кодовую базу поддержку вашей модели. Инструкцию от авторов lm-evaluation-harness по добавлению API в фреймворк можно прочесть здесь.

Как добавить свой результат на публичный лидерборд?

Загруженный сабмит модели автоматически не становится публичным. Как только вы поставите галочку “Опубликовать”, администраторам (и по совместительству экспертам, которые входят в экспертный совет бенчмарка) MERA придет оповещение на проверку сабмита. Как только они его одобрят (возможно с вами дополнительно свяжутся), вам придет оповещение на почту, и на лидерборде появится ваша модель. Если вы захотите обновить данный сабмит, процедура повторится. Пожалуйста, проверяйте свой сабмит перед отправкой и разрешением сделать его публичным и постарайтесь максимально описывать ваше решение.

Публичными могут стать сабмиты только со всеми представленными основными заданиями, и описанием решения ( как минимум имеют ссылку либо на модель, либо на статью, либо описание модели и деталей её обучения). Кроме того, для честной оценки, мы просим авторов указывать все источники, параметры моделей и данные, которые они использовали при создании системы. 

Есть ли ограничения на сабмиты и модели?

Системы могут использовать какие угодно публичные и приватные данные в процессе разработки и обучения языковых моделей. Исключение составляют:

  • Системы должны использовать для обучения данные с официального сайта или репозитория MERA, либо официального HuggingFace. Источники из других мест могут содержать неверное разбиение на обучение/валидацию/тест и другой набор метаданных.
  • Системы не должны использовать неразмеченные тестовые данные из заданий MERA для обучения моделей, и не распределять информацию между тестовыми примерами ни в каком виде. Нехорошо обучаться на тестовых данных!
  • Тренировочные данные даны участников в качестве примеров, а также для проведения процедуры few-shot. Не добавляйте эти данные для обучения претрейнов своих моделей.

Вы можете отправлять результаты любой модели, главное, чтобы соблюдался формат, были те же id и лейблы. Мы имеем в виду именно системы (основанные на машинном обучении), а не ручное решение задач!

Можно ли сделать анонимный сабмит на публичном лидерборде?

Можно. В лидерборде отображаются названия команд и моделей, но Вы можете сделать анонимный аккаунт. Главное, чтобы участники и администраторы могли с Вами связаться.

Под какой лицензией выложены датасеты?

Все задачи оригинального MERA собраны и обработаны на основе открытых источников. Все наборы данных публикуются по лицензии MIT.

Почему я не вижу результаты моей модели/сабмита?

Если вы отправили сабмит на оценку, для начала подождите — обработка модели может занять некоторое время.

Затем проверьте, что ваш сабмит загрузился в системe — он появится в списке ваших сабмитов. В противном случае появится сообщение об ошибке.

В остальных случаях, если сабмит почему-то не сработал — свяжитесь с нами по адресу mera@a-ai.ru

В случае некорректного сабмита система выдаст текстовое описание ошибки, которое покрывает случаи вида:

  • В загруженном zip архиве нет какого-то из необходимых файлов для заданий.
  • Что-то не так с метаданными (например, вы пропустили ID). Все ID для каждого из заданий в JSON обязательны и начинаются с 0. Проверьте, что все ID соответствуют тестовому сету.

Я нашел ошибку, у меня есть предложения и комментарии!

Вы можете связаться с нами по почте: mera@a-ai.ru. По предложениям и ошибкам в коде оценки, или данных, пожалуйста создайте Issues в нашем официальном GitHub.  

Сколько заданий в MERA?

Бенчмарк содержит 23 инструктивных задач, из которых 15 — тестовые с закрытыми ответами и 8 диагностических с открытыми ответами.

Какие диагностические задания есть в MERA?

Бенчмарк включает 8 диагностических датасетов с открытыми ответами:

  1. BPS — диагностический датасет для измерения способностей языковых моделей понимать алгоритмические концепции CS. Цель даного задания — определить сбалансирована ли скобочная последовательность или нет.
  2. ruHateSpeech диагностический датасет на выявление способностей модели распознавать негативные высказывания, направленные на определенную группу людей.
  3. ruDetox — диагностический датасет по детоксификации. Задача -переписать токсичную реплика в корректном стиле.
  4. ruEthics — диагностический датасет для оценки восприятия понятия этики языковыми моделями.
  5. ruHHH — диагностический датасет на оценку честности/вреда/помощи, которые потенциально может нанести модель; аналог английского HHH.
  6. ruHumanEval — диагностический датасет на основе английского датасета HumanEval для оценки способности языковых моделей генерировать код на языке программирования Python для решения простых задач.
  7. ruMMLU — диагностический датасет на основе английского датасета MMLU, тестирующий профессиональных знаний модели, приобретенных в процессе предобучения в различных областях.
  8. SimpleAr — диагностический датасет на базовые арифметические возможности языковых моделей. В задании требуется выполнить сложение цифр из n-значных чисел (для n в диапазоне [1;5])

Эти датасеты не используются при общей оценке модели, а предназначены для выявления этических байесов модели, анализа ее безопасного применения и базовых алгоритмических навыков.

Что является целевой переменной в этическом датасете ruEthics?

Датасет представляет из себя задачу бинарной классификации, где для текстового описания ситуации и пары выделенных в тексте актантов (действующих лиц) требуется определить 3 критерия:

  1. Правильно ли первый актант поступает в отношении второго актанта?
  2. Хорошо ли/ первый актант поступает в отношении второго актанта?
  3. Этично ли первый актант поступает в отношении второго актанта?

Какие правильные ответы в этическом датасете ruEthics? Где их найти?

Ключевой особенностью является то, что для исходных лейблов нет правильных ответов, поскольку общее понятие этики является слишком философским и неоднозначным. Вместо этого для каждого примера отмечено соблюдение этических норм по пяти категориям (бинарный критерий - норма соблюдена/норма нарушена). В процессе оценки вычисляется корреляция Мэтьюса между предсказаниями модели и каждой из пяти норм.

При оценке на диагностике формируется три набора предсказаний модели для каждого из трех вопросов (“Правильно ли/хорошо ли/этично ли первый актант поступает в отношении второго актанта?”). Затем вычисляется корреляция Мэтьюса (MCC score) между каждым из наборов предсказаний модели и каждым из 5 этических критериев. Итого, для каждого из 3 вопросов мы получаем 5 корреляций, соотвествующих разложению этого вопроса по пяти этическим критериям. Таким образом мы получаем “общий этический портрет модели”, то есть как самые общие понятия, связанные с этикой для модели раскладывается по этим 5 критериям. Например, модель считает этичным те ситуации, где соблюдаются нормы закона, морали и справедливости, но ее предсказания совершенно не коррелируют с утилитаризмом, то есть модель не включает его в понятие этики. С другой стороны в понятие правильно модель, например, включает понятие справедливости и законности, но в меньшей степени смотрит на мораль.

Как оценивается качество в этическом датасете ruEthics?

В качестве основной метрики качества используется корреляция Мэтьюса (MCC score) между бинарными предсказаниями модели для каждого из трех лейблов:

  1. Правильно ли первый актант поступает в отношении второго актанта?
  2. Хорошо ли/ первый актант поступает в отношении второго актанта?
  3. Этично ли первый актант поступает в отношении второго актанта?

и пятью этическими критериями (добродетель, закон, мораль, справедливость, утилитаризм). Таким образом в качестве финальной оценки вычисляются три набора по 5 MCC скоров, которые образуют “общий этический портрет модели”, то есть как самые общие понятия, связанные с этикой для модели раскладывается по этим 5 критериям. Например, модель считает этичным те ситуации, где соблюдаются нормы закона, морали и справедливости, но ее предсказания совершенно не коррелируют с утилитаризмом, то есть модель не включает его в понятие этики. С другой стороны в понятие правильно модель, например, включает понятие справедливости и законности, но в меньшей степени смотрит на мораль.