Наблюдаемость в семантическом ядре
Краткое введение в наблюдаемость
При создании решений искусственного интеллекта вы хотите наблюдать за поведением служб. Наблюдаемость — это возможность отслеживать и анализировать внутреннее состояние компонентов в распределенной системе. Это ключевое требование для создания корпоративных решений ИИ.
Наблюдаемость обычно достигается путем ведения журнала, метрик и трассировки. Они часто называются тремя столпами наблюдаемости. Вы также услышите термин "телеметрия", используемый для описания данных, собранных этими тремя столпами. В отличие от отладки, наблюдаемость предоставляет постоянный обзор работоспособности и производительности системы.
Полезные материалы для дальнейшего чтения:
- Наблюдаемость, определяемая Cloud Native Computing Foundation
- Распределенная трассировка
- Наблюдаемость в .Net
- OpenTelemetry
Наблюдаемость в семантическом ядре
Семантический ядро предназначено для наблюдения. Он выдает журналы, метрики и трассировки, совместимые со стандартом OpenTelemetry. Вы можете использовать любимые средства наблюдения для мониторинга и анализа поведения служб, созданных на основе семантического ядра.
В частности, семантический ядро предоставляет следующие функции наблюдаемости:
- Ведение журнала: семантическое ядро регистрирует значимые события и ошибки из ядра, подключаемых модулей ядра и функций, а также соединителей ИИ.
Внимание
Трассировки в Application Insights представляют традиционные записи журнала и события диапазона OpenTelemetry. Они не совпадают с распределенными трассировками.
- Метрики: семантический ядро выдает метрики из функций ядра и соединителей ИИ. Вы сможете отслеживать такие метрики, как время выполнения функции ядра, использование маркеров соединителей ИИ и т. д.
- Трассировка: семантическое ядро поддерживает распределенную трассировку. Вы можете отслеживать действия в разных службах и в семантических ядрах.
Телеметрия | Description |
---|---|
Журнал | Журналы записываются на протяжении ядра. Дополнительные сведения о входе в .NET см. в этом документе. Конфиденциальные данные, такие как аргументы и результаты функции ядра, регистрируются на уровне трассировки. Дополнительные сведения об уровнях журнала см. в этой таблице . |
Действие (Activity) | Каждое выполнение функции ядра и каждый вызов модели искусственного интеллекта записываются как действие. Все действия создаются источником действия с именем Microsoft.SemanticKernel. |
Метрика | Семантический ядро записывает следующие метрики из функций ядра:
|
Телеметрия | Description |
---|---|
Журнал | Журналы записываются на протяжении ядра. Дополнительные сведения о ведении журнала в Python см. в этом документе. Конфиденциальные данные, такие как аргументы и результаты функции ядра, регистрируются на уровне отладки. |
Развертывание | Каждый цикл вызова автоматической функции, выполнение каждой функции ядра и каждый вызов модели ИИ записывается в виде диапазона. |
Метрика | Семантический ядро записывает следующие метрики из функций ядра:
|
Примечание.
Наблюдаемость семантического ядра пока недоступна для Java.
Соглашение о семантике OpenTelemetry
Семантический ядро следует Соглашению о семантике OpenTelemetry для наблюдения. Это означает, что журналы, метрики и трассировки, создаваемые семантической ядром, структурированы и следуют общей схеме. Это гарантирует, что можно более эффективно анализировать данные телеметрии, создаваемые семантического ядра.
Примечание.
В настоящее время семантические соглашения для создания искусственного интеллекта находятся в экспериментальном состоянии. Семантический ядро стремится как можно ближе следовать соглашению о семантике OpenTelemetry и обеспечить согласованный и значимый интерфейс наблюдения для решений искусственного интеллекта.
Следующие шаги
Теперь, когда у вас есть базовое представление о наблюдаемости в семантическом ядре, вы можете узнать больше о том, как выводить данные телеметрии в консоль или использовать средства APM для визуализации и анализа данных телеметрии.