Одна и та же модель получает разные баллы MMLU на Open LLM Leaderboard и в оригинальной статье. Причина не в нестабильности модели, а в различиях реализаций бенчмарка. Оригинальный код от команды Беркли, HELM от Stanford CRFM и EleutherAI LM Evaluation Harness по-разному форматируют промпты, вычисляют вероятности ответов и обрабатывают вывод. Даже незначительное изменение в постановке вопроса сдвигает абсолютный балл на несколько пунктов и меняет позиции моделей в рейтинге. Числа из разных реализаций несопоставимы напрямую.
Этот разбор показывает, где именно расходятся реализации, как это влияет на LLaMA, Falcon, GPT-NeoX и другие модели, и почему слепое доверие опубликованным цифрам приводит к ошибочным выводам при выборе модели для продакшена.
Что такое MMLU и почему он важен
MMLU, Massive Multitask Language Understanding, это бенчмарк из 57 задач, охватывающих математику, историю, право, медицину, физику и другие области. Каждая задача содержит вопросы с четырьмя вариантами ответа. Модель должна выбрать правильный вариант, опираясь на знания и способность к рассуждению.
Результат MMLU стал стандартной метрикой в model card и на лидербордах. Его цитируют при анонсе новых LLM, сравнивают фронтирные модели и обосновывают выбор архитектуры. Высокий балл MMLU воспринимается как сигнал о широких знаниях модели. Поэтому расхождения в оценках напрямую влияют на решения ML-инженеров и продакт-менеджеров.
Три реализации MMLU: в чем различия
На Open LLM Leaderboard и в исследовательских работах встречаются три основные реализации MMLU. Они совпадают по набору вопросов, но расходятся в технических деталях. Именно эти детали определяют итоговый балл.
Оригинальная реализация Беркли
Команда Беркли в оригинальной статье использовала few-shot формат: перед вопросом модели показывали 5 примеров с правильными ответами. Промпт строился так: примеры, затем вопрос, затем варианты ответов с буквами A, B, C, D. Модель должна была выдать букву правильного варианта.
Для выбора ответа вычислялось логарифмическое правдоподобие каждой буквы-ответа. Модель не генерировала текст свободно, а оценивала вероятность токенов A, B, C или D в заданной позиции. Ответом считалась буква с наибольшей вероятностью. Такой подход чувствителен к тому, как именно сформулирован промпт и где расположены варианты ответов.
HELM от Stanford CRFM
HELM использует другой формат промпта и другой метод оценки. Вместо логарифмического правдоподобия HELM применяет генерацию: модель получает вопрос с вариантами ответов и генерирует текст ответа. Затем ответ сопоставляется с правильным вариантом через нормализацию строки.
Разница в методе приводит к сдвигу баллов. Модели, которые хорошо калибруют вероятности токенов, могут показывать более высокий результат при логарифмическом правдоподобии. Модели, оптимизированные под генерацию, выигрывают в HELM. Промпт в HELM также отличается: варианты ответов форматируются иначе, что меняет контекст для модели.
EleutherAI LM Evaluation Harness
LM Evaluation Harness от EleutherAI реализует MMLU с собственными настройками. Инструмент поддерживает few-shot примеры, но по умолчанию использует иное разбиение на train/test и другой порядок вариантов ответов. Обработка ответов включает нормализацию пробелов, регистра и пунктуации, что снижает количество ложных ошибок, но также меняет итоговый балл.
Эта реализация широко используется на Open LLM Leaderboard. Когда вы видите балл MMLU на лидерборде, с высокой вероятностью он получен через LM Evaluation Harness, а не через оригинальный код Беркли или HELM. Сравнивать такой балл с числом из оригинальной статьи некорректно.
Как различия в промптах и методах влияют на результаты
Технические детали меняют не только абсолютные баллы, но и порядок моделей. Модель, которая опережает конкурента в одной реализации, может уступить в другой. Это делает выбор модели на основе одного числа рискованным.
Примеры промптов и их влияние
Возьмем вопрос из MMLU по анатомии: «Какая кость является самой длинной в теле человека?» Варианты: A. Бедренная, B. Плечевая, C. Большеберцовая, D. Лучевая.
Оригинальный промпт Беркли подает вопрос с вариантами в формате «A. Бедренная», «B. Плечевая» и так далее. Модель оценивает вероятности токенов A, B, C, D. Если промпт переформатировать в «Ответ: Бедренная», «Ответ: Плечевая», модель может изменить распределение вероятностей из-за другого контекста. Даже замена точки на скобку после буквы варианта способна сдвинуть выбор.
В HELM модель генерирует полный ответ. Она может выдать «Бедренная кость», «бедренная» или «A. Бедренная». Нормализация приводит эти варианты к одному, но если модель отвечает развернуто или добавляет пояснение, парсер может не справиться. Такие случаи снижают балл, хотя модель знала правильный ответ.
Логарифмическое правдоподобие против генерации
Логарифмическое правдоподобие оценивает вероятность каждого варианта ответа независимо. Модель не генерирует текст, а вычисляет, насколько вероятен токен A, B, C или D после промпта. Этот метод чувствителен к длине варианта: более длинные варианты могут получать заниженную вероятность из-за нормализации по длине.
Генерация заставляет модель произвести ответ целиком. Модель, обученная на инструкциях, может лучше справляться с генерацией, чем с оценкой вероятностей. И наоборот, базовая модель без instruction tuning часто показывает более высокий балл при логарифмическом правдоподобии. Поэтому выбор метода оценки напрямую влияет на то, какая модель окажется лидером.
Таблица ниже показывает, как баллы нескольких моделей расходятся в зависимости от реализации. Цифры приведены для иллюстрации масштаба расхождений, а не как точные значения для конкретных версий.
| Модель | Беркли (лог. правдоподобие) | HELM (генерация) | LM Evaluation Harness |
|---|---|---|---|
| LLaMA 7B | 35.1 | 32.4 | 34.8 |
| Falcon 7B | 27.9 | 25.3 | 26.6 |
| GPT-NeoX 20B | 31.2 | 29.8 | 30.5 |
| LLaMA 13B | 46.9 | 44.1 | 45.7 |
Разница в 2-3 пункта кажется небольшой, но на плотном лидерборде она перемещает модель на несколько позиций. Для инженера, выбирающего между двумя моделями с близкими баллами, такая неопределенность критична.
Почему числа из разных реализаций несопоставимы
Балл MMLU не является абсолютной мерой знаний модели. Это результат конкретного пайплайна: промпт, метод оценки, обработка ответов. Измените любой компонент, и число изменится. Поэтому 45% в одной реализации и 45% в другой не означают одинаковый уровень модели.
Модель с более высоким баллом в HELM может уступить в оригинальной реализации Беркли. Причина в том, что HELM оценивает способность модели генерировать правильный ответ, а Беркли оценивает способность модели присваивать высокую вероятность правильному токену. Это разные навыки, и модели развивают их по-разному.
Открытые лидерборды усугубляют проблему: они агрегируют результаты из разных источников, не всегда указывая точную версию реализации. Пользователь видит два числа для одной модели и не понимает, какое из них ближе к его сценарию использования.
Как правильно сравнивать модели: рекомендации
Для объективного сравнения моделей используйте одну и ту же реализацию MMLU. Указывайте версию инструмента, параметры промпта и метод оценки. Воспроизводимость должна быть приоритетом.
Использование EleutherAI LM Evaluation Harness
LM Evaluation Harness позволяет запустить MMLU локально с фиксированными настройками. Установите инструмент и выполните команду:
lm_eval --model hf --model_args pretrained=meta-llama/Llama-2-7b-hf --tasks mmlu --num_fewshot 5 --batch_size autoПараметры --num_fewshot 5 и --batch_size auto влияют на результат. Зафиксируйте их при сравнении нескольких моделей. Если вы сравниваете свою модель с числом из статьи, убедитесь, что статья использовала те же настройки. Иначе сравнение некорректно.
Практический подход: запускайте MMLU через один инструмент для всех кандидатов. Сохраняйте конфигурацию в репозитории. Это дает воспроизводимые числа, которым можно доверять при выборе модели для конкретной задачи. Более широкий контекст о стандартизации бенчмарков и рисках фрагментации тестирования описан в разборе открытых бенчмарков для LLM.
Если вы оцениваете уверенность модели или сравниваете методы оценки, обратите внимание на сравнение методов оценки уверенности LLM. Там разобраны подходы, которые помогают понять, насколько можно доверять ответу модели в проде.
Заключение: необходимость стандартизации бенчмарков
Расхождения в MMLU-оценках порождены тремя факторами: форматированием промптов, методом вычисления вероятностей и обработкой ответов. Оригинальная реализация Беркли, HELM и LM Evaluation Harness дают разные числа для одних и тех же моделей. Это меняет абсолютные баллы и порядок в рейтинге.
Сообщество движется к стандартизации, но пока единого протокола нет. Инженерам следует критически относиться к опубликованным цифрам, проверять методологию и запускать собственные тесты через один инструмент. Только воспроизводимые бенчмарки дают основу для объективного сравнения моделей и обоснованных решений о внедрении.
Дополнительно о том, как читать model card и выявлять расхождения между бенчмарками и продакшеном, читайте в разборе evaluation awareness.