다음을 통해 공유


OpenAIUsageDebuggingPlugin

디버깅 및 분석을 위해 OpenAI API 사용 메트릭을 CSV 파일에 기록합니다.

플러그 인 인스턴스 정의

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

구성 예제

None

구성 속성

None

명령줄 옵션

None

비고

OpenAIUsageDebuggingPlugin은 OpenAI 호환 API 요청 및 응답에서 자세한 사용 메트릭을 캡처하고 CSV 파일에 씁니다. 이 정보는 디버깅, 토큰 사용 추적, 속도 제한 모니터링 및 시간에 따른 API 사용 패턴 분석에 유용합니다.

출력 파일

플러그 인은 개발자 프록시가 시작될 때 현재 디렉터리에 이름이 지정된 devproxy_llmusage_<timestamp>.csv CSV 파일을 만듭니다. 타임스탬프 형식은 .입니다 yyyyMMddHHmmss.

CSV 파일 구조

CSV 파일에는 다음 열이 포함되어 있습니다.

칼럼 Description
time 요청의 ISO 8601 타임스탬프
status 응답의 HTTP 상태 코드
retry-after 헤더 값 retry-after (속도 제한 요청의 경우)
policy 헤더 값 policy-id (속도 제한 요청의 경우)
prompt tokens 프롬프트/입력의 토큰 수
completion tokens 완료/출력의 토큰 수
cached tokens 캐시된 토큰 수(프롬프트 캐시에서)
total tokens 사용된 총 토큰 수(프롬프트 + 완료)
remaining tokens 속도 제한 창의 나머지 토큰
remaining requests 속도 제한 창의 나머지 요청

샘플 출력

time,status,retry-after,policy,prompt tokens,completion tokens,cached tokens,total tokens,remaining tokens,remaining requests
2025-10-28T10:15:30.123Z,200,,,150,75,,225,9850,49
2025-10-28T10:15:35.456Z,200,,,200,100,50,300,9550,48
2025-10-28T10:15:40.789Z,429,60,rate-limit-policy-1,,,,,,0

지원되는 시나리오

플러그 인은 다음의 메트릭을 기록합니다.

  • 성공적인 요청 (2xx 상태 코드): 프롬프트 토큰, 완료 토큰, 캐시된 토큰 및 남은 속도 제한을 포함한 토큰 사용 메트릭을 캡처합니다.
  • 오류 응답 (4xx 상태 코드): 재시도 후 헤더 및 정책 ID를 포함한 속도 제한 정보를 캡처합니다.

스트리밍 응답

플러그 인은 사용 정보가 포함된 최종 청크를 추출하여 스트리밍 응답(콘텐츠 형식 사용 text/event-stream )을 올바르게 처리합니다.

사용 사례

이 플러그 인은 다음에 유용합니다.

  • 디버깅 토큰 사용: 프롬프트 및 완료에서 사용하는 토큰 수 이해
  • 속도 제한 모니터링: 속도 제한에 도달하는 것을 방지하기 위해 나머지 토큰 및 요청 추적
  • 비용 분석: 토큰 사용 패턴을 분석하여 비용 예측
  • 성능 최적화: 토큰 수가 많은 요청 식별
  • 프롬프트 캐싱 분석: 캐시된 토큰 사용량을 추적하여 프롬프트 캐싱 전략을 최적화합니다.

OpenAITelemetryPlugin과 비교

OpenAITelemetryPlugin은 실시간 모니터링 및 시각화를 위해 원격 분석 데이터를 OpenTelemetry 호환 대시보드로 전송하지만 OpenAIUsageDebuggingPlugin은 오프라인 분석 및 디버깅을 위해 자세한 CSV 로그를 만드는 데 중점을 둡니다. 두 플러그 인은 서로를 보완합니다.

  • 실시간 모니터링, 비용 추적 및 관찰 가능성 플랫폼과의 통합을 위해 OpenAITelemetryPlugin 사용
  • 자세한 디버깅, CSV 기반 분석 및 추적 속도 제한 정보에 OpenAIUsageDebuggingPlugin 사용

두 플러그 인을 동시에 사용하도록 설정하여 실시간 원격 분석 및 자세한 CSV 로그를 모두 가져올 수 있습니다.

다음 단계