次の方法で共有


OpenAIテレメトリプラグイン

インターセプトされた OpenAI 互換の要求と応答から OpenAI テレメトリ データをログに記録します。

OpenAI テレメトリ データを示す .NET アスパイア ダッシュボードのスクリーンショット。

OpenAI テレメトリ データを示す OpenLIT ダッシュボードのスクリーンショット。

プラグイン インスタンスの定義

{
  "name": "OpenAITelemetryPlugin",
  "enabled": true,
  "pluginPath": "~appFolder/plugins/dev-proxy-plugins.dll",
  "configSection": "openAITelemetryPlugin"
}

構成の例

{
  "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"
  }
}

構成プロパティ

プロパティ 説明 既定値
application 要求を発行するアプリケーションの名前。 テレメトリ データにログインして、アプリケーション別の使用状況をグループ化します。 default
currency 価格が記録される通貨。 グラフに表示されます。 USD
environment アプリケーションが実行されている環境。 テレメトリ データに記録され、環境別の使用状況をグループ化します。 development
exporterEndpoint データの送信先となる OpenTelemetry エンドポイントの URL。 HTTP Protobuf エンドポイントである必要があります。 http://localhost:4318
includeCompletion テレメトリ データに入力候補を含めるかどうか。 true
includeCosts テレメトリ データにコストを含めるかどうか。 価格ファイルを指定する必要があります。 false
includePrompt テレメトリ データにプロンプトを含めるかどうか。 true
pricesFile 価格情報を含むファイルへのパス。 null

Prices ファイルの例

{
  "$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
    }
  }
}

Prices ファイルのプロパティ

プロパティ 説明 既定値
prices モデルの価格。 キーはモデル名であり、値は model prices オブジェクトです。 {}

モデル価格オブジェクト

各モデル価格オブジェクトには、次のプロパティがあります。

プロパティ 説明 必須 既定値 サンプル値
input 入力/プロンプト トークンの 100 万トークンあたりの価格。 はい 0.0 0.03
output 出力/完了トークンの 100 万トークンあたりの価格。 はい 0.0 0.06

コマンドライン オプション

無し

注釈

OpenAITelemetryPlugin は、OpenAI と互換性のある要求と、それがインターセプトする応答から OpenTelemetry データをログに記録します。 OpenTelemetry を使用してアプリケーションをインストルメント化しなくても、アプリケーションで大規模な言語モデルがどのように使用されているかをすばやく理解できます。 さらに、使用するモデルの価格ファイルを指定すると、アプリケーションで発生する LLM 関連のコストも確認できます。

インターセプトされた要求と応答ごとに、プラグインはスパンをログに記録します。 さらに、次の 3 つのメトリックがログに記録されます。

  • gen_ai.client.token.usage - 要求と応答で使用されるトークンの数
  • gen_ai.usage.cost - 要求と応答で使用されるトークンのコスト
  • gen_ai.usage.total_cost - セッション中のすべての要求の合計コスト

Von Bedeutung

コスト メトリックは、 includeCosts プロパティを true に設定し、価格ファイルを指定した場合にのみログに記録されます。 それ以外の場合、プラグインはメトリックをログに記録しません。

記録されたテレメトリ データを表示するには、OpenTelemetry と互換性のあるダッシュボードを使用できます。 たとえば、 .NET アスパイア ダッシュボード または OpenLIT を使用できます。

Von Bedeutung

データを表示するには、OpenAI 互換要求を発行する前にダッシュボードを開始します。 それ以外の場合、プラグインが送信するデータを受信する OpenTelemetry コレクターはありません。

次のステップ