Ausgeben von Metriken für den Verbrauch großer Sprachmodelltoken

GILT FÜR: Alle API Management-Ebenen

Die Richtlinie llm-emit-token-metric sendet benutzerdefinierte Metriken an Application Insights über den Verbrauch von LLM-Token (große Sprachmodelle) über LLM-APIs.

Token-Zähl-Metriken sind modell- und anbieterabhängig und können Total-, Prompt- und Completion Tokens umfassen. In der Vorschau umfassen die Token-Zähl-Metriken zwischengespeicherte, logische, denkende und andere Token-Kategorien.

Note

Legen Sie die Elemente und untergeordneten Elemente einer Richtlinie in der Reihenfolge fest, die in der Richtlinienanweisung angegeben ist. Erfahren Sie mehr darüber, wie Sie API Management-Richtlinien festlegen oder bearbeiten.

Unterstützte Modell-APIs

Diese Richtlinie funktioniert mit LLM-APIs, die der API-Verwaltung hinzugefügt wurden, die einem der folgenden API-Schemas entsprechen:

  • OpenAI-Chatabschluss- oder Antwort-API
  • Anthropic Nachrichten-API (derzeit in API-Verwaltungsebenen v2 unterstützt)
  • Google Vertex AI API

Grenzwerte für benutzerdefinierte Metriken

Azure Monitor legt Nutzungsgrenzwerte für benutzerdefinierte Metriken fest, die sich auf ihre Fähigkeit auswirken können, Metriken aus API Management auszugeben. Beispielsweise legt Azure Monitor derzeit einen Grenzwert von 10 Dimensionsschlüsseln pro Metrik und einen Grenzwert von insgesamt 50.000 aktiven Zeitreihen pro Region in einem Abonnement fest (innerhalb eines Zeitraums von 12 Stunden). In der API-Verwaltung werden 5 dieser Elemente für Standardabmessungen verwendet, einschließlich der folgenden:

  • Region
  • Dienst-ID
  • Dienstname
  • Diensttyp

Diese Grenzwerte haben die folgenden Auswirkungen auf die Konfiguration benutzerdefinierter Metriken in API Management wie emit-metric und azure-openai-emit-token-metric:

  • Sie können maximal 5 benutzerdefinierte Dimensionen pro Richtlinie konfigurieren.

  • Die Anzahl der von der Richtlinie generierten aktiven Zeitreihen ist das Produkt der Anzahl der eindeutigen Werte jeder konfigurierten Dimension pro Namensraum. Wenn beispielsweise drei benutzerdefinierte Dimensionen in der Richtlinie konfiguriert wurden und jede Dimension innerhalb des Zeitraums 10 mögliche Werte aufweist, würde die  Richtlinie 1.000 (10 x 10 x 10) aktive Zeitreihen beitragen.

  • API-Management begrenzt jede Dimension auf 100 eindeutige Werte und jeden Metrik-Namensraum auf 1.000 aktive Zeitreihen. Wenn eine der Grenzwerte erreicht ist, werden keine neuen Dimensionswerte oder Zeitreihen mehr erfasst, und die entsprechenden metrischen Daten werden stillschweigend verworfen.

  • Wenn Sie die -Richtlinie in mehreren API Management-Instanzen konfigurieren, die sich in derselben Region in einem Abonnement befinden, können alle Instanzen zum regionalen aktiven Zeitreihengrenzwert beitragen.

Erfahren Sie mehr über Entwurfsbeschränkungen und -überlegungen für benutzerdefinierte Metriken in Azure Monitor.

Prerequisites

Richtlinienerklärung

<llm-emit-token-metric
        namespace="metric namespace" >      
        <dimension name="dimension name" value="dimension value" />
        ...additional dimensions...
</llm-emit-token-metric>

Attributes

Attribute Description Required Standardwert
namespace Eine Zeichenfolge. Namespace der Metrik Richtlinienausdrücke sind nicht zulässig. No API Management

Elements

Element Description Required
dimension Fügen Sie mindestens eines dieser Elemente für jede Dimension hinzu, die in der Metrik enthalten ist. Yes

Dimensionsattribute

Attribute Description Required Standardwert
name Eine Zeichenfolge oder ein Richtlinienausdruck. Der Name der Dimension. Yes N/A
value Eine Zeichenfolge oder ein Richtlinienausdruck. Der Wert der Dimension. Kann nur ausgelassen werden, wenn name mit einer der Standarddimensionen übereinstimmt. In diesem Fall wird der Wert gemäß Dimensionsname bereitgestellt. No N/A

Namen von Standarddimensionen, die ohne Wert verwendet werden können

  • API-ID
  • Vorgangs-ID
  • Produkt-ID
  • Benutzer-ID
  • Abonnement-ID
  • Location
  • Gateway-ID
  • Back-End-ID

Usage

Verwendungshinweise

  • Diese Richtlinie kann pro Richtliniendefinition mehrmals verwendet werden.
  • Sie können maximal fünf benutzerdefinierte Dimensionen für diese Richtlinie konfigurieren.
  • Werte im Nutzungsabschnitt der Antwort aus der LLM-API, sofern verfügbar, werden verwendet, um Tokenmetriken zu bestimmen.
  • Bestimmte LLM-Endpunkte unterstützen das Streaming von Antworten. Wenn der Strom unerwartet unterbrochen oder beendet wird, sind die erfassten Tokenzählungen ungenau.
  • Bestimmte OpenAI-Modelle, besonders beim Streaming, enthalten standardmäßig keine Token-Zählungen in der Antwort. Um die Tokenzählungen zu empfangen, setzen Sie den Parameter include_usage in der API-Anfrage auf true Token.

Example

Im folgenden Beispiel werden Metriken der LLM-Tokenanzahl zusammen mit DER API-ID als Standarddimension an Application Insights gesendet.

<policies>
  <inbound>
      <llm-emit-token-metric
            namespace="MyLLM">   
            <dimension name="API ID" />
        </llm-emit-token-metric> 
  </inbound>
  <outbound>
  </outbound>
</policies>

Weitere Informationen zum Arbeiten mit Richtlinien finden Sie hier: