Como rastrear seu aplicativo com o SDK do Azure AI Inference
Importante
Os itens marcados (visualização) neste artigo estão atualmente em visualização pública. Essa visualização é fornecida sem um contrato de nível de serviço e não a recomendamos para cargas de trabalho de produção. Algumas funcionalidades poderão não ser suportadas ou poderão ter capacidades limitadas. Para obter mais informações, veja Termos Suplementares de Utilização para Pré-visualizações do Microsoft Azure.
Neste artigo, você aprenderá como rastrear seu aplicativo com o SDK de inferência do Azure AI com sua escolha entre usar Python, JavaScript ou C#. A biblioteca de cliente do Azure AI Inference fornece suporte para rastreamento com OpenTelemetry.
Habilitar o rastreamento em seu aplicativo
Pré-requisitos
- Uma assinatura do Azure.
- Um projeto de IA do Azure, consulte Criar um projeto no portal do Azure AI Foundry.
- Um modelo de IA que suporta a API de inferência de modelo de IA do Azure implementada através do Azure AI Foundry.
- Se estiver usando Python, você precisará do Python 3.8 ou posterior instalado, incluindo pip.
- Se estiver usando JavaScript, os ambientes suportados são versões LTS do Node.js.
Instalação
Instale o pacote azure-ai-inference
usando seu gerenciador de pacotes, como pip:
pip install azure-ai-inference[opentelemetry]
Instale o plug-in de rastreamento OpenTelemetry do Azure Core, o OpenTelemetry e o exportador de OTLP para enviar telemetria para seu back-end de observabilidade. Para instalar os pacotes necessários para Python, use os seguintes comandos pip:
pip install opentelemetry
pip install opentelemetry-exporter-otlp
Para saber mais sobre o SDK de Inferência de IA do Azure para Python e a observabilidade, consulte Rastreamento via SDK de Inferência para Python.
Para saber mais, consulte a referência do SDK de inferência.
Configuração
Você precisa adicionar as seguintes definições de configuração de acordo com seu caso de uso:
Para capturar o conteúdo do prompt e da conclusão, defina a variável de ambiente como true (sem distinção entre maiúsculas
AZURE_TRACING_GEN_AI_CONTENT_RECORDING_ENABLED
e minúsculas). Por padrão, prompts, conclusão, nomes de funções, parâmetros ou saídas não são registrados.Para habilitar o rastreamento do SDK do Azure, defina a variável de
AZURE_SDK_TRACING_IMPLEMENTATION
ambiente como opentelemetry. Como alternativa, você pode configurá-lo no código com o seguinte trecho:from azure.core.settings import settings settings.tracing_implementation = "opentelemetry"
Para saber mais, consulte Biblioteca de cliente OpenTelemetry do Azure Core Tracing para Python.
Ativar instrumentação
A etapa final é habilitar a instrumentação do Azure AI Inference com o seguinte trecho de código:
from azure.ai.inference.tracing import AIInferenceInstrumentor
# Instrument AI Inference API
AIInferenceInstrumentor().instrument()
Também é possível desinstrumentar a API de Inferência de IA do Azure usando a chamada uninstrument. Após essa chamada, os rastreamentos não serão mais emitidos pela API de Inferência de IA do Azure até que o instrumento seja chamado novamente:
AIInferenceInstrumentor().uninstrument()
Rastreando suas próprias funções
Para rastrear suas próprias funções personalizadas, você pode aproveitar o OpenTelemetry, você precisará instrumentar seu código com o SDK do OpenTelemetria. Isso envolve a configuração de um provedor de rastreador e a criação de extensões em torno do código que você deseja rastrear. Cada span representa uma unidade de trabalho e pode ser aninhado para formar uma árvore de traços. Você pode adicionar atributos a extensões para enriquecer os dados de rastreamento com contexto adicional. Uma vez instrumentado, configure um exportador para enviar os dados de rastreamento para um back-end para análise e visualização. Para obter instruções detalhadas e uso avançado, consulte a documentação do OpenTelemetry . Isso ajudará você a monitorar o desempenho de suas funções personalizadas e obter informações sobre sua execução.
Anexar comentários do usuário a rastreamentos
Para anexar comentários do usuário a rastreamentos e visualizá-los no portal do Azure AI Foundry usando as convenções semânticas do OpenTelemetry, você pode instrumentar seu aplicativo habilitando o rastreamento e registrando comentários do usuário. Ao correlacionar rastreamentos de feedback com seus respetivos rastreamentos de solicitação de chat usando a ID de resposta, você pode usar a exibição e gerenciar esses rastreamentos no portal do Azure AI Foundry. A especificação do OpenTelemetry permite dados de rastreamento padronizados e enriquecidos, que podem ser analisados no portal do Azure AI Foundry para otimização de desempenho e insights da experiência do usuário. Essa abordagem ajuda você a usar todo o poder do OpenTelemetry para melhorar a observabilidade em seus aplicativos.
Conteúdos relacionados
- Exemplos Python contendo código Python totalmente executável para rastreamento usando clientes síncronos e assíncronos.
- Exemplos de JavaScript contendo código JavaScript totalmente executável para rastreamento usando clientes síncronos e assíncronos.
- Exemplos de C# contendo código C# totalmente executável para fazer inferência usando métodos síncronos e assíncronos.