Observerbarhet i semantisk kernel
Kort introduktion till observerbarhet
När du skapar AI-lösningar vill du kunna observera beteendet för dina tjänster. Observerbarhet är möjligheten att övervaka och analysera det interna tillståndet för komponenter i ett distribuerat system. Det är ett viktigt krav för att skapa företagsklara AI-lösningar.
Observerbarhet uppnås vanligtvis genom loggning, mått och spårning. De kallas ofta de tre pelarna för observerbarhet. Du kommer också att höra termen "telemetri" som används för att beskriva de data som samlas in av dessa tre pelare. Till skillnad från felsökning ger observerbarhet en löpande översikt över systemets hälsa och prestanda.
Användbara material för vidare läsning:
- Observerbarhet definierad av Cloud Native Computing Foundation
- Distribuerad spårning
- Observerbarhet i .Net
- OpenTelemetry
Observerbarhet i semantisk kernel
Semantisk kernel är utformad för att vara observerbar. Den genererar loggar, mått och spårningar som är kompatibla med OpenTelemetry-standarden. Du kan använda dina favoritverktyg för observerbarhet för att övervaka och analysera beteendet för dina tjänster som bygger på semantisk kernel.
Mer specifikt tillhandahåller semantisk kernel följande observerbarhetsfunktioner:
- Loggning: Semantisk kernel loggar meningsfulla händelser och fel från kerneln, kernel-plugin-program och funktioner samt AI-anslutningsappar.
Viktigt!
Spårningar i Application Insights representerar traditionella loggposter och OpenTelemetry-spanhändelser. De är inte samma som distribuerade spårningar.
- Mått: Semantisk kernel genererar mått från kernelfunktioner och AI-anslutningsappar. Du kommer att kunna övervaka mått som körningstiden för kernelfunktionen, tokenförbrukningen för AI-anslutningsappar osv.
- Spårning: Semantisk kernel stöder distribuerad spårning. Du kan spåra aktiviteter mellan olika tjänster och inom semantisk kernel.
Telemetri | beskrivning |
---|---|
Loggas | Loggar registreras i hela kerneln. Mer information om loggning i .Net finns i det här dokumentet. Känsliga data, till exempel kernelfunktionsargument och resultat, loggas på spårningsnivå. Mer information om loggnivåer finns i den här tabellen . |
Aktivitet | Varje kernelfunktionskörning och varje anrop till en AI-modell registreras som en aktivitet. Alla aktiviteter genereras av en aktivitetskälla med namnet "Microsoft.SemanticKernel". |
Mått | Semantisk kernel samlar in följande mått från kernelfunktioner:
|
Telemetri | beskrivning |
---|---|
Loggas | Loggar registreras i hela kerneln. Mer information om loggning i Python finns i det här dokumentet. Känsliga data, till exempel kernelfunktionsargument och resultat, loggas på felsökningsnivå. |
Spann | Varje anropsloop för automatisk funktion, varje kernelfunktionskörning och varje anrop till en AI-modell registreras som ett spann. |
Mått | Semantisk kernel samlar in följande mått från kernelfunktioner:
|
Kommentar
Semantisk kernelobservabilitet är ännu inte tillgängligt för Java.
OpenTelemetry Semantic Convention
Semantisk kernel följer OpenTelemetry Semantic Convention for Observability. Det innebär att loggar, mått och spårningar som genereras av semantisk kernel är strukturerade och följer ett gemensamt schema. Detta säkerställer att du mer effektivt kan analysera telemetridata som genereras av semantisk kernel.
Kommentar
För närvarande är semantiska konventioner för generativ AI i experimentell status. Semantisk kernel strävar efter att följa OpenTelemetry Semantic Convention så nära som möjligt och ge en konsekvent och meningsfull observerbarhetsupplevelse för AI-lösningar.
Nästa steg
Nu när du har en grundläggande förståelse för observerbarhet i semantisk kernel kan du lära dig mer om hur du matar ut telemetridata till konsolen eller använder APM-verktyg för att visualisera och analysera telemetridata.