APPLIES TO:所有API Management层
该 llm-emit-token-metric 策略通过 LLM API 向 Application Insights 发送有关使用大型语言模型 (LLM) 令牌的自定义指标。 令牌计数指标包括:令牌总数、提示令牌和完成令牌。
注释
按照策略声明中提供的顺序设置策略的元素和子元素。 详细了解 如何设置或编辑API Management策略。
支持的模型 API
此策略适用于添加到符合以下 API 架构之一的 API 管理的 LLM API:
- OpenAI 聊天补全或响应 API
- Anthropic 消息 API (目前在 API 管理 v2 版本中受支持)
自定义指标的限制
Azure Monitor 对可能影响从API Management发出指标的能力的自定义指标施加usage 限制。 例如,Azure Monitor 当前为每个指标设置 10 个维度键的限制,以及订阅中每个区域的活动时序总数(在 12 小时内)的限制。 在API Management中,其中 5 个用于默认维度,包括:
- 区域
- 服务编号
- 服务名称
- 服务类型
这些限制对在API Management策略(如 emit-metric 或 azure-openai-emit-token-metric)中配置自定义指标有以下影响:
每个策略最多可以配置 5 个自定义维度。
策略在 12 小时期限内生成的活动时序数是该期限内每个已配置维度的唯一值数的乘积。 例如,如果在策略中配置了三个自定义维度,并且每个维度在该期限内有 10 个可能的值,则 策略将生成 1,000 (10 x 10 x 10) 个活动时序。
如果在订阅中位于同一区域的多个API Management实例中配置策略,则所有实例都可能导致区域活动时序限制。
详细了解 Azure Monitor 中自定义指标design 限制和注意事项。
先决条件
- 必须将一个或多个 LLM API 添加到API Management实例。
- API Management实例必须与 Application insights 集成。 有关详细信息,请参阅 How to integrate Azure API 管理 with Azure 应用程序 Insights。
- 为 LLM API 启用 Application Insights 日志记录。
- 在 Application Insights 中启用含有维度的自定义指标。 有关详细信息,请参阅发出自定义指标。
政策声明
<llm-emit-token-metric
namespace="metric namespace" >
<dimension name="dimension name" value="dimension value" />
...additional dimensions...
</llm-emit-token-metric>
特性
| Attribute | Description | 必选 | 默认值 |
|---|---|---|---|
| 命名空间 | 字符串。 指标的命名空间。 不允许使用策略表达式。 | 否 | API Management |
Elements
| 元素 | Description | 必选 |
|---|---|---|
| 维度 | 为指标中包含的每个维度添加一个或多个此类元素。 | 是的 |
维度属性
| Attribute | Description | 必选 | 默认值 |
|---|---|---|---|
| 姓名 | 字符串或策略表达式。 维度的名称。 | 是的 | 不适用 |
| value | 字符串或策略表达式。 维度的值。 如果 name 与一个默认维度匹配,则只能省略。 如果是这样,则按维度名称提供值。 |
否 | 不适用 |
无需值即可使用的默认维度名称
- API标识符
- 操作 ID
- 产品 ID
- 用户 ID
- 订阅编号
- 地点
- 网关 ID
- 后端 ID
用法
使用注意事项
- 每个策略定义可以多次使用此策略。
- 最多可以为此策略配置 5 个自定义维度。
- 如果可用,则使用 LLM API 响应的使用情况部分中的值来确定令牌指标。
- 某些 LLM 终结点支持流式传输响应。 在 API 请求中将
stream设置为true以启用流式处理时,将估算令牌指标。
Example
以下示例将 LLM 令牌计数指标以及 API ID 作为默认维度发送到 Application Insights。
<policies>
<inbound>
<llm-emit-token-metric
namespace="MyLLM">
<dimension name="API ID" />
</llm-emit-token-metric>
</inbound>
<outbound>
</outbound>
</policies>
相关策略
- 日志记录
- emit-metric 策略
- llm-token-limit 策略
相关内容
若要详细了解如何使用策略,请参阅:
- 教程:转换和保护 API
- 策略参考,其中提供了策略语句及其设置的完整列表
- 策略表达式
- 设置或编辑策略
- 重复使用策略配置
- Policy 代码片段存储库
- 策略示例存储库
- Azure API 管理策略工具包