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


Обзор отслеживания агента

Это важно

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

Замечание

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

Microsoft Foundry предоставляет платформу наблюдения для мониторинга и трассировки агентов ИИ. Он записывает ключевые сведения во время выполнения агента, такие как входные данные и результаты, применение утилит, повторные попытки, задержки и стоимость. Понимание логики работы вашего агента важно для устранения неполадок и отладки. Однако понимание сложных агентов представляет проблемы по нескольким причинам:

  • Существует большое количество шагов, связанных с созданием ответа, что затрудняет отслеживание всех из них.
  • Последовательность шагов может отличаться в зависимости от входных данных пользователя.
  • Входные и выходные данные на каждом этапе могут быть длинными и заслуживают более подробной проверки.
  • Каждый шаг среды выполнения агента также может включать вложение. Например, агент может вызвать средство, которое использует другой процесс, который затем вызывает другое средство. Если вы заметите странные или неправильные выходные данные из запуска агента верхнего уровня, может быть трудно определить, где именно в выполнении возникла проблема.

Результаты трассировки позволяют просматривать входные и выходные данные каждого примитива, связанного с определенным запуском агента, отображаемым в том порядке, в котором они были вызваны, что упрощает понимание и отладку поведения агента ИИ.

Предпосылки

Чтобы использовать сквозную трассировку, вам потребуется:

  • Проект Foundry с активированной трассировкой. Чтобы настроить его, см. инструкции по настройке трассировки в Microsoft Foundry.
  • Доступ к ресурсу Application Insights, подключенного к проекту. Дополнительные сведения см. в статье Azure Monitor Application Insights.
  • Роль читателя Log Analytics для просмотра трассировок, аналитических сведений и визуализаций в Foundry.

Замечание

Отслеживание хранит данные телеметрии в Azure Monitor Application Insights, что может вызвать расходы в зависимости от объема данных и настроек хранения. Сведения о ценах см. в разделе Цены на Application Insights.

OpenTelemetry в Foundry

OpenTelemetry (OTel) предоставляет стандартные протоколы для сбора и маршрутизации данных телеметрии. Foundry использует семантические соглашения OpenTelemetry, чтобы трассировки соответствовали поддерживаемым средствам и интеграции.

Ключевые концепции трассировки

Ниже приведен краткий обзор ключевых понятий перед getting started:

Основные понятия Description
Следы Трассировки фиксируют процесс прохождения запроса или работы через ваше приложение путем фиксации событий и изменений состояния (вызовы функций, значения, системные события). См. статью "Трассировка OpenTelemetry".
Диапазоны Диапазоны — это основные компоненты трассировок, обозначающие отдельные операции внутри трассы. Каждый диапазон фиксирует время начала и окончания, атрибуты и может быть вложен для отображения иерархических связей, что позволяет увидеть полный стек вызовов и последовательность операций.
Attributes Атрибуты — это пары "ключ-значение", присоединенные к трассировкам и диапазонам, предоставляющие контекстные метаданные, такие как параметры функции, возвращаемые значения или пользовательские заметки. Обогащение данных трассировки делает их более информативными и полезными для анализа.
Семантические соглашения OpenTelemetry определяет семантические соглашения для стандартизации имен и форматов атрибутов данных трассировки, что упрощает интерпретацию и анализ между инструментами и платформами. Дополнительные сведения см. в семантических соглашениях OpenTelemetry.
Экспортеры трассировки Экспортеры трассировки отправляют данные трассировки в бэкенд-системы для хранения и анализа. В Foundry трассировки хранятся в Azure Monitor Application Insights. Сведения о включении и просмотре трассировок см. в статье "Настройка трассировки в Microsoft Foundry".

Как работает трассировка в Foundry

Трассировка помогает ответить на такие вопросы, как "Откуда пришел этот ответ?" и "Какой шаг представил ошибку или пик задержки?"

На высоком уровне трассировка фиксирует:

  • Входные данные пользователя и выходные данные агента.
  • Использование инструмента, включая вызовы и результаты использования инструментов.
  • Использование токенов
  • Сигналы времени, такие как длительность и задержка.

После включения трассировки для проекта можно просматривать трассировки на портале Foundry и в Azure Monitor Application Insights. Пошаговые параметры настройки и просмотра см. в статье "Настройка трассировки в Microsoft Foundry".

Расширение OpenTelemetry с возможностью наблюдения с несколькими агентами

Корпорация Майкрософт в сотрудничестве с Cisco Outshift представила новые семантические соглашения для мультиагентных систем, созданных на основе OpenTelemetry и контекста трассировки W3C. Эти соглашения стандартизуют данные телеметрии для рабочих процессов с несколькими агентами, обеспечивая согласованное ведение журнала метрик для качества, производительности, безопасности и затрат, включая вызовы инструментов и совместную работу.

Эти усовершенствования интегрируются в:

  • Литейный завод
  • Microsoft Agent Framework
  • LangChain
  • LangGraph
  • Пакет SDK для агентов OpenAI

Дополнительную информацию см. в разделе интеграция трассировки.

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

Тип Контекст или родительский диапазон Имя/Атрибут/Событие Цель
Пядь выполнить_задачу Записывает планирование задач и распространение событий, предоставляя аналитические сведения о том, как задачи декомпоируются и распределяются.
Дочерний диапазон вызов_агента взаимодействие_агента_с_агентом Трассирует взаимодействие между агентами.
Дочерний диапазон вызов_агента agent.state.management Эффективное использование контекста, кратковременное или долгосрочное управление памятью.
Дочерний диапазон вызов_агента планирование агента Регистрирует внутренние шаги планирования агента.
Дочерний диапазон вызов_агента оркестрация агента Осуществляет оркестрацию между агентами.
Атрибут вызов_агента определения инструментов Описывает назначение или конфигурацию средства.
Атрибут вызов_агента llm_spans Записывает диапазоны вызовов модели.
Атрибут выполнить_инструмент tool.call.arguments Регистрирует аргументы, передаваемые во время вызова средства.
Атрибут выполнить_инструмент инструмент.вызов.результаты Записывает результаты, возвращаемые средством.
Event Оценка (имя, тип_ошибки, метка) Включает структурированную оценку производительности агента и принятия решений.

Лучшие практики

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

Безопасность и конфиденциальность

Трассировка может записывать конфиденциальную информацию (например, входные данные пользователя, выходные данные модели и аргументы и результаты инструментов). Используйте следующие методики для снижения риска:

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

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

Если трассировки не отображаются на портале Foundry или Application Insights:

  • Убедитесь, что project Foundry подключен к ресурсу Application Insights.
  • Убедитесь, что у вашей учетной записи есть необходимые разрешения для запроса телеметрии.
  • Убедитесь, что код агента содержит необходимые инструменты. Сведения о настройке для конкретной платформы см. в разделе "Интеграция трассировки".

Подсказка

Во всех регионах, где поддерживается Foundry, доступна трассировка. Конфигурация Application Insights определяет хранение и выборку данных трассировки. Дополнительные сведения см. в разделе Хранение и архивация данных в журналах мониторинга Azure.