QASenior

Оцінювання AI

Оцінювання AI — це вимірювання того, чи достатньо добрі виводи моделі, щоб їх випускати: фіксовані кейси, оцінювач для кожного й числа з їхньою невизначеністю. Сторінка починається з шістнадцяти речей, які команда захоче оцінювати, — найдешевшого оцінювача, що вирішує кожну, і того, що його обманює; далі — аналіз помилок, складання набору, драбина оцінювачів, модель-суддя й те, як їй довіряти, читання чисел і чотири опубліковані вимірювання, що ввели в оману.

Перед будь-якою метрикою
Прочитати 100 слідів
Довіряти судді за
TPR і TNR, не згодою
33 із 40 → 34 із 40
Шум: ±12 пунктів

Шістнадцять речей для оцінювання — найдешевший оцінювач, що вирішує кожну, і що його обманює

На сторінку про оцінювання AI приходять із конкретним питанням: як мені це оцінити? Відповідь майже ніколи не «спитати іншу модель». Нижче — шістнадцять речей, які команда оцінює на асистенті замовлень зі сторінки «Тестування LLM-продуктів»: чаті магазину, що відповідає на «де моє замовлення», пояснює правила повернення й розпочинає повернення. Для кожної — найдешевший оцінювач, що її вирішує, і те, що цього оцінювача обманює. Префікс називає щабель на драбині нижче. Наступні розділи посилаються на рядки за номерами.

#Що ви перевіряєтеНайдешевший оцінювач, що це вирішуєЩо його обманює
1Відповідь парситься й має свої поляТочно: валідація схемиНіщо — але й про значення всередині вона нічого не каже
2Намір — одна з шести мітокТочно: порівняння з набором мітокМітки, чий зміст пливе: «інше» поволі поглинає все
3Сума повернення чи кількість днів, що лишилисяКод: перерахувати з результату інструмента з допускомФормати — «€1,299.00» проти «1299», — тож порівнюйте розібрані числа, а не рядки
4Цитована стаття каже те, що їй приписує відповідьКод: знайти наведений фрагмент в індексіІнші пробіли чи лапки — спершу нормалізуйте обидві сторони
5Правильний інструмент із правильними аргументамиКод: перевірити викликДва правильні виклики в іншому порядку — порівнюйте їх як множину
6Обовʼязковий факт присутній: «вікно закривається 24 жовтня»Код: збіг рядка чи шаблону, поки формулювання сталеТой самий факт іншими словами — коли формулювання змінюється, переходьте до рядка 7
7Кожен обовʼязковий факт, хай як сформульованийСуддя: отримує список фактів, «так» чи «ні» для кожногоГладка відповідь, що згадує тему факту, але не сам факт
8У відповіді немає нічого, чого не кажуть джерелаСуддя: отримує джерела, «так» чи «ні» для кожного твердженняСуддя, якому не показали джерел, оцінює правдоподібність, а не вірність джерелам
9Відповідь відповідає на поставлене питанняСуддя: бінарно, з питанням перед очимаДовга відповідь, що покриває все, — судді схильні до довжини
10Тон відповідає стильовому посібникуСуддя: бінарно, з посібником і двома прикладамиВвічливість, загорнута навколо відмови; суддя винагороджує обгортку
11Яка з двох версій промпту відповідає кращеСуддя: попарно, в обох порядкахСам порядок: в одному дослідженні він дав слабшій моделі виграти 66 порівнянь із 80
12Резюме чи переклад збігається зі схваленимЕталон: метрики перекриття слів на кшталт BLEU чи ROUGEПравильна відповідь іншими словами отримує низький бал; на відкритому тексті ці метрики погано збігаються з людьми
13Згенерований код працюєКод: запустити його проти тестівТести, що вимагають більше, ніж просила задача, — або потрапили в навчання
14Порада, яку фахівець назвав би шкідливоюСпершу людина: рубрика фахівця, а тоді суддя, відкалібрований за неюЗагальні фільтри безпеки не знають предметної області: дефіцит калорій — звичайна порада для більшості читачів
15Загальне враженняЛюдина: щотижня читає вибіркуВтома і критерії, що зсуваються під час читання, — переписуйте рубрику
16Чи виконує фіча свою роботуРезультат: у продакшні — питання, розвʼязані без повторного зверненняУсе, чого він не бачить: клієнт, що здався, — не той, чиє питання розвʼязали

Спершу прочитайте, потім міряйте: аналіз помилок

Звичний перший крок — обрати метрики (корисність, вірність джерелам, бал галюцинацій) і вивести їх на дашборд. Так зʼявляються числа про проблеми, яких ніхто не бачив. Гамел Гусейн і Шрея Шанкар, які навчили оцінювання тисячі інженерів, кажуть прямо: загальні метрики в більшості AI-застосунків марні. Почніть натомість із читання того, що система насправді зробила.

Метод походить із якісних досліджень і має три кроки. Прочитайте щонайменше сотню справжніх розмов і для кожної, що пішла не так, запишіть коротку нотатку своїми словами — це відкрите кодування. Потім згрупуйте нотатки в категорії збоїв і порахуйте їх — це осьове кодування. Зупиніться, коли нові розмови перестануть давати нові види збоїв, — дослідники називають це насиченням. Лише тоді вирішуйте, як оцінювати кожну категорію.

Аналіз помилок починається з читання, а не з метрик. Хтось прочитав сотню справжніх розмов з асистентом замовлень, записав нотатку про кожен збій — усього 41 — і згрупував їх. Найбільша група, 13 нотаток, — відповіді, що пропустили умову, яка вирішує відповідь, наприклад дату закриття вікна повернення; для неї потрібен суддя зі списком обовʼязкових фактів. Наступні чотири групи — не те замовлення, коли в клієнта їх два відкритих, відповіді на питання, яких довідка не покриває, відповідь не тією мовою й вигадана дата повернення коштів — виявилися перевірюваними кодом, щойно їх побачили. Дві нотатки про тон ідуть до судді, а три поодинокі збої виправляють і лишають як тестові кейси без окремого оцінювача. Чотири з шести справжніх груп стали перевірками кодом; команда, що почала б із загального бала якості, не виміряла б жодної з них.
Група збоївНотатокЯк її оцінюють
Пропущено умову, що вирішує, — дату закриття вікна, товар без права повернення13Суддя зі списком фактів — рядок 7
Обрано не те замовлення, коли в клієнта їх два відкритих8Код: коли відкритих замовлень два, асистент має перепитати — рядок 5
Відповів на питання, якого довідка не покриває6Код: прапорець передачі людині на цих кейсах
Відповів англійською на українське повідомлення5Код: визначення мови відповіді
Пообіцяв дату повернення коштів, якої правила не дають4Код: кожна дата у відповіді має походити з інструмента чи правил
Звинуватив курʼєра чи клієнта2Суддя щодо тону — рядок 10
Поодинокі3Без оцінювача: виправити кожен і лишити як кейс

Дві речі в цій таблиці типові. Найбільша група — не та, яку хтось вгадав би до читання, і більшість груп, щойно хтось придивився, виявилися перевірюваними кодом. Команда, що почала б із балу «корисності», не виміряла б ні не того замовлення, ні відповіді не тією мовою.

Що входить у набір і яким великим він має бути

Інстинкт підказує будувати на покриття: кейс на фічу, рівномірно. Виходить набір, що з першого дня дає девʼяносто з чимось відсотків і більше не рухається, — тобто вже нічого вам не каже. Набір виправдовує себе тим, що згущений там, де система слабка, тож його склад має бути навмисно незбалансованим. Ось склад набору асистента замовлень.

ЧастинаКейсівНавіщо вона
Групи збоїв60Справжні розмови з аналізу помилок, зважені за групами, плюс граничні кейси кожної
Відповіді в довідці немає20Правильна поведінка — передати людині; саме на цій категорії більшість систем тихо провалюється
Захищені20Відмови, формулювання прав на повернення за законом, обіцяне клієнтам — будь-який збій блокує реліз
Ворожі10Ворожі відгуки й листи, витягування промпту — безпекові рядки сторінки про тестування
Легкі канарки10Не заради бала: коли падають вони, зламалося щось структурне, і решта чисел нічого не варта
Відкладені30Та сама суміш, яку запускають лише перед релізом і під яку ніколи не підганяють

Тридцять–пʼятдесят справжніх збоїв — повноцінна стартова точка; сто пʼятдесят — зрілий набір для однієї фічі. Відкладена частина важить більше, ніж підказує її розмір. Без неї ви зрештою підганяєте промпт під набір, а не під клієнтів, і ніщо в числах не скаже, що це сталося. І кожен кейс потребує мітки від людини, що знає предметну область: для асистента замовлень — від власника правил повернення, а не від інженера, що писав промпт.

Драбина оцінювачів

Те, як судять відповідь, важить більше, ніж скільки відповідей ви судите. Пробувати оцінювачів варто в чіткому порядку, і дисципліна полягає в тому, щоб підійматися, лише коли щабель нижче справді не може вирішити питання.

Оцінювання відповіді — це проєктне рішення, і пробувати варто у чіткому порядку. Унизу — перевірки, що не коштують нічого й не підлягають суперечці: чи збігається вивід точно, чи парситься він, чи відповідає схемі, чи є мітка однією з чотирьох дозволених. На щабель вище — запустити код на відповіді: перерахувати число, яке вона наводить, перевірити, що цитований фрагмент існує у джерелі й справді містить твердження, підтвердити, що виклик інструмента ніс правильні аргументи. Далі — порівняння з еталонною відповіддю за схожістю: швидко, приблизно й каже менше, ніж здається. І лише потім братися за іншу модель як суддю — вона тягне справді субʼєктивні питання про тон, корисність і те, чи відповідь взагалі відповіла, — за ціну на кейс, із власною варіативністю і з потребою калібрування проти людських оцінок, перш ніж їй можна вірити. Нагорі людина читає сама: найповільніший, найдорожчий і найнадійніший оцінювач, і саме він має визначити, що означає «добре», перш ніж збудують хоч один щабель нижче. Більшість наборів оцінюють значно вище цією драбиною, ніж потрібно, — тобто витрачають гроші, щоб перетворити факт на думку.

Другий щабель покриває значно більшу частину справжнього набору, ніж очікують команди. Якщо відповідь наводить число — перерахуйте його (рядок 3). Якщо цитує фрагмент — знайдіть його (рядок 4). Якщо викликає інструмент — перевірте аргументи (рядок 5). Кожне з цього — детермінований код, що виконується за мілісекунди, нічого не коштує й дає результат, з яким ніхто не посперечається, — а це річ іншого роду, ніж оцінка.

Середньому щаблю варто не довіряти. Метрики перекриття слів на кшталт BLEU і ROUGE порівнюють відповідь зі схваленою, що пасує машинному перекладу сталих речень і майже нічому іншому. 2016 року Чіа-Вей Лю й колеги виявили, що на відповідях у діалозі вони збігаються з людською оцінкою слабко або ніяк (рядок 12). А запуск коду проти тестів (рядок 13) добрий рівно настільки, наскільки добрі тести: у лютому 2026 року OpenAI виявила, що в більшості складних задач поширеного бенчмарка з програмування тести відкидають правильні рішення, — це четвертий випадок наприкінці сторінки.

Модель як суддя — і як їй довіряти

Модель може оцінювати вивід іншої моделі, і для питань про зміст це справді корисно в масштабі, недосяжному людям. 2023 року Ляньмінь Чжен і колеги виявили, що сильні судді збігалися з людськими вподобаннями понад 80% випадків — приблизно так само часто, як люди збігаються між собою. Та сама стаття назвала упередження суддів, а пізніші роботи додали нові. Суддя — це вимірювальний прилад із відомими вадами, і на кожну ваду є відома протидія.

УпередженняЩо воно робитьПротидія
ПозиціїУ попарному порівнянні суддя віддає перевагу одній позиції. Ван і колеги, 2023: сама зміна порядку дала Vicuna-13B перемогти ChatGPT у 66 питаннях із 80, де суддею був ChatGPT.Запускайте обидва порядки й лишайте тільки вердикти, що витримали обмін (рядок 11)
БагатослівностіДовші відповіді виграють, навіть коли нічого не додають (Чжен і колеги).Бінарні питання про названий критерій, а не «що краще» (рядок 9)
Любові до свогоМодель оцінює власні виводи вище за чужі такої самої якості; Панікссері й колеги, 2024, повʼязали силу цього з тим, наскільки добре модель упізнає власний текст.Вимірюйте це на розмічених кейсах, хай яка модель судить, — див. нижче
ПравдоподібностіСпокійно й охайно поданий хибний факт проходить: суддя оцінює те, що бачить.Дайте йому джерела й список фактів, потрібні, щоб мати рацію (рядки 7–8)
Середини шкалиКоли просять оцінку з десяти, судді вічно ставлять сімки й вісімки.«Пройшло / ні» на кожен критерій — кілька критеріїв замість одного загального бала

Далі калібруйте — і так, як тестували б будь-який класифікатор. Нехай предметний експерт розмітить кейси як «пройшло» чи «ні» з поясненням в один рядок. Гусейн радить близько сотні розмічених прикладів на кожен вид збою й попереджає, що за менш ніж шістдесяти невизначеність надто велика для висновків. Розділіть їх: кілька йдуть у промпт судді як приклади, приблизно половина — набір розробки, на якому покращують промпт, а решта — тестовий набір, на який дивляться один раз, наприкінці.

На тестовому наборі звітуйте два числа, а не одне. Частка істинно позитивних () — це частка справжніх збоїв, які суддя ловить; частка істинно негативних () — частка добрих відповідей, які він пропускає. Сама лише згода ховає той збій, що має значення, бо більшість відповідей добрі: суддя, що пропускає все, збігається з експертом так само часто, як трапляються добрі відповіді.

Згода з експертом — число, яке більшість команд звітує про суддю-модель, і саме собою воно ховає той збій, що має значення. Ті самі сто відкладених кейсів показано двічі; експерт розмітив 85 із них як добрі й 15 як збої. Суддя A пропускає все. Він збігається з експертом у 85 відсотках випадків — просто тому, що 85 відсотків відповідей добрі, — і не ловить жодного з пʼятнадцяти збоїв: його частка істинно позитивних дорівнює нулю, і каппа, згода з поправкою на випадковість, теж нуль. Суддя B позначає двадцять кейсів — дванадцять справжніх збоїв і вісім добрих відповідей, які хибно відхиляє, — і пропускає три збої. Його згода 89 відсотків, лише на чотири пункти вища, але частка істинно позитивних — 80 відсотків, істинно негативних — 91, а каппа — 0,62. Розрізняють суддів саме частки для кожного класу, тому їх і звітують замість згоди.

Каппа Коена, статистика 1960 року, каже те саме одним числом: згода, очищена від того, що дав би випадок. У судді A каппа дорівнює 0, у судді B — 0,62. А коли TPR і TNR відомі, сирий відсоток «пройшло» від судді можна виправити. Суддя B пропускає 80% відповідей; знаючи, що він відхиляє 9% добрих і пропускає 20% поганих, справжній відсоток добрих виходить 85%.

Суддя — ще й залежність із версією та ціною. Закріпіть його модель, інакше оновлення провайдера тихо перемасштабує всі історичні числа. Тримайте його промпт у системі контролю версій поруч із кодом: змінити лінійку так само значуще, як змінити те, що нею міряють, і значно легше зробити це випадково. Перевіряйте TPR і TNR щоразу, коли суттєво змінюється суддя або система, яку він оцінює.

Як читати числа, не обманюючи себе

Результат оцінювання — це вимірювання на вибірці, а вимірювання без невизначеності — пів факту. 2024 року Еван Міллер виклав, як звітувати результати оцінювання так, як інші науки звітують експерименти: стандартна похибка поруч із кожним балом, кластерні похибки, коли кейси йдуть повʼязаними групами, повторні вибірки, щоб зменшити шум, порівняння питання за питанням і перевірка до запуску, чи здатен набір помітити різницю, яка вас цікавить.

Бал оцінювання — це вимірювання на вибірці, і його невизначеність залежить від кількості кейсів. Ту саму частку «пройшло», 82 відсотки, тут показано з 95-відсотковим діапазоном для чотирьох розмірів набору. На сорока кейсах діапазон сягає майже дванадцяти пунктів у кожен бік, тож зміна, що піднімає бал до 85 відсотків, — це один кейс, і вона нічого не каже. На 120 кейсах діапазон — близько семи пунктів, і зміна досі всередині; на 400 вона на межі; лише на тисячі незалежних кейсів приріст на три пункти чітко виходить за межі шуму. Щоб за такої частки відрізнити три пункти від шуму, потрібно близько 630 незалежних кейсів. Дешевший вихід — порівнювати ті самі кейси до і після зміни, що безкоштовно прибирає різницю між кейсами, і дивитися, які кейси зрушили, а не на середнє.
Кейсів у наборі95% діапазон навколо 82% «пройшло»Що означає зміна на 3 пункти
40±11,9 пунктуНічого; це приблизно один кейс
120±6,9 пунктуДосі в межах шуму
400±3,8 пунктуНа межі
1 000±2,4 пунктуСправжня різниця, якщо кейси незалежні

Щоб відрізнити зміну на 3 пункти від шуму при 82% «пройшло», потрібно близько 630 незалежних кейсів. Мало в кого стільки є, і стільки не потрібно, бо дві рекомендації Міллера роблять більшу частину роботи. Порівнюйте дві версії покейсно — той самий кейс до і після, — а не одне середнє з іншим: це прибирає різницю між кейсами й нічого не коштує. А коли кейси йдуть групами, наприклад кілька реплік однієї розмови, рахуйте кластерні похибки — у його прикладах вони сягали понад утричі більших за наївні.

Число, з яким можна діяти

  • Звітується з діапазоном — і за групами збоїв, і загалом.
  • Кожен кейс запущено кілька разів, тож шум семплінгу виміряно, а не відкинуто припущенням.
  • Порівняне покейсно із записаною базовою лінією, захищені кейси — першими.
  • Оцінене суддею, чиї TPR і TNR надруковано поруч.

Число, що вам бреше

  • Один відсоток з одного запуску, де зсув на 2 пункти не відрізнити від шуму.
  • Девʼяносто чотири відсотки на наборі з кейсів, які вже проходили.
  • Бал, що лише зростає, бо промпт підганяють під набір.
  • Відсоток згоди судді без TPR поруч.

Чужі числа: чотири вимірювання, що ввели в оману

Публічні бенчмарки й цифри постачальників — теж оцінювання, яке будують люди під тим самим тиском, і ламаються вони так само. Кожне з цих чотирьох було опубліковане, широко цитоване й хибне щодо того, що, здавалося, вимірює. Жодне не було шахрайством у звичному сенсі; кожне — рішення про те, як збирати чи оцінювати набір.

ВимірюванняЩо з ним було не такЯке правило порушено
Epic Sepsis Model, зовнішня перевірка 2021Попередження про сепсис, яким користувалися сотні лікарень США, за даними розробника мало 0,76–0,83 (AUC, де 0,5 — підкидання монети). У Michigan Medicine на 38 455 госпіталізаціях воно дало 0,63, пропустило дві третини випадків сепсису й спрацювало на 18% усіх госпіталізацій. Якщо врахувати прогнози, зроблені до трьох годин після початку сепсису, показник зростав до 0,80 — тобто оцінка частково зараховувала кейси, де відповідь уже була видна.Набір має відтворювати рішення в момент, коли воно ухвалюється, — без видимої моделі відповіді й на тій популяції, яку вона зустріне
MMLU, переразмічений 2024Перевіривши 5 700 питань найцитованішого бенчмарка знань, Арйо Гема й колеги оцінили, що помилки містять 6,49% усіх питань — і 57% проаналізованих питань із вірусології.Мітки — це дані, і їх треба перевіряти; бал вище за частку помилок у мітках частково міряє самі помилки
Llama 4 на LMArena, квітень 2025Модель, що принесла Meta високе місце в рейтингу з голосуванням натовпу, була невипущеним варіантом, «оптимізованим для розмовності»; випущена модель опинилася нижче за моделі, старші на кілька місяців. Дослідження рейтингу нарахувало 27 приватних варіантів, які Meta протестувала там перед релізом, і показало, як перевірка багатьох варіантів із публікацією найкращого завищує бал.Оцінюйте те, що випускаєте; спробувати багато варіантів на одному наборі й показати найкращий — це підгонка під набір
SWE-bench Verified, 2024–20262024 року його зібрали так: 93 розробники переглянули 1 699 задач із програмування й лишили 500. У лютому 2026 року OpenAI перевірила 138 складних і виявила, що 59,4% мають тести чи описи, які роблять їх надзвичайно складними або неможливими для розвʼязання, а також ознаки того, що моделі бачили розвʼязки під час навчання. OpenAI перестала звітувати цей бенчмарк.Публічний набір просочується в навчання; тримайте приватний відкладений набір і перевіряйте оцінювачів так само, як кейси

Де це вироджується

Чесне обмеження в тому, що кожне число на цій сторінці міряє збіг із чиїмось уявленням про «добре», записаним в один момент. Рубрика дрейфує під час читання, експерт розмічає за правилами минулого кварталу, а набір описує збої, які ви вже зустрічали. Оцінювання може сказати, що зміна не погіршила відомого. Воно не може сказати, що фіча добра, і шістнадцятий рядок — що насправді зробили клієнти — лишається єдиним, що на це відповідає.

  • Загальні метрики, обрані до того, як хтось прочитав бодай одну розмову, — вони міряють проблеми, яких ніхто не бачив.
  • Набір із кейсів, що вже проходять: звітує високе число й не виявляє нічого.
  • Суддя-модель на питаннях, які вирішив би код: купівля невизначеності за ціною на кейс.
  • Суддя, якого звітують відсотком згоди, і ніхто не перевіряє, чи ловить він бодай якісь збої.
  • Один загальний бал з десяти, що усереднює й ховає той єдиний вимір, який зламався.
  • Без відкладеного набору: промпт підганяють під набір, доки той не перестане щось передбачати.
  • Приріст на 3 пункти на сорока кейсах з одного запуску, оголошений як результат.
  • Місце в публічному рейтингу, сприйняте як доказ щодо вашого власного сценарію.
  • Незакріплений суддя, що тихо перемасштабовує всі історичні результати.

Коли це застосовувати

Застосовуйте, коли

  • Щойно у фічі є справжні розмови, які можна прочитати: тридцять справжніх збоїв кращі за платформу.
  • З аналізом помилок на початку, щоб кожен оцінювач існував для збою, який хтось бачив.
  • З найнижчим щаблем, що вирішує кожне питання, і суддею лише там, де йдеться про зміст.
  • З кожним суддею, протестованим на розмічених кейсах і звітованим разом зі своїми TPR і TNR.

Уникайте, коли

  • Оцінки моделлю для всього, що точно вирішує перевірка схеми, перерахунок чи пошук.
  • Висновків з одного середнього з одного запуску, де шум і справжня зміна виглядають однаково.
  • Вибору моделі для продукту лише за публічним рейтингом.
  • Будувати платформу оцінювання до появи фічі: це куплений процес замість інформації.

Джерела й метод

На чому стоїть ця стаття

  • 16 джерел
  • 4 задокументовані збої
  • Перевірено 17 жовтня 2026 р.

Дослідження з Claude. Пошук і звірку першоджерел зроблено з Claude (Anthropic). Відбір, текст і перевірку фактів — редакція Anatomy of IT Product.

Було корисно?

Поділіться з тим, хто працює над тією ж задачею.