發出計量以取用 Azure OpenAI 權杖
適用於:所有 APIM 層
此原則會 azure-openai-emit-token-metric
透過 Azure OpenAI 服務 API,將自定義計量傳送至 Application Insights,以瞭解如何取用大型語言模型令牌。 權杖計數計量包括:權杖總數、提示權杖和完成權杖。
注意
請依照原則陳述式中提供的順序,來設定原則的元素和子元素。 深入了解如何設定或編輯 APIM 原則。
支援的 Azure OpenAI 服務模型
此原則會與從 Azure OpenAI 服務新增至 API 管理的 API 搭配使用,API 類型如下:
API 類型 | 支援的模型 |
---|---|
聊天完成 | gpt-3.5 gpt-4 |
Completion | gpt-3.5-turbo-instruct |
Embeddings | text-embedding-3-large text-embedding-3-small text-embedding-ada-002 |
如需詳細資訊,請參閱 Azure OpenAI 服務模型。
自訂計量的限制
Azure 監視器會針對自訂計量施加使用量限制,其可能會對您從 APIM 發出計量的能力產生影響。 例如,Azure 監視器目前會為每個計量設定 10 個維度索引鍵的限制,以及為訂用帳戶中的每個區域設定總計 50,000 個使用中時間序列的限制 (在 12 小時內)。
這些限制對於在 API 管理 原則中設定自訂計量有下列影響,例如 emit-metric
或 azure-openai-emit-token-metric
:
您可以在每個 原則中最多設定 10 個自訂維度。
原則在 12 小時內所產生的使用中時間序列數目,是在該期間內每個已設定維度之唯一值數目的乘積。 例如,如果在原則中設定了三個自訂維度,而且每個維度在該期間內都有 10 個可能的值,則 原則會提供 1,000 (10 x 10 x 10) 個使用中時間序列。
如果您在位於訂用帳戶相同區域內的多個 APIM 執行個體中設定 原則,則所有執行個體可能都會影響區域使用中時間序列限制。
深入瞭解 Azure 監視器中自定義計量的設計限制和考慮 。
必要條件
- 您必須將一或多個 Azure OpenAI 服務 API 新增至您的 APIM 執行個體。 如需詳細資訊,請參閱將 Azure OpenAI 服務 API 新增至 Azure APIM。
- 您的 APIM 執行個體必須與 Application Insights 整合。 如需詳細資訊,請參閱如何整合 Azure APIM 與 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>
屬性
屬性 | 描述 | 必要 | 預設值 |
---|---|---|---|
命名空間 | 字串。 計量的命名空間。 不允許使用原則運算式。 | No | API 管理 |
元素
元素 | 描述 | 必要 |
---|---|---|
維度 | 為自訂計量中包含的每個維度新增一或多個這些元素。 | Yes |
維度屬性
屬性 | 描述 | 必要 | 預設值 |
---|---|---|---|
NAME | 字串或原則運算式。 維度的名稱。 | Yes | N/A |
value | 字串或原則運算式。 維度的值。 只有在 name 符合其中一個預設維度時,才能省略。 若是如此,則會根據維度名稱提供值。 |
No | N/A |
無需值即可使用的預設維度名稱
- API 識別碼
- 作業識別碼
- 產品識別碼
- 使用者識別碼
- 訂用帳戶識別碼
- Location
- 閘道識別碼
使用方式
使用注意事項
- 每個原則定義可以使用此原則多次。
- 您最多可以為此原則設定10 個自訂維度。
- 使用入口網站從 Azure OpenAI 服務新增 API 時,可以選擇性地設定此原則。
- 可用時,會使用 Azure OpenAI 服務 API 回應使用量區段中的值來判斷權杖計量。
- 某些 Azure OpenAI 端點支持回應串流。 當 API 要求中的
stream
設定為true
以啟用串流時,會估計權杖計量。
範例
下列範例會將 Azure OpenAI 令牌計數計量傳送至 Application Insights,以及 API 標識碼作為自定義維度。
<policies>
<inbound>
<azure-openai-emit-token-metric
namespace="AzureOpenAI">
<dimension name="API ID" />
</azure-openai-emit-token-metric>
</inbound>
<outbound>
</outbound>
</policies>
相關原則
相關內容
如需使用原則的詳細資訊,請參閱:
- 教學課程:轉換及保護 API
- 原則參考,取得原則陳述式及其設定的完整清單
- 原則運算式
- 設定或編輯原則
- 重複使用原則設定
- 原則程式碼片段存放庫 (英文)
- Azure API 管理 原則工具組
- 使用 Microsoft Azure Copilot 撰寫原則