Почему тест pass/fail не работает для вывода AI и как построить рубрику оценки, которая работает.
Традиционное тестирование опирается на чёткое понятие правильности: заранее определённое ожидаемое значение, с которым фактический результат либо совпадает, либо нет. AI-системы почти сразу ломают эту модель, потому что один и тот же запрос может иметь несколько разных допустимых ответов, каждый из которых правилен по-своему. Прежде чем написать хотя бы один осмысленный тест-кейс для AI-функции, команде нужно договориться, что именно означает «правильно» для этой функции.
В этой статье рассматриваются:
Попросите AI-ассистента «суммировать эту статью в двух предложениях» и дайте тот же запрос трём опытным авторам — вы получите три разных, но одинаково приемлемых резюме. Здесь нет единой ожидаемой строки, с которой можно сравнить результат. Попытка втиснуть вывод AI в строгий тест «прошёл/не прошёл» приводит либо к ложным провалам (ответ был хорошим, но не совпал с ожидаемым текстом дословно), либо к ложным прохождениям (тест ослабили настолько, что он перестал ловить реальные проблемы). Ни один из этих исходов не даёт команде надёжного сигнала — поэтому оценка AI требует собственного подхода, а не простого переиспользования традиционного тестирования на основе assert.
Большинство стратегий оценки AI комбинируют несколько из этих подходов, а не полагаются на один:
Рубрика превращает расплывчатое представление о качестве в то, что тестировщик — или автоматический оценщик — может применять последовательно. Работающая рубрика обычно определяет для каждого критерия, как выглядит высшая оценка, средняя оценка и провальная оценка, с конкретным примером каждой. Для чат-бота поддержки клиентов рубрика может оценивать каждый ответ по точности (верна ли информация), полноте (полностью ли отвечает на вопрос), тону (уместен ли для бренда) и безопасности (избегает ли что-либо вредное или нарушающее политику) — каждый критерий оценивается независимо, поскольку ответ может быть абсолютно точным и всё равно не пройти по тону. Важно вовлекать в определение рубрики всю команду — продукт, QA и того, кто отвечает за AI-систему, — потому что «правильность» в конечном счёте продуктовое решение, а не только тестировочное.
Некоторые вопросы правильности никогда полностью не сводятся к объективному правилу, и притворяться иначе — значит создавать рубрики, с которыми на практике никто на самом деле не согласен. Когда критерий действительно субъективен — тон, полезность, креативность, — полезно, чтобы один и тот же вывод независимо оценили несколько рецензентов и сравнили результаты; сильное расхождение между рецензентами само по себе полезная информация, поскольку обычно означает, что определение в рубрике нужно уточнить, а не что рецензенты ошибаются. Со временем расхождения стоит устранять, уточняя рубрику более конкретными примерами, а не просто выбирая мнение более удобного рецензента.
Определение «правильности» в AI-системах — полный кейс
Обеспечение качества и охвата в AI-генерируемых вопросах