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
- Subskrypcja platformy Azure.
- Projekt sztucznej inteligencji platformy Azure znajduje się w temacie Create a project in Azure AI Foundry portal (Tworzenie projektu w portalu usługi Azure AI Foundry).
- Model sztucznej inteligencji obsługujący interfejs API wnioskowania modelu sztucznej inteligencji platformy Azure wdrożony za pośrednictwem rozwiązania Azure AI Foundry.
- Jeśli używasz języka Python, potrzebujesz zainstalowanego środowiska Python w wersji 3.8 lub nowszej, w tym narzędzia.
- W przypadku korzystania z języka JavaScript obsługiwane środowiska to wersje LTS Node.js.
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.
Powiązana zawartość
- 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.