Skip to Content

Тестирование

В разделе Тестирование можно отправлять запросы к навыкам проекта и сразу видеть ответы, которые получила бы роботизированная система при выполнении той же операции. Здесь подбирают промпт, файл контекста и параметры генерации, а удачные значения сохраняют в навык.

Страница состоит из двух областей: слева – форма Запрос, справа – Ответ (появляется после отправки запроса).

ℹ️

Страница предназначена для отладки и не используется для промышленной эксплуатации модели. Чтобы пользователь имел право отправлять тестовые запросы, его роль должна обладать разрешением Запросы к API инференс – Управление.

Запрос

Форма тестового запроса

Модель

В верхней части формы отображается строка Модель – модель, которая обрабатывает запросы сервиса проекта (или адрес сервиса), значки ее возможностей (обработка изображений, рассуждение) и метка состояния:

  • Активна – сервис запущен и готов принимать запросы. При наведении на метку отображается машина, на которой работает модель.
  • Не активен – сервис проекта не запущен. Запустите его в разделе Использование.
  • Не активна – сервис запущен, но модель на нем не работает.

Раздел Тестирование доступен и до запуска сервиса, но запросы обрабатываться не будут.

Если запрос с выбранным навыком не дойдет до модели, вместо метки Активна отображается причина, например, Навык не передан или Ключ задвоен. Наведите курсор на метку, чтобы увидеть подсказку, как исправить проблему.

Параметры запроса

  • Навык – навык проекта, который обработает запрос.
  • Ключ маршрутизации – ключ выбранного навыка. Поле заполняется автоматически при выборе навыка и доступно только для чтения; значение можно скопировать кнопкой рядом с ним.
  • Текст для обработки – входной текст. Максимальная длина текста ограничена размером контекстного окна модели.
  • Файл для обработки – документ (изображение или PDF), который модель использует как входные данные. Чтобы добавить файл, нажмите Прикрепить файл. Если прикреплено изображение, дополнительно отображаются:
    • Определение ориентации – ориентация изображения будет определена и исправлена перед отправкой в LLM;
    • Корректировать наклон до …° – максимальный угол выравнивания документа (deskew). Чем меньше значение, тем точнее, но медленнее выравнивание – подходит для структурированных документов (форм, таблиц); чем больше значение, тем быстрее, но грубее – подходит для фотографий и неструктурированных страниц. Допустимый диапазон 5–45°, рекомендуемое значение 5–8°. По умолчанию 45°.
  • Ключи ответа – данные, которые нужно извлечь, или темы, на которых модели нужно сделать акцент. Значения зависят от задачи: например, при экстракции данных из договора ключами могут быть сумма, дата, номер договора. Введите ключ и нажмите Enter, чтобы добавить следующий.
  • Рассуждение и Включать рассуждение в ответ – флажки отображаются, только если модель поддерживает режим рассуждения.
  • Проверять ответ – флажок отображается, если заданы ключи ответа. Если отмечен, итоговый ответ модели проверяется на соответствие json-схеме с указанными ключами.
  • Длина ответа – максимальная длина ответа модели в токенах. По умолчанию 512.
ℹ️

Токен – базовая единица текста в LLM. В среднем одно русское слово составляет примерно два токена.

Расширенные параметры

  • Температура – степень случайности ответа. При низкой температуре модель выбирает наиболее вероятные токены, и ответы стабильнее и предсказуемее; при высокой ответы разнообразнее. По умолчанию 0.0 – оптимальное значение для корректных результатов.
  • min_p – порог вероятности выбора токенов, где 0 – любой токен, 1 – самый вероятный. Чем выше порог, тем больше редких и неуместных токенов отсекается. Температура и min_p работают в связке: сначала отбирается диапазон токенов по температуре, затем он фильтруется по порогу. По умолчанию 0.1.
  • Файл с контекстом (.json) – переопределить файл контекста навыка для этого запроса. Например, добавить в файл примеры и посмотреть, как изменится поведение модели. Структура файла описана в разделе Навыки.
  • Системный промпт – переопределить инструкцию навыка для этого запроса. Например, изменить язык ответа (в этом случае язык также нужно изменить в файле контекста).

Сохранение параметров в навык

Значения, подобранные на странице тестирования, действуют только для тестовых запросов. Чтобы с ними обрабатывались все запросы к навыку, в том числе от роботов, сохраните их в навык. Рядом с полями Ключи ответа, Температура, min_p, Файл с контекстом (.json) и Системный промпт расположены значки:

  • дискета (подсказка «Сохранить в навык») – сохранить текущее значение поля в выбранный навык;
  • круговая стрелка – вернуть в поле значение, сохраненное в навыке.

Значки неактивны, если значение в поле совпадает со значением в навыке. Сохраненные файл контекста и системный промпт отображаются и в карточке навыка в разделе Навыки.

Отправка запроса

Нажмите Отправить. Пока запрос обрабатывается, кнопка Отправить сменяется на кнопку Отменить: с её помощью можно прервать выполнение запроса, не дожидаясь ответа модели.

Ответ

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

  • Значок рядом с заголовком Ответ показывает ответ модели до постпроцессинга (например, код класса до замены на название у модели после файнтюнинга).
  • Кнопки в заголовке позволяют повторить запрос и скопировать ответ.
  • Под ответом указаны его длина, время выполнения запроса и время до первого токена.

Как уменьшить количество ошибок в ответах

  • Прописывайте все ключи ответа и подробно формулируйте запрос для навыка генерации. Чем больше подробностей, тем лучше модель поймет задачу.
  • Формируйте файлы контекста под задачи организации: модель опирается на примеры из контекста и отвечает точнее.
  • Ограничьте свободу модели: например, для снижения галлюцинаций установите температуру 0.1 и повысьте min_p. Галлюцинация – ответ, который кажется правдоподобным, но на самом деле неверен или бессмыслен.

Что дальше

Когда навыки отлажены, подготовьте RPA-проект в Primo RPA Studio, который будет отправлять запросы к навыкам. Для этого установите в Primo RPA Studio библиотеку Primo.AI.Server .