Тесты
Тест объединяет датасеты и проверки. Версию проекта вы выбираете не при создании теста, а при каждом запуске. Поэтому один тест можно запускать на разных версиях и сравнивать их результаты.
Создание теста
-
В разделе Тестирование качества на вкладке Тесты нажмите Создать тест.
-
На шаге Датасеты:
- Укажите Название теста. Назовите тест так, чтобы было понятно, что он проверяет, например «Регресс: доставка и возврат».
- Выберите датасеты. Чтобы взять только часть кейсов, нажмите на стрелку справа от датасета и отметьте нужные. Кейсы можно брать из разных датасетов.
- Если нужного датасета еще нет, нажмите Новый датасет: редактор откроется прямо из окна создания теста.
- Чтобы запуски теста можно было сравнивать между собой, оставьте включенным переключатель Фиксировать датасеты: тест сохранит копию кейсов, и правки датасетов на его запуски не повлияют. Если тест должен сразу учитывать правки кейсов, отключите его. После первого запуска это изменить нельзя. Что будет с тестом после правки датасета, читайте в разделе Как правки датасетов влияют на тест.
Под названием датасета указано, сколько в нем кейсов без эталона. По проверке Выполнение задачи судья такие кейсы не оценивает.
-
На шаге Проверки:
- Выберите одну или несколько проверок. Платформа оценит ответы сразу по всем выбранным.
- Для каждой LLM-проверки выберите судью или оставьте модель, которую предложила платформа.
- Если нужно только собрать ответы агента без оценок, не выбирайте проверки: вариант Без оценки — только прогнать отмечен, пока не выбрана ни одна проверка. Добавить проверки после первого запуска нельзя, поэтому основной оценки у прогонов такого теста не будет. Оценить ответы позже можно дополнительной оценкой.
Порог в окне не настраивается: тест получит текущий порог каждой проверки.
Если в каких-то кейсах нет поля, которое нужно проверке, на шаге появится предупреждение. Чтобы заполнить поле, нажмите в предупреждении Дозаполнить: откроется датасет на первом кейсе без этого поля. Тест можно создать и с предупреждением: такие кейсы не получат оценку по этой проверке, но получат по остальным. Агент на них все равно ответит.
-
На шаге Настройки укажите Повторов на кейс — сколько раз агент ответит на каждый кейс за один запуск: от 1 до 10, по умолчанию 1. LLM может по-разному отвечать на один и тот же вопрос, поэтому задайте несколько повторов: так вы увидите, стабильно ли агент отвечает правильно.
-
Нажмите Создать.
Тест из выбранных кейсов
Тест можно собрать и на вкладке Датасеты: там удобно найти кейсы по тексту вопроса и отметить их.
-
На вкладке Датасеты найдите нужные кейсы. Чтобы раскрыть кейсы датасета, нажмите стрелку слева от его названия, а чтобы найти кейс, введите в строку поиска название датасета или текст вопроса.
-
Отметьте нужные датасеты или кейсы и нажмите Запустить тест:
-
Откроется окно Новый тест с отмеченными датасетами и кейсами. Создайте тест так же, как описано выше, начиная с шага 2.
Как правки датасетов влияют на тест
От переключателя Фиксировать датасеты на шаге Датасеты зависит, по каким кейсам пойдут запуски теста:
- Включен — тест при сохранении делает копию выбранных кейсов и запускается по ней. Все запуски идут по одним и тем же кейсам, поэтому их результаты можно сравнивать.
- Отключен — каждый запуск берет датасеты такими, какие они есть в момент запуска. Тест сразу учитывает правки кейсов, но динамика может отражать изменение датасета, а не процесса. В списке тестов и на странице теста такой тест отмечен меткой Живые датасеты.
Что будет с тестом, если изменить или удалить датасет:
| Датасет | Фиксировать датасеты включен | Фиксировать датасеты отключен |
|---|---|---|
| Изменен | Тест запускается по своей копии кейсов, поэтому правки на него не влияют. | Следующий запуск пройдет по измененным кейсам. Если в тесте отмечены отдельные кейсы хотя бы одного датасета, запуск берет только кейсы, которые были в тесте при сохранении: новые кейсы не попадут в запуск ни из одного датасета, а если удалить любой из этих кейсов, тест не запустится. |
| Удален | Тест по-прежнему можно запускать: он берет кейсы из своей копии. | Датасет в тесте подписан Датасет удален, и запустить или скопировать тест больше нельзя. Чтобы продолжить проверку, создайте новый тест. |
Результаты прошлых запусков не меняются в любом случае: оценки остаются в прогонах.
Чтобы тест, который запускается по копии кейсов, учел правки датасета:
- если вы еще не запускали тест — откройте его на редактирование и сохраните;
- если тест уже запускали — скопируйте его или создайте новый тест.
Лимиты прогонов и оценок в запуске
В одном запуске может быть не больше 1 000 прогонов и 2 000 оценок:
- Прогон — один ответ агента на один кейс. Число прогонов — это число кейсов, умноженное на число повторов.
- Оценка — результат одной проверки для одного прогона: балл судьи или результат проверки-правила. Число оценок — это число прогонов, умноженное на число проверок в тесте. Кейсы, которые проверка не оценивает, например кейсы без эталона у проверки Выполнение задачи, оценок по ней не получают и в это число не входят.
Число прогонов видно на шаге Настройки в строке Всего прогонов за запуск.
Число оценок при создании и запуске теста не отображается. Чтобы узнать, сколько оценок будет самое большее, умножьте значение Всего прогонов за запуск на число проверок в тесте. Если часть кейсов проверки не оценивают, оценок будет меньше. Если оценок больше 2 000, тест создастся, но не запустится: при запуске появится уведомление Не удалось запустить тест, и агент не ответит ни на один кейс.
В тесте 500 кейсов с эталоном, три проверки и два повтора. Агент ответит 500 × 2 = 1 000 раз — это в пределах лимита прогонов. Судья поставит 1 000 × 3 = 3 000 оценок — это больше лимита в 2 000, поэтому тест не запустится. Чтобы уложиться в лимит, оставьте один повтор — 1 500 оценок — или две проверки — 2 000 оценок.
Изменение теста
Чтобы изменить тест, откройте его и нажмите Изменить. В списке тестов для этого нажмите Изменить в строке теста.
До первого запуска вы можете менять в тесте любые настройки. После первого запуска кейсы, проверки, модели-судьи и пороги изменить нельзя: так все запуски теста оцениваются одинаково, и их результаты можно сравнивать между собой.
После первого запуска можно изменить:
- название — на странице теста нажмите рядом с названием, введите новое и нажмите Enter;
- набор датасетов и число повторов — через Изменить, только у теста с живыми датасетами. У теста, который запускается по копии кейсов, кнопки Изменить после первого запуска нет. Число повторов для одного запуска можно задать в окне запуска.
Если в тесте отмечены отдельные кейсы, а не датасеты целиком, запуск берет только эти кейсы. Поэтому, если добавить в тест еще один датасет, его кейсы в запуск не попадут. А если убрать из теста любой из прежних датасетов, тест не запустится.
Копия теста
Копия пригодится, когда тест уже запускали: кейсы, проверки и судей в нем изменить нельзя, а в копии можно. Так можно, например, добавить в тест кейсы, взять другого судью или учесть правки датасета, если тест запускается по копии кейсов. История запусков исходного теста останется у него, а копия начнет свою.
Чтобы создать копию, на странице теста нажмите Копировать. В списке тестов для этого нажмите в строке теста.
Откроется окно Новый тест с датасетами, кейсами, проверками, моделями-судьями и числом повторов исходного теста, а к названию добавится «— копия». Перед созданием вы можете изменить в копии любые настройки. Копия получит текущие пороги проверок.
Архивация теста
Если тест больше не нужен, уберите его в архив: нажмите В архив в строке теста. Удалить тест нельзя, но архивные тесты не мешают работе: по умолчанию список их скрывает.
Вместе с тестом в архив уходят все его прогоны: они выпадают из всех расчетов, а в истории запусков теста вместо Pass rate стоит — все в архиве. Пока по тесту идет запуск или оценка, убрать его в архив нельзя.
Чтобы увидеть архивные тесты, нажмите Показать архивные. Архивный тест нельзя запустить, и кнопки Изменить у него нет. Переименовать и скопировать его можно, а список его запусков сохраняется. Чтобы вернуть тест к работе, нажмите Вернуть из архива в его строке или Вернуть из архива, чтобы запустить на странице теста. Вместе с тестом из архива вернутся все его прогоны.