Azure OpenAI 토큰 사용량에 대한 메트릭 내보내기
적용 대상: 모든 API Management 계층
이 azure-openai-emit-token-metric
정책은 Azure OpenAI 서비스 API를 통해 큰 언어 모델 토큰의 소비에 대한 사용자 지정 메트릭을 Application Insights에 보냅니다. 토큰 수 메트릭에는 총 토큰, 프롬프트 토큰 및 완료 토큰이 포함됩니다.
참고 항목
정책 문에 제공된 순서대로 정책의 요소 및 자식 요소를 설정합니다. API Management 정책을 설정하거나 편집하는 방법에 대해 자세히 알아봅니다.
지원되는 Azure OpenAI 서비스 모델
이 정책은 다음 유형의 Azure OpenAI Service에서 API Management에 추가된 API와 함께 사용됩니다.
API 형식 | 지원되는 모델 |
---|---|
채팅 완료 | gpt-3.5 gpt-4 |
Completion | gpt-3.5-turbo-instruct |
포함 | text-embedding-3-large text-embedding-3-small text-embedding-ada-002 |
자세한 내용은 Azure OpenAI 서비스 모델을 참조하세요.
사용자 지정 메트릭 한도
Azure Monitor는 API Management에서 메트릭을 내보내는 기능에 영향을 줄 수 있는 사용자 지정 메트릭에 대해 사용 제한을 적용합니다. 예를 들어, Azure Monitor는 현재 메트릭당 차원 키 제한을 10개로 설정하고 구독의 지역당 총 활성 시계열 제한을 50,000개(12시간 이내)로 설정합니다.
이러한 제한은 다음과 같은 API Management 정책에서 사용자 지정 메트릭을 구성하는 데 다음과 같은 emit-metric
azure-openai-emit-token-metric
영향을 줍니다.
정책당 최대 10개의 사용자 지정 차원을 구성할 수 있습니다.
12시간 이내에 정책에 의해 생성된 활성 시계열 수는 해당 기간 동안 구성된 각 차원의 고유 값 수를 곱한 것입니다. 예를 들어, 정책에 3개의 사용자 지정 차원이 구성되어 있고 각 차원에 해당 기간 내에 가능한 값이 10개 있는 경우 정책은 1,000(10 x 10 x 10)개의 활성 시계열을 제공합니다.
구독의 동일한 지역에 있는 여러 API Management 인스턴스에서 정책을 구성하는 경우 모든 인스턴스가 지역 활성 시계열 제한에 기여할 수 있습니다.
Azure Monitor에서 사용자 지정 메트릭에 대한 디자인 제한 사항 및 고려 사항에 대해 자세히 알아봅니다.
필수 조건
- API Management 인스턴스에 하나 이상의 Azure OpenAI Service API를 추가해야 합니다. 자세한 내용은 Azure API Management에 Azure OpenAI Service API 추가를 참조하세요.
- API Management 인스턴스는 Application Insights와 통합되어야 합니다. 자세한 내용은 Azure API Management를 Azure Application Insights와 통합하는 방법을 참조하세요.
- Azure OpenAI API에 대해 Application Insights 로깅을 사용하도록 설정합니다.
- Application Insights에서 차원을 사용하여 사용자 지정 메트릭을 사용하도록 설정합니다. 자세한 내용은 사용자 지정 메트릭 내보내기를 참조하세요.
정책 문
<azure-openai-emit-token-metric
namespace="metric namespace" >
<dimension name="dimension name" value="dimension value" />
...additional dimensions...
</azure-openai-emit-token-metric>
특성
특성 | 설명 | 필수 | Default value |
---|---|---|---|
네임스페이스 | 문자열입니다. 메트릭의 네임스페이스입니다. 정책 식은 허용되지 않습니다. | 아니요 | API Management |
Elements
요소 | 설명 | 필수 |
---|---|---|
차원 | 메트릭에 포함된 각 차원에 대해 이러한 요소 중 하나 이상을 추가합니다. | 예 |
차원 특성
attribute | 설명 | 필수 | 기본값 |
---|---|---|---|
name | 문자열 또는 정책 식입니다. 차원의 이름입니다. | 예 | 해당 없음 |
value | 문자열 또는 정책 식입니다. 차원의 값입니다. name 은 기본 차원 중 하 나와 일치하는 경우에만 생략할 수 있습니다. 이 경우 값이 차원 이름에 따라 제공됩니다. |
아니요 | 해당 없음 |
값 없이 사용할 수 있는 기본 차원 이름
- API ID
- 작업 ID
- Product ID
- 사용자 ID
- 구독 ID
- 위치
- 게이트웨이 ID:
사용
사용법 참고 사항
- 이 정책은 정책 정의별로 여러 번 사용될 수 있습니다.
- 이 정책에 대해 최대 10개의 사용자 지정 차원을 구성할 수 있습니다.
- 포털을 사용하여 Azure OpenAI Service에서 API를 추가할 때 이 정책을 선택적으로 구성할 수 있습니다.
- 가능한 경우 Azure OpenAI Service API 응답의 사용량 섹션에 있는 값을 사용하여 토큰 메트릭을 결정합니다.
- 특정 Azure OpenAI 엔드포인트는 응답 스트리밍을 지원합니다. 스트리밍을 사용하도록 설정하기 위해 API 요청에서
stream
을true
로 설정하면 토큰 메트릭이 예상됩니다.
예시
다음 예제에서는 API ID와 함께 Azure OpenAI 토큰 수 메트릭을 Application Insights에 사용자 지정 차원으로 보냅니다.
<policies>
<inbound>
<azure-openai-emit-token-metric
namespace="AzureOpenAI">
<dimension name="API ID" />
</azure-openai-emit-token-metric>
</inbound>
<outbound>
</outbound>
</policies>
관련 정책
관련 콘텐츠
정책 작업에 대한 자세한 내용은 다음을 참조하세요.
- 자습서: API 변환 및 보호
- 정책 문 및 해당 설정에 대한 전체 목록에 대한 정책 참조
- 정책 식
- 정책 설정 또는 편집
- 정책 구성 재사용
- 정책 코드 조각 리포지토리
- Azure의 Microsoft Copilot을 사용하는 작성자 정책