다음을 통해 공유


OpenAI원격측정플러그인

가로채는 OpenAI 호환 요청 및 응답에서 OpenAI 원격 분석 데이터를 기록합니다.

OpenAI 원격 분석 데이터를 보여 주는 .NET Aspire 대시보드의 스크린샷

OpenAI 원격 분석 데이터를 보여 주는 OpenLIT 대시보드의 스크린샷

플러그 인 인스턴스 정의

{
  "name": "OpenAITelemetryPlugin",
  "enabled": true,
  "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll",
  "configSection": "openAITelemetryPlugin"
}

구성 예제

{
  "openAITelemetryPlugin": {
    "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v1.0.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

가격 파일 예제

{
  "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v1.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
    }
  }
}

가격 파일 속성

재산 설명 기본값
prices 모델의 가격입니다. 키는 모델 이름이며 값은 모델 가격 개체입니다. {}

모델 가격 개체

각 모델 가격 개체에는 다음과 같은 속성이 있습니다.

재산 설명 필수 기본값 샘플 값
input 입력/프롬프트 토큰의 백만 토큰당 가격입니다. 0.0 0.03
output 출력/완료 토큰의 백만 토큰당 가격입니다. 0.0 0.06

명령줄 옵션

없음

비고

OpenAITelemetryPlugin은 OpenAI 호환 요청 및 가로채는 응답에서 OpenTelemetry 데이터를 기록합니다. OpenTelemetry를 사용하여 애플리케이션을 계측할 필요 없이 애플리케이션에서 대규모 언어 모델을 사용하는 방법을 빠르게 이해할 수 있습니다. 또한 사용하는 모델에 대한 가격 파일을 제공하는 경우 애플리케이션에서 발생하는 LLM 관련 비용도 확인할 수 있습니다.

가로채는 각 요청 및 응답에 대해 플러그 인은 범위를 기록합니다. 또한 다음 세 가지 메트릭을 기록합니다.

  • gen_ai.client.token.usage - 요청 및 응답에 사용되는 토큰 수
  • gen_ai.usage.cost - 요청 및 응답에 사용되는 토큰의 비용
  • gen_ai.usage.total_cost - 세션 과정 동안 모든 요청의 총 비용

중요합니다

비용 메트릭은 속성을 includeCosts 설정하고 true 가격 파일을 제공하는 경우에만 기록됩니다. 그렇지 않으면 플러그 인이 메트릭을 기록하지 않습니다.

기록된 원격 분석 데이터를 보려면 OpenTelemetry 호환 대시보드를 사용할 수 있습니다. 예를 들어 .NET Aspire 대시보드 또는 OpenLIT를 사용할 수 있습니다.

중요합니다

데이터를 보려면 OpenAI 호환 요청을 실행하기 전에 대시보드를 시작합니다. 그렇지 않으면 플러그 인이 보내는 데이터를 받을 OpenTelemetry 수집기가 없습니다.

다음 단계