Запуск оценки в Azure DevOps (предварительная версия)

Важно

Элементы, помеченные (предварительная версия) в этой статье, в настоящее время находятся в общедоступной предварительной версии. Эта предварительная версия предоставляется без соглашения об уровне обслуживания, и мы не рекомендуем ее для рабочих нагрузок. Некоторые функции могут не поддерживаться или могут иметь ограниченные возможности. Дополнительные сведения см. в разделе Supplemental Terms of Use for Microsoft Azure Previews.

Это расширение Azure DevOps позволяет автономную оценку агентов Microsoft Foundry в потоках CI/CD. Это упрощает автономный процесс оценки, чтобы определить потенциальные проблемы и внести улучшения перед выпуском обновления в рабочей среде.

Чтобы использовать это расширение, предоставьте набор данных с тестовых запросов и список оценщиков. Эта задача вызывает ваших агентов с запросами, оценивает их и создает сводный отчет.

Функции

  • Agent Evaluation: автоматизация процесса предварительной оценки агентов Microsoft Foundry в вашем рабочем процессе CI/CD.
  • Оценщики: используйте любые оценщики из каталога оценщиков платформы Foundry.
  • Статистический анализ. Результаты оценки включают в себя доверительные интервалы и проверку статистической важности, чтобы определить, являются ли изменения значимыми, а не из-за случайного изменения.

Категории оценщика

Необходимые условия

Совет

Рекомендуемый метод проверки подлинности — Microsoft Entra ID через подключение к службе Azure Resource Manager. Создайте подключение службы в проекте Azure DevOps, затем сошлитесь на него в конвейере с использованием задачи AzureCLI@2 перед AIAgentEvaluation@2.

Входы

Параметры

Имя Обязательно? Описание
Azure AI - проектная конечная точка Да Конечная точка проекта Microsoft Foundry. Чтобы найти это значение, откройте проект на портале Foundry и скопируйте конечную точку на странице обзора .
название развертывания Да Название развертывания модели ИИ Azure, которую следует использовать для оценки. Найдите существующие развертывания в разделе "Модели и конечные точки" на портале Foundry.
путь к данным Да Путь к файлу данных, содержащему оценщиков и входные запросы для оценки.
идентификаторы агента Да Идентификатор одного или нескольких агентов для оценки в формате agent-name:version (например, my-agent:1 или my-agent:1,my-agent:2). Несколько агентов разделены запятыми и сравниваются с результатами статистического теста.
базовый идентификатор агента Нет Идентификатор базового агента для сравнения при оценке нескольких агентов. Если он не указан, используется первый агент.

Примечание

Чтобы найти идентификатор агента и версию, откройте проект на портале Foundry, перейдите в раздел Агентов, выберите вашего агента, и скопируйте идентификатор агента из области сведений. Версия — номер версии развертывания (например, my-agent:1).

Файл данных

Входной файл данных должен быть JSON-файлом со следующей структурой:

Поле Тип Обязательно? Описание
Имя Строка Да Имя набора данных оценки.
Оценщиков string[] Да Список имен оценщиков для использования. Ознакомьтесь со списком доступных оценщиков в каталоге оценщиков вашего проекта на портале Foundry: Build > Evaluations > каталог оценщиков.
данные object[] Да Массив входных объектов с query и необязательными полями вычислителя, такими как ground_truth, context. Автоматическое сопоставление с вычислителями; используется data_mapping для переопределения.
openai_graders Объект Нет Конфигурация для оценщиков на основе OpenAI (label_model, score_model, string_check и т. д.).
параметры_оценщика Объект Нет Параметры инициализации, специфические для оценивателя (например, пороговые значения, пользовательские настройки).
сопоставление данных Объект Нет Настраиваемые сопоставления полей данных (автоматически сформированные из данных, если они не предоставлены).

Базовый пример файла данных


{
  "name": "test-data",
  "evaluators": [
    "builtin.fluency",
    "builtin.task_adherence",
    "builtin.violence"
  ],
  "data": [
    {
      "query": "Tell me about Tokyo disneyland"
    },
    {
      "query": "How do I install Python?"
    }
  ]
}

Дополнительные примеры файлов данных

Имени файла Описание
dataset-tiny.json Набор данных с небольшим количеством тестовых запросов и оценщиков.
dataset.json Набор данных со всеми поддерживаемыми типами оценщика и достаточным количеством запросов для вычисления доверия и статистического теста.
dataset-builtin-evaluators.json Встроенные оценщики Foundry (например, согласованность, беглость, релевантность, обоснованность, метрики).
dataset-openai-graders.json Пример оценки на основе OpenAI (модели меток, модели оценки, сходство текста, строковые проверки).
dataset-custom-evaluators.json Пример пользовательских вычислителей с параметрами вычислителя.
dataset-data-mapping.json Пример сопоставления данных, показывающий, как переопределить автоматическое сопоставление полей с пользовательскими именами столбцов данных.

Пример конвейера

Чтобы использовать это расширение, добавьте задачу AIAgentEvaluation@2 в конвейер Azure. В следующем примере показана полная цепочка обработки, которая аутентифицируется через подключение службы Azure Resource Manager и оценивает агент.

steps:
  - task: AIAgentEvaluation@2
    displayName: "Evaluate AI Agents"
    inputs:
      azure-ai-project-endpoint: "$(AzureAIProjectEndpoint)"
      deployment-name: "$(DeploymentName)"
      data-path: "$(System.DefaultWorkingDirectory)/path/to/your/dataset.json"
      agent-ids: "$(AgentIds)"

Результаты и выходные данные оценки

В сводке конвейера Azure DevOps отображаются результаты оценки. В отчете показаны оценки для каждой метрики, доверительных интервалов и ( при оценке нескольких агентов ) парное статистическое сравнение, указывающее, являются ли различия значимыми или в случайных вариациях.

На следующем снимке экрана показан пример отчета, сравнивающего два агента.

Скриншот обзора конвейера Azure DevOps, показывающий оценки агентов с доверительными интервалами и парным статистическим сравнением для двух агентов.