- BrainTools - https://www.braintools.ru -

PRACT-120 — бенчмарк для оценки ИИ‑чатов

Когда выбираешь ИИ‑чат для работы, многие первым делом открывают таблицы бенчмарков: MMLU, GPQA, HumanEval, LMSYS Arena. Цифры полезные. Результаты в них отвечают на вопрос, насколько сильна сама модель этого чата, но ни один из этих тестов не показывает, насколько силен чат в целом, ведь чат — это не просто модель. Чат это гораздо больше — совокупность инструментов, обвязка, поиск в интернете, память [1] и контекст чата, и многое другое, собственно, то самое из‑за чего люди и выбирают тот или иной чат для работы или жизни.

Так вот, практически ни один из бенчмарков выше не отвечает на вопрос, что получит человек в браузере. Получит ли он поиск по свежим источникам? Загрузку PDF и работу с ним, или хотя бы его качественный анализ? Или ответ только по закрытой базе, с цитатой страницы? Или редактирование нативного Word файла, который откроется у юриста? Может быть Excel с живыми формулами, который откроется у финансиста, и будет ли он отредактирован?

Бенчмарк PRACT-120 — как раз про то, как протестировать ИИ‑чат и то, что именно умеет чат, какие у него есть инструменты и насколько хорошо они работают.

Откуда взялся PRACT-120: Product Reliability Assessment of Chat Tools и что это такое

Это воспроизводимый синтетический бенчмарк готовых AI‑чатов: 120 заданий, закрытый корпус, входные документы, протокол запуска и шкала 0–100.

PRACT-120 попал ко мне от разработчиков ИИ‑чата Маракуйя (maracuya.ru — я даю ссылку, потому что было бы свинством получить такой жир и не сослаться на авторов этого бенчмарка).

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

Так у меня оказался пакет ПРАКТ-120, версия v1.1.0. С позволения команды, я выкладываю его в Github, чтобы каждый желающий мог его попробовать или использовать для тестирования своих моделей или чатов.

Я планирую прогнать по этому тесту Алису и Гигачат, и если у меня получится написать к ним рабочие коннекторы (пока в процессе), я обязательно поделюсь тут полученными результатами.

Что именно входит в PRACT-120, какие тесты

120 заданий. Языки: 80 на русском, 40 на английском. Пять модулей:

Модуль

Код

Заданий

Что проверяет

Ожидаемый выход

Research (web)

W001–W030

30

Поиск, первичные источники, отделение нормы от черновика

текст в чате

RAG

R001–R030

30

Ответ только по закрытому корпусу, версии документов, цитаты ID+страница

текст в чате

Word

D001–D025

25

Чтение входного DOCX, сборка рабочего документа

нативный .docx

Excel

X001–X025

25

Живая таблица: формулы, сверка, лист «Анализ»

нативный .xlsx

Cross

C001–C010

10

Корпус + таблица → управленческий пакет

.docx и .xlsx вместе

В комплекте:

  • очный промпт каждой задачи и отдельный kit;

  • 25 входных DOCX, 25 входных XLSX, 10 пар для сквозных задач;

  • закрытый синтетический RAG‑корпус: 120 PDF, 5 592 страницы;

  • эталоны на все 120 заданий и ground truth корпуса;

  • протокол запуска, шкала, правила нулей и N/A;

  • инструкции, которые подхватывают Cursor, Claude Code и Codex;

  • CLI tools/pract.py.

Корпус синтетический: программы Aurora, Borealis, Cobalt, площадки Valencia и Gdansk, документы вида NS-LEG-02-23. Так проще отделить «нашёл в базе» от «вспомнил из интернета».

Пакет делится на два слоя:

  1. Runner — задания и входы. Его можно отдавать тестируемому агенту и оператору.

  2. Evaluator — gold‑карточки и правила оценки. Его открывают после фиксации сырых ответов.

Если тестируемый агент видит эталоны до ответа, прогон сгорает.

Почему синтетический и обновляемый

Опубликованный статический тест быстро перестаёт быть независимым измерителем. Задания, ответы и характерные ловушки уходят в обсуждения, примеры промптов и со временем — в обучающие данные. Продукт следующего поколения уже «знает» форму экзамена. Для AI‑чатов срок содержательной свежести публичного набора измеряется месяцами.

PRACT рассчитан как серия:

  1. собирается новая конструкция сценариев, неизвестная продуктам заранее;

  2. прогон закрытый: промпты дословно, эталоны спрятаны до фиксации;

  3. методология, состав, протокол и результаты выходят как версия с датой;

  4. для следующего рыночного рейтинга — новая редакция или скрытый holdout.

Текущий выпуск v1.1.0 после полного раскрытия становится воспроизводимым архивом. Синтетичность здесь — контролируемая конструкция: проверяемые факты, версии документов, противоречия, дистракторы, формулы, зависимости между листами, критерии приёмки. Плотность работы та же, что в живом проекте.

Как выглядят задания

Оператор и чат видят только runner: prompt.txt, список вложений, корпус. Ниже — дословные промпты из пакета v1.1.0. Ключ оценки в этот момент закрыт; как он устроен — сразу после примеров.

Research: чат должен искать

Входов нет. Веб поиск разрешён. Отказ в команде «приложите файл» там, где этого требует тест — продукт получает 0 баллов, тест сразу не пройдет.

W001, целиком:

Сравните действующие на 1 августа 2026 года правила маркировки ИИ‑контента в ЕС, Китае и США. Отделите обязательные нормы от проектов, приведите первичные источники и таблицу различий. Используйте минимум 8 источников. Для каждого укажите организацию или автора, точное название и дату публикации/обновления; URL и кликабельные ссылки не требуются. Добавьте журнал поисковых запросов.

W010 — перечень действующих ISO по управлению ИИ, данным и ИБ: номер, название, статус, область. W030 — первоисточник широко повторяемой цифры про провал корпоративных GenAI‑пилотов, цепочка цитирования, что данные на самом деле подтверждают.

RAG: чат должен читать свою базу

Корпус загружается целиком, 120 файлов формата PDF, один раз в проект или knowledge base. Резать корпус молча нельзя. Перезапись файлов — провал теста и сразу 0 баллов.

R001, целиком:

По всей базе из 120 документов определите действующий лимит согласования, норматив ответа и владельца для программы Aurora. Сопоставьте действующую и архивную редакции, объясните, почему архивное значение нельзя применять, и процитируйте ID документов и страницы. Отвечайте только по корпусу.

R003: проверить утверждение «официальный риск‑балл программы Aurora равен 45/100»: первичное значение, дистракторы, вердикт, таблица доказательств с ID и страницами.

Ловушки корпуса: старая редакция рядом с новой, похожие имена программ, чужой файл с правдоподобным номером. Если чат цитирует документ из другой линейки — это видно по ключу.

Word: нужен файл, который открывается

D001, целиком. Вложение: D001_source.docx.

Подготовьте окончательный управленческий отчёт для инвестиционного комитета на основе D001_source.docx. Сверьте бюджет, факт и прогноз, устраните двойной учёт 180 000 EUR, объясните причины отклонения и сформулируйте решение о продолжении программы с условиями контроля. Отдельно перечислите допущения и вопросы, которые нельзя закрыть по материалам. Верните нативный DOCX; косметическое переоформление само по себе задачу не решает.

D004 — точный протокол заседания: обсуждение отдельно от решений, голосование, два конфликта [2] интересов, неучастие директоров. Десять заданий начиная с D016: исследование на 40+ содержательных страниц, не меньше 25 проверяемых источников. Markdown в чате вместо .docx — ноль.

Excel: живые формулы

X001, целиком. Вложение: X001_source.xlsx.

Откройте X001_source.xlsx и выполните рабочий сценарий «анализ отклонений бюджета». Сверьте помесячный бюджет, факт и обязательства. Устраните дубли, рассчитайте отклонение и прогноз до конца года по подразделениям, выделите отклонения выше порога с листа «Правила» и определите три главных драйвера перерасхода. Сохраните исходные листы «Исходные», «Правила» и «Контроль» без ручной правки исходных значений; создайте лист «Анализ» с прозрачными формулами и итоговыми выводами. Ячейка B2 на листе «Контроль» должна оставаться формулой проверки. Верните нативный XLSX. Диаграмма не обязательна и не оценивается.

X007 — 13-недельный прогноз денежных средств. Совпадение видимых цифр при мёртвых константах вместо формул клетку не закрывает.

Cross: всё сразу

C001, целиком. Входы: весь RAG‑корпус, C001_data.xlsx, бриф.

Подготовьте для руководства решение по программе Borealis. Используйте весь RAG‑корпус и C001_data.xlsx: найдите действующие лимиты и риски, проверьте расчеты таблицы и создайте итоговый DOCX на 4–6 страниц с резюме, таблицей доказательств, рекомендацией и приложением с вычислениями. Верните также исправленный XLSX. Все факты из корпуса цитируйте по ID и странице.

Что такое gold и как он применяется в тесте

Gold — закрытая карточка эталона на каждую из 120 клеток. Она лежит в evaluator‑архиве. В runner её нет: ни оператор, ни тестируемый чат её не видят, пока сырой результат не зафиксирован.

Gold — набор проверяемых условий. В ключе лежат инварианты: факты, версии документов, числа, формулы, формат файла. Готовое эссе‑образец туда не кладут. Разные корректные формулировки проходят, если эти условия выполнены.

Два разных вида ключа:

  1. Рубрика — типична для research. Дата среза, минимум источников, обязательные поля у каждого источника, журнал запросов, предпочтительные типы первоисточников. Сами нормы ЕС/КНР/США эксперт сверяет с открытым правом на дату теста: в gold нет готового реферата закона.

  2. Значения — типичны для RAG, Word, Excel, cross. Якорный документ, действующая цифра, владелец, страница цитаты, обязательные листы, живые формулы, контрольные суммы входа, открываемость DOCX/XLSX.

Схема карточки RAG (поля настоящие, числа из ключа здесь не раскрываю):

{
  "task_id": "R001",
  "anchor_document": "NS-…",
  "active_approval_limit_eur": "<из действующей редакции>",
  "response_hours": "<норматив ответа>",
  "owner": "<ФИО из корпуса>",
  "required_citations": true,
  "external_knowledge_forbidden": true
}

У W001 ключ другого рода: min_sources: 8, обязательные организация/название/дата у источника, must_include_query_log: true, судья — экспертный аудит источников. У X001 — список листов, Контроль!B2 как живая формула, минимум формул в книге, сохранность листа «Исходные». У D001 — нативный DOCX, содержательные инварианты из входного отчёта, оформление в шкалу не входит.

Оценка одной клетки выглядит так:

  1. Чат получает только промпт и входы. Gold закрыт.

  2. Оператор сохраняет сырой диалог, все файлы, run.json, SHA-256 промпта, входов и выходов. Руками артефакты не правят.

  3. Сначала проверяют контракт формата. Нет обязательного DOCX/XLSX, файл не открывается, вместо книги — Markdown в чате: это уже ноль, gold по смыслу можно не открывать.

  4. Для зафиксированной попытки открывают gold только этой клетки.

  5. Эксперт сверяет ответ с условиями ключа и ставит пять компонентов (правильность, полнота, инструкция, доказательность, пригодность). Потом — жёсткое правило или потолок: выдумка, меняющая решение, режет балл до 49.

  6. У карточки есть gold_sha256 и gold_revision. Так видно, какой редакцией ключа судили прогон.

Пока 120 клеток не зафиксированы, evaluator‑архив держать закрытым. Иначе чат (или агент, который ведёт прогон) подглядывает ответ. После раскрытия выпуска gold остаётся в судейском пакете: воспроизвести оценку можно, честный новый прогон на той же серии — уже с поправкой на утечку.

Методология подсчета баллов

Пять компонентов, сумма 100:

Компонент

Максимум

Правильность

40

Полнота

25

Соблюдение инструкции

15

Доказательность

10

Практическая пригодность

10

Сначала эксперт ставит пять чисел — raw_score. Потом срабатывают жёсткие правила и потолки.

Жёсткие нули:

  • обязательного файла нет;

  • вместо формата — текст, Markdown или «не тот» тип;

  • файл поддельный, битый, не открывается, расширение врёт про содержимое;

  • доступный продукт отказался или ответил мимо.

Потолки:

  • один из двух обязательных файлов — не выше 74;

  • критическая смысловая выдумка, которая меняет решение, — не выше 49.

Ноль здесь — фиксация для покупателя: оплаченный чат работу не закончил. Совет «сделайте таблицу сами» стоит рядом с готовой книгой XLSX как два разных исхода, и в клетке засчитывается только второй.

Обоснованный отказ — отдельная история. Если во входах после полного чтения нет сущностей, без которых честный документ не собрать, продукт должен прямо сказать, чего не хватает, и не сочинять цифры. Такой отказ оценивают по пяти компонентам. Общий «не могу» без разбора входа остаётся нулём.

Вид работы закрывается после трёх последовательных провалов по одной устройственной причине и при нуле успехов этого вида. Причина, три задания и дословные цитаты фиксируются. Остальные клетки вида получают ноль: это доказанная неспособность продукта.

Две итоговые метрики, обе обязательны:

  1. Результат продукта — среднее по всем числовым клеткам, включая доказанные нули. Это то, что получит пользователь.

  2. Диагностика — среднее только там, где final_score > 0. Показывает качество удавшихся попыток. В рейтинг продукта идёт первая цифра: среднее по всем клеткам, включая нули.

Если среднее считать только там, где чат согласился работать, продукт с самым узким набором инструментов получает фору: Word и Excel исчезают из знаменателя. Диагностика это показывает. Рейтинг подписки строится по полному набору клеток.

Для обеих метрик публикуют N, долю нулей, долю клеток ≥75 и распределение по диапазонам. Медиану PRACT не использует: она прячет поля нулей.

N/A — только объективная внешняя причина: продукт законно не запущен, вход пустой по вине пакета, среда недоступна. Устойчивый отказ тарифа, HTTP 500 чата, пустой completion — это нули продукта, не «инфра».

Где взять PRACT

С разрешения разработчиков, я выложил PRACT в свой Github. Пакет PRACT-120 v1.1.0: https://github.com/clnt2021/pract-120-benchmark [3]

В репозитории два архива:

  • PRACT-120-RUNNER — задания, входы, корпус, протокол;

  • PRACT-120-EVALUATOR — эталоны. Открывать после сырых результатов.

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

PRACT-120 Алисы, Гигачата и Маракуйи ИИ

Как я писал ранее, пока я только сетаплю этот бенчмарк и тестирую его работоспособность в своем окружении, и постараюсь на следующей неделе поделиться результатами прогона через него Алисы, Гигачата (буду прогонят Max и Ultra модели от Сбера) и Мурукуйи.

Результатами поделюсь — ставьте классы и подписывайтесь на мой канал (шутка, его нет), чтобы не пропустить результаты моего исследования!

Еще раз поделюсь ссылкой на авторов бенчмарка — maracuya.ru, и выражаю им публичную благодарность за предоставленный пакет!

Автор: Hau515

Источник [4]


Сайт-источник BrainTools: https://www.braintools.ru

Путь до страницы источника: https://www.braintools.ru/article/34921

URLs in this post:

[1] память: http://www.braintools.ru/article/4140

[2] конфликта: http://www.braintools.ru/article/7708

[3] https://github.com/clnt2021/pract-120-benchmark: https://github.com/clnt2021/pract-120-benchmark

[4] Источник: https://habr.com/ru/articles/1076646/?utm_campaign=1076646&utm_source=habrahabr&utm_medium=rss

www.BrainTools.ru

Rambler's Top100