Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Journalise les données de télémétrie OpenAI à partir des requêtes et réponses compatibles OpenAI interceptées.
Définition de l’instance de plug-in
{
"name": "OpenAITelemetryPlugin",
"enabled": true,
"pluginPath": "~appFolder/plugins/dev-proxy-plugins.dll",
"configSection": "openAITelemetryPlugin"
}
Exemple de configuration
{
"openAITelemetryPlugin": {
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v0.28.0/openaitelemetryplugin.schema.json",
"application": "My app",
"includeCosts": true,
"pricesFile": "prices.json"
}
}
Propriétés de configuration
Propriété | Descriptif | Par défaut |
---|---|---|
application |
Nom de l’application qui émet les demandes. Connecté aux données de télémétrie pour regrouper l’utilisation par application. | default |
currency |
Devise dans laquelle les prix sont enregistrés. Affiché dans les graphiques. | USD |
environment |
Environnement dans lequel l’application est en cours d’exécution. Connecté aux données de télémétrie pour regrouper l’utilisation par environnement. | development |
exporterEndpoint |
URL du point de terminaison OpenTelemetry à laquelle envoyer les données. Doit être un point de terminaison HTTP Protobuf. | http://localhost:4318 |
includeCompletion |
Indique s’il faut inclure la saisie semi-automatique dans les données de télémétrie. | true |
includeCosts |
Indique s’il faut inclure les coûts dans les données de télémétrie. Nécessite de spécifier le fichier de prix. | false |
includePrompt |
Indique s’il faut inclure l’invite dans les données de télémétrie. | true |
pricesFile |
Chemin d’accès au fichier avec des informations sur les prix. | null |
Exemple de fichier prix
{
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v0.28.0/openaitelemetryplugin.pricesfile.schema.json",
"prices": {
"gpt-3.5-turbo": {
"input": 0.0015,
"output": 0.002
},
"gpt-4": {
"input": 0.03,
"output": 0.06
}
}
}
Propriétés du fichier prix
Propriété | Descriptif | Par défaut |
---|---|---|
prices |
Prix des modèles. La clé est le nom du modèle et la valeur est l’objet de prix du modèle. | {} |
Objet de prix du modèle
Chaque objet de prix de modèle a les propriétés suivantes :
Propriété | Descriptif | Obligatoire | Valeur par défaut | Valeur d'échantillon |
---|---|---|---|---|
input |
Prix par million de jetons pour les jetons d’entrée/invite. | oui | 0.0 |
0.03 |
output |
Prix par million de jetons pour les jetons de sortie/achèvement. | oui | 0.0 |
0.06 |
Options de ligne de commande
Aucun
Remarques
OpenAITelemetryPlugin journalise les données OpenTelemetry à partir des requêtes et réponses compatibles OpenAI qu’il intercepte. Sans avoir à instrumenter votre application avec OpenTelemetry, vous pouvez rapidement comprendre comment votre application utilise des modèles de langage volumineux. En outre, si vous fournissez un fichier de prix pour les modèles que vous utilisez, vous pouvez également voir les coûts liés à LLM que votre application entraîne.
Pour chaque demande et réponse interceptées, le plug-in enregistre une étendue. En outre, il journalise trois métriques :
-
gen_ai.client.token.usage
- nombre de jetons utilisés dans la demande et la réponse -
gen_ai.usage.cost
- coût des jetons utilisés dans la demande et la réponse -
gen_ai.usage.total_cost
- coût total de toutes les requêtes au cours d’une session
Important
Les métriques de coût sont enregistrées uniquement si vous définissez la includeCosts
propriété true
sur et fournissez le fichier de prix. Sinon, le plug-in ne journalise pas les métriques.
Pour afficher les données de télémétrie enregistrées, vous pouvez utiliser n’importe quel tableau de bord compatible OpenTelemetry. Par exemple, vous pouvez utiliser le tableau de bord .NET Aspire ou OpenLIT.
Important
Pour afficher les données, démarrez le tableau de bord avant d’émettre une demande compatible OpenAI. Sinon, il n’existe aucun collecteur OpenTelemetry pour recevoir les données envoyées par le plug-in.