Поделиться через


Мониторинг агентов с помощью панели мониторинга агента (предварительная версия)

Это важно

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

Используйте панель мониторинга агента в Microsoft Foundry для отслеживания операционных метрик и результатов оценки для агентов. Эта панель мониторинга помогает понять использование токенов, задержку, показатели успешности и результаты оценки для продуктивного трафика.

В этой статье рассматриваются два подхода: просмотр метрик на портале Foundry и настройка непрерывной оценки программным способом с помощью пакета SDK для Python.

Предпосылки

  • Проект Foundry с по крайней мере одним агентом.
  • Ресурс Application Insights, подключенный к проекту.
  • Доступ к ресурсу Application Insights на основе ролевого доступа Azure (RBAC). Для представлений на основе журналов также требуется доступ к связанной рабочей области Log Analytics. Чтобы проверить доступ, откройте ресурс Application Insights на портале Azure, выберите элемент управления доступом (IAM) и убедитесь, что у вашей учетной записи есть соответствующая роль. Для доступа к журналам назначьте роль читателя Log Analytics.

Подключите Application Insights

Панель мониторинга агента считывает данные телеметрии из ресурса Application Insights, подключенного к проекту Foundry. Если вы еще не подключили Application Insights, выполните действия по настройке трассировки и вернитесь к этой статье.

Просмотр метрик агента

Чтобы просмотреть метрики для агента на портале Foundry, выполните следующие действия.

  1. Войдите в Microsoft Foundry. Убедитесь, что переключатель New Foundry включен. Эти действия относятся к Foundry (new).

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

  3. Перейдите на вкладку "Монитор ", чтобы просмотреть операционные, оценочные и красные данные агента.

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

Панель мониторинга предназначена для быстрого получения информации и глубокого анализа производительности ваших агентов. Она состоит из двух основных областей:

  • Сводные карточки в верхней части для высокоуровневых метрик.

  • Диаграммы и графики ниже для детализированных сведений. Эти визуализации отражают данные для выбранного диапазона времени.

Общие сведения о метриках панели мониторинга

Используйте эти определения для интерпретации панели мониторинга:

  • Использование токенов: количество токенов для трафика агента в выбранном диапазоне времени. Высокое использование маркеров может указывать на подробные запросы или ответы, которые могут быть оптимизированы.
  • Задержка: время отклика выполнения агента. Задержка выше 10 секунд может указывать на ограничение модели, сложные вызовы инструментов или проблемы с сетью.
  • Процент успешных запусков: доля запусков, которые завершились успешно. Частота выполнения ниже 95% требует расследования неудачных запусков.
  • Метрики оценки: оценки, генерируемые вычислителями, работающими с выборочными данными агента. Оценки зависят от оценщика; ознакомьтесь с документацией по отдельным оценщикам для получения рекомендаций по интерпретации.
  • Результаты ред тиминга: Результаты запланированных сканирований ред тиминга, если они включены. Неудачные проверки указывают на потенциальные риски безопасности, требующие исправления.

Замечание

Данные мониторинга хранятся в подключенном ресурсе Application Insights. Хранение и выставление счетов зависят от конфигурации Application Insights.

Настройка параметров

Используйте панель параметров монитора для настройки телеметрии, оценки и проверки безопасности агентов. Эти параметры определяют, какие диаграммы отображаются на панели мониторинга и какие оценки выполняются.

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

Чтобы получить доступ к параметрам монитора, щелкните значок шестеренки на вкладке "Монитор ". В следующей таблице описывается каждая функция мониторинга:

Setting Цель Параметры конфигурации
Непрерывная оценка Выполняет оценки по выборочным ответам агента. Включение и отключение
Добавить оценщиков
Установка частоты выборки
Запланированные оценки Выполняет оценки согласно расписанию для проверки соответствия производительности с эталонами. Включение и отключение
Выбор шаблона оценки и запуск
Настройка расписания
Красная команда сканирует Выполняет состязательные тесты для обнаружения рисков, таких как утечка данных или запрещенные действия. Включение и отключение
Выбор шаблона оценки и запуск
Настройка расписания
Оповещения Обнаруживает аномалии производительности, ошибки оценки и риски безопасности. Настройка оповещений для задержки, использования токенов, оценочных баллов или результатов анализа красной команды

Настройка непрерывной оценки (пакет SDK для Python)

Используйте пакет SDK для Python для настройки правил непрерывной оценки для ответов агента. Для этого раздела требуется Python 3.9 или более поздней версии.

pip install "azure-ai-projects>=2.0.0b1" python-dotenv

Задайте эти переменные среды собственными значениями:

  • AZURE_AI_PROJECT_ENDPOINT: Конечная точка проекта Foundry, как показано на странице обзора проекта на портале Foundry.
  • AZURE_AI_AGENT_NAME: имя агента, используемого для оценки.
  • AZURE_AI_MODEL_DEPLOYMENT_NAME: имя развертывания модели.

Назначение разрешений для непрерывной оценки

Чтобы включить правила непрерывной оценки, назначьте управляемое удостоверение проекта ролью пользователя ИИ Azure .

  1. На портале Azure откройте ресурс для проекта Foundry.
  2. Выберите элемент управления доступом (IAM) и нажмите кнопку "Добавить".
  3. Создайте назначение ролей для пользователя ИИ Azure.
  4. Для участника выберите управляемую идентичность проекта Foundry.

Создание агента

import os
from dotenv import load_dotenv
from azure.identity import DefaultAzureCredential
from azure.ai.projects import AIProjectClient
from azure.ai.projects.models import (
    PromptAgentDefinition,
)

load_dotenv()

endpoint = os.environ["AZURE_AI_PROJECT_ENDPOINT"]

with (
    DefaultAzureCredential() as credential,
    AIProjectClient(endpoint=endpoint, credential=credential) as project_client,
    project_client.get_openai_client() as openai_client,
):
    agent = project_client.agents.create_version(
        agent_name=os.environ["AZURE_AI_AGENT_NAME"],
        definition=PromptAgentDefinition(
            model=os.environ["AZURE_AI_MODEL_DEPLOYMENT_NAME"],
            instructions="You are a helpful assistant that answers general questions",
        ),
    )
    print(f"Agent created (id: {agent.id}, name: {agent.name}, version: {agent.version})")

Ссылки: AIProjectClient, DefaultAzureCredential

Создание правила непрерывной оценки

Определите оценку и правило, которое выполняется при завершении ответа. Дополнительные сведения о поддерживаемых вычислителях см. в статье "Встроенные оценщики".

from azure.ai.projects.models import (
    EvaluationRule,
    ContinuousEvaluationRuleAction,
    EvaluationRuleFilter,
    EvaluationRuleEventType,
)

data_source_config = {"type": "azure_ai_source", "scenario": "responses"}
testing_criteria = [
    {"type": "azure_ai_evaluator", "name": "violence_detection", "evaluator_name": "builtin.violence"}
]
eval_object = openai_client.evals.create(
    name="Continuous Evaluation",
    data_source_config=data_source_config,  # type: ignore
    testing_criteria=testing_criteria,  # type: ignore
)
print(f"Evaluation created (id: {eval_object.id}, name: {eval_object.name})")

continuous_eval_rule = project_client.evaluation_rules.create_or_update(
    id="my-continuous-eval-rule",
    evaluation_rule=EvaluationRule(
        display_name="My Continuous Eval Rule",
        description="An eval rule that runs on agent response completions",
        action=ContinuousEvaluationRuleAction(eval_id=eval_object.id, max_hourly_runs=100),
        event_type=EvaluationRuleEventType.RESPONSE_COMPLETED,
        filter=EvaluationRuleFilter(agent_name=agent.name),
        enabled=True,
    ),
)
print(
    f"Continuous Evaluation Rule created (id: {continuous_eval_rule.id}, name: {continuous_eval_rule.display_name})"
)

Ссылки: EvaluationRuleEventType, EvaluationRule

Проверка результатов непрерывной оценки

  1. Создайте трафик агента (например, запустите ваше приложение или проверьте агента на портале).
  2. На портале Foundry откройте агент и выберите Монитор.
  3. Просмотрите диаграммы, связанные с оценкой, для выбранного диапазона времени.

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

Вы также можете перечислить последние запуски оценки и открыть URL-адрес отчета:

eval_run_list = openai_client.evals.runs.list(
    eval_id=eval_object.id,
    order="desc",
    limit=10,
)

if len(eval_run_list.data) > 0 and eval_run_list.data[0].report_url:
    print(f"Report URL: {eval_run_list.data[0].report_url}")

Полный пример кода

Чтобы просмотреть полный пример кода, см. следующее:

Устранение неполадок

Проблема Причина Резолюция
Диаграммы панели мониторинга пусты Нет недавнего трафика, диапазон времени исключает данные или имеется задержка приёма данных. Создайте новый трафик агента, разверните диапазон времени и обновите его через несколько минут.
Вы видите ошибки авторизации Отсутствуют разрешения RBAC в Application Insights или Log Analytics Подтвердите доступ в элементе управления доступом (IAM) для подключенных ресурсов. Для доступа к журналам назначьте роль читателя Log Analytics.
Результаты непрерывной оценки не отображаются Непрерывная оценка не включена или не удалось создать правило Убедитесь, что правило включено, и трафик агента проходит. Если вы используете установку SDK для Python, убедитесь, что управляемое удостоверение проекта имеет роль Azure AI User.
Запуски оценки пропускаются Достигнуто ограничение на выполнение в час Увеличьте max_hourly_runs в конфигурации оценочного правила или дождитесь следующего часа. Ограничение по умолчанию составляет 100 запусков в час.