Udostępnij za pośrednictwem


Jak śledzić aplikację za pomocą zestawu AZURE AI Inference SDK

Ważne

Elementy oznaczone (wersja zapoznawcza) w tym artykule są obecnie dostępne w publicznej wersji zapoznawczej. Ta wersja zapoznawcza jest udostępniana bez umowy dotyczącej poziomu usług i nie zalecamy korzystania z niej w przypadku obciążeń produkcyjnych. Niektóre funkcje mogą być nieobsługiwane lub ograniczone. Aby uzyskać więcej informacji, zobacz Uzupełniające warunki korzystania z wersji zapoznawczych platformy Microsoft Azure.

W tym artykule dowiesz się, jak śledzić aplikację przy użyciu zestawu SDK wnioskowania sztucznej inteligencji platformy Azure z wyborem między użyciem języka Python, języka JavaScript lub języka C#. Biblioteka klienta wnioskowania usługi Azure AI zapewnia obsługę śledzenia za pomocą technologii OpenTelemetry.

Włączanie śledzenia w aplikacji

Wymagania wstępne

Instalacja

Zainstaluj pakiet azure-ai-inference przy użyciu menedżera pakietów, takiego jak:

  pip install azure-ai-inference[opentelemetry] 

Zainstaluj wtyczkę Azure Core OpenTelemetry Tracing, OpenTelemetry i eksporter OTLP na potrzeby wysyłania danych telemetrycznych do zaplecza możliwości obserwowania. Aby zainstalować niezbędne pakiety dla języka Python, użyj następujących poleceń:

pip install opentelemetry 

pip install opentelemetry-exporter-otlp 

Aby dowiedzieć się więcej na temat zestawu AZURE AI Inference SDK dla języka Python i możliwości obserwacji, zobacz Śledzenie za pomocą zestawu SDK wnioskowania dla języka Python.

Aby dowiedzieć się więcej, zobacz dokumentację zestawu SDK wnioskowania.

Konfigurowanie

Należy dodać następujące ustawienia konfiguracji zgodnie z przypadkiem użycia:

  • Aby przechwycić zawartość monitu i ukończenia, ustaw zmienną AZURE_TRACING_GEN_AI_CONTENT_RECORDING_ENABLED środowiskową na true (bez uwzględniania wielkości liter). Domyślnie monity, uzupełnienia, nazwy funkcji, parametry lub dane wyjściowe nie są rejestrowane.

  • Aby włączyć śledzenie zestawu Azure SDK, ustaw zmienną AZURE_SDK_TRACING_IMPLEMENTATION środowiskową na wartość opentelemetry. Alternatywnie możesz skonfigurować go w kodzie przy użyciu następującego fragmentu kodu:

    from azure.core.settings import settings 
    
    settings.tracing_implementation = "opentelemetry" 
    

    Aby dowiedzieć się więcej, zobacz Azure Core Tracing OpenTelemetry client library for Python (Biblioteka klienta OpenTelemetry śledzenia platformy Azure dla języka Python).

Włączanie instrumentacji

Ostatnim krokiem jest włączenie instrumentacji wnioskowania usługi Azure AI przy użyciu następującego fragmentu kodu:

from azure.ai.inference.tracing import AIInferenceInstrumentor 

# Instrument AI Inference API 

AIInferenceInstrumentor().instrument() 

Istnieje również możliwość odłączenia wystąpienia interfejsu API wnioskowania sztucznej inteligencji platformy Azure przy użyciu wywołania nieinstrumentowego. Po tym wywołaniu ślady nie będą już emitowane przez interfejs API wnioskowania usługi Azure AI, dopóki instrument nie zostanie ponownie wywołany:

AIInferenceInstrumentor().uninstrument() 

Śledzenie własnych funkcji

Aby śledzić własne funkcje niestandardowe, możesz użyć biblioteki OpenTelemetry, musisz instrumentować kod przy użyciu zestawu SDK OpenTelemetry. Obejmuje to skonfigurowanie dostawcy śledzenia i utworzenie zakresu wokół kodu, który chcesz śledzić. Każdy zakres reprezentuje jednostkę pracy i można go zagnieżdżać w celu utworzenia drzewa śledzenia. Atrybuty można dodawać do zakresów w celu wzbogacania danych śledzenia przy użyciu dodatkowego kontekstu. Po instrumentacjach skonfiguruj eksportera, aby wysyłał dane śledzenia do zaplecza na potrzeby analizy i wizualizacji. Aby uzyskać szczegółowe instrukcje i zaawansowane użycie, zapoznaj się z dokumentacją biblioteki OpenTelemetry. Pomoże to monitorować wydajność funkcji niestandardowych i uzyskiwać wgląd w ich wykonywanie.

Dołączanie opinii użytkownika do śladów

Aby dołączyć opinie użytkowników do śladów i zwizualizować je w portalu usługi Azure AI Foundry przy użyciu konwencji semantycznych biblioteki OpenTelemetry, możesz instrumentować aplikację umożliwiającą śledzenie i rejestrowanie opinii użytkowników. Korelując ślady opinii z odpowiednimi śladami żądań czatu przy użyciu identyfikatora odpowiedzi, możesz użyć wyświetlania tych śladów i zarządzania nimi w portalu usługi Azure AI Foundry. Specyfikacja biblioteki OpenTelemetry umożliwia ustandaryzowane i wzbogacone dane śledzenia, które można analizować w portalu usługi Azure AI Foundry w celu optymalizacji wydajności i szczegółowych informacji o środowisku użytkownika. Takie podejście ułatwia korzystanie z pełnej możliwości platformy OpenTelemetry w celu zwiększenia możliwości obserwacji w aplikacjach.

  • Przykłady języka Python zawierające w pełni uruchamiany kod języka Python do śledzenia przy użyciu klientów synchronicznych i asynchronicznych.
  • Przykłady języka JavaScript zawierające w pełni uruchamiany kod JavaScript do śledzenia przy użyciu klientów synchronicznych i asynchronicznych.
  • Przykłady języka C# zawierające w pełni uruchamiany kod języka C# do wnioskowania przy użyciu metod synchronicznych i asynchronicznych.