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


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

Это важно

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

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

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

Предпосылки

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

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

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

Просмотр метрик агента (предварительная версия)

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

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

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

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

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

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

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

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

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

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

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

Замечание

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

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

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

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

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

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

Настройка непрерывной оценки

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

Для этого раздела требуется Python 3.9 или более поздней версии.

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

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

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

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

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

  1. На портале Azure откройте ресурс для проекта Foundry.
  2. Выберите элемент управления доступом (IAM) и нажмите кнопку "Добавить".
  3. Создайте назначение роли для Azure AI User.
  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}")

Использование пользовательских оценщиков для непрерывной оценки

Помимо сторонних оценщиков, вы можете принести собственные вычислители для непрерывных вычислений. Чтобы настроить пользовательские вычислители, выполните действия, описанные в разделе "Пользовательские вычислители( предварительная версия)".

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

  1. На вкладке "Монитор " выберите "Параметры".
  2. Перейдите на вкладку непрерывной оценки .
  3. Выберите Добавить оценщика(-ов).
  4. Выберите пользовательские вычислители, которые вы хотите использовать.

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

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

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

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

Мониторинг и настройка процесса непрерывной оценки для пользовательских агентов

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

Настройте мониторинг ваших пользовательских агентов

  1. Подключение пользовательского агента к Foundry с помощью инструкций в разделе "Регистрация пользовательских агентов" и управление ими.
  2. Настройте вашего агента для соблюдения семантических соглашений для генеративных решений ИИ в стандарте OpenTelemetry.
  3. Настройте агент для отправки данных телеметрии в тот же экземпляр Application Insights, что и проект Foundry, чтобы включить функции непрерывной оценки.
  4. В Foundry Control Plane перейдите на страницу Asset и выберите своего агента.
  5. Перейдите на вкладку "Монитор ", чтобы просмотреть метрики и диаграммы.
  6. Настройте непрерывные оценки с помощью методов, описанных в разделе "Настройка параметров".