Bagikan melalui


OpenAITelemetryPlugin

Mencatat data telemetri OpenAI dari permintaan dan respons yang kompatibel dengan OpenAI yang dicegat.

Cuplikan layar dasbor .NET Aspire memperlihatkan data telemetri OpenAI.

Cuplikan layar dasbor OpenLIT memperlihatkan data telemetri OpenAI.

Contoh konfigurasi

{
  "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.0.0/rc.schema.json",
  "plugins": [
    {
      "name": "OpenAITelemetryPlugin",
      "enabled": true,
      "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll",
      "configSection": "openAITelemetryPlugin"
    }
  ],
  "openAITelemetryPlugin": {
    "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.0.0/openaitelemetryplugin.schema.json",
    "application": "My app",
    "includeCosts": true,
    "pricesFile": "prices.json"
  }
}

Properti konfigurasi

Harta benda Deskripsi Bawaan
application Nama aplikasi yang mengeluarkan permintaan. Masuk ke data telemetri untuk mengelompokkan penggunaan menurut aplikasi. default
currency Mata uang tempat harga dicatat. Ditampilkan dalam bagan. USD
environment Lingkungan tempat aplikasi berjalan. Masuk ke data telemetri untuk mengelompokkan penggunaan menurut lingkungan. development
exporterEndpoint URL titik akhir OpenTelemetry untuk mengirim data. Harus titik akhir HTTP Protobuf. http://localhost:4318
includeCompletion Apakah akan menyertakan penyelesaian dalam data telemetri. true
includeCosts Apakah akan menyertakan biaya dalam data telemetri. Perlu menentukan file harga. false
includePrompt Apakah akan menyertakan perintah dalam data telemetri. true
pricesFile Jalur ke file dengan informasi harga. null

Contoh file harga

{
  "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.0.0/openaitelemetryplugin.pricesfile.schema.json",
  "prices": {
    "gpt-3.5-turbo": {
      "input": 0.0015,
      "output": 0.002
    },
    "gpt-4": {
      "input": 0.03,
      "output": 0.06
    }
  }
}

Properti file harga

Harta benda Deskripsi Bawaan
prices Harga untuk model. Kuncinya adalah nama model, dan nilainya adalah objek harga model. {}

Objek harga model

Setiap objek harga model memiliki properti berikut:

Harta benda Deskripsi Diperlukan Nilai standar Nilai sampel
input Harga per juta token untuk token input/prompt. Ya 0.0 0.03
output Harga per juta token untuk token output/penyelesaian. Ya 0.0 0.06

Opsi Baris Perintah

Tidak ada

Komentar

OpenAITelemetryPlugin mencatat data OpenTelemetry dari permintaan dan respons yang kompatibel dengan OpenAI yang disadapnya. Tanpa harus melengkapi aplikasi Anda dengan OpenTelemetry, Anda dapat dengan cepat memahami bagaimana aplikasi Anda menggunakan model bahasa besar. Selain itu, jika Anda menyediakan file harga untuk model yang Anda gunakan, Anda juga dapat melihat biaya terkait LLM yang dikenakan aplikasi Anda.

Untuk setiap permintaan dan respons yang disadap, plugin mencatat rentang. Selain itu, ini mencatat tiga metrik:

  • gen_ai.client.token.usage - jumlah token yang digunakan dalam permintaan dan respons
  • gen_ai.usage.cost - biaya token yang digunakan dalam permintaan dan respons
  • gen_ai.usage.total_cost - total biaya semua permintaan selama sesi

Penting

Metrik biaya hanya dicatat jika Anda mengatur includeCosts properti ke true dan menyediakan file harga. Jika tidak, plugin tidak mencatat metrik.

Untuk melihat data telemetri yang direkam, Anda dapat menggunakan dasbor yang kompatibel dengan OpenTelemetry. Misalnya, Anda dapat menggunakan dasbor .NET Aspire atau OpenLIT.

Penting

Untuk melihat data, mulai dasbor sebelum Anda mengeluarkan permintaan yang kompatibel dengan OpenAI. Jika tidak, tidak ada pengumpul OpenTelemetry untuk menerima data yang dikirim plugin.

Langkah selanjutnya