OpenTelemetryRealtimeClientBuilderExtensions.UseOpenTelemetry Méthode

Définition

Ajoute la prise en charge d’OpenTelemetry au pipeline client en temps réel, en suivant les conventions sémantiques OpenTelemetry pour les systèmes d’INTELLIGENCE artificielle générative.

public static Microsoft.Extensions.AI.RealtimeClientBuilder UseOpenTelemetry(this Microsoft.Extensions.AI.RealtimeClientBuilder builder, Microsoft.Extensions.Logging.ILoggerFactory? loggerFactory = default, string? sourceName = default, Action<Microsoft.Extensions.AI.OpenTelemetryRealtimeClient>? configure = default);
static member UseOpenTelemetry : Microsoft.Extensions.AI.RealtimeClientBuilder * Microsoft.Extensions.Logging.ILoggerFactory * string * Action<Microsoft.Extensions.AI.OpenTelemetryRealtimeClient> -> Microsoft.Extensions.AI.RealtimeClientBuilder
<Extension()>
Public Function UseOpenTelemetry (builder As RealtimeClientBuilder, Optional loggerFactory As ILoggerFactory = Nothing, Optional sourceName As String = Nothing, Optional configure As Action(Of OpenTelemetryRealtimeClient) = Nothing) As RealtimeClientBuilder

Paramètres

loggerFactory
ILoggerFactory

Facultatif ILoggerFactory à utiliser pour créer un enregistreur d’événements de journalisation.

sourceName
String

Nom de source facultatif qui sera utilisé sur les données de télémétrie.

configure
Action<OpenTelemetryRealtimeClient>

Rappel facultatif qui peut être utilisé pour configurer l’instance OpenTelemetryRealtimeClient .

Retours

L’attribut builder.

Exceptions

builder a la valeur null.

Remarques

Le projet de spécification ci-dessous est disponible à https://opentelemetry.io/docs/specs/semconv/gen-ai/. La spécification est toujours expérimentale et sujette à modification ; par conséquent, la sortie de télémétrie par ce client est également sujette à modification.

Les conventions OpenTelemetry GenAI standard suivantes sont prises en charge :

  • gen_ai.operation.name - Nom de l’opération (« temps réel »)
  • gen_ai.request.model - Nom du modèle à partir des options
  • gen_ai.provider.name - Nom du fournisseur à partir des métadonnées
  • gen_ai.response.id - ID de réponse des messages ResponseDone
  • gen_ai.usage.input_tokens - Nombre de jetons d’entrée
  • gen_ai.usage.output_tokens - Nombre de jetons de sortie
  • gen_ai.request.max_tokens - Nombre maximal de jetons de sortie à partir d’options
  • gen_ai.system_instructions - Instructions des options (données sensibles)
  • gen_ai.conversation.id - ID de conversation de la réponse
  • gen_ai.tool.definitions - Définitions d’outils (données sensibles)
  • server.address / server.port - Informations sur le point de terminaison du serveur
  • error.type - Type d’erreur sur les échecs

En outre, les attributs personnalisés spécifiques en temps réel suivants sont pris en charge :

  • gen_ai.realtime.voice - Paramètre vocal à partir des options
  • gen_ai.realtime.output_modalities - Modalités de sortie (texte, audio)
  • gen_ai.realtime.voice_speed - Paramètre de vitesse vocale
  • gen_ai.realtime.session_kind - Type de session (temps réel/transcription)

Les métriques sont les suivantes :

  • gen_ai.client.operation.duration - Histogramme de durée
  • gen_ai.client.token.usage - Histogramme d’utilisation des jetons

S’applique à