用于支出跟踪的请求标签
为模型部署添加标签,以便按环境、AWS 账户或任何自定义标签跟踪支出。
标签会显示在 LiteLLM 支出日志的 request_tags 字段中。
要求
应设置虚拟密钥 (Virtual Keys) 和数据库。请参阅 虚拟密钥设置。
配置设置
在 config.yaml 中为模型部署设置标签
config.yaml
model_list:
- model_name: gpt-4
litellm_params:
model: azure/gpt-4-prod
api_key: os.environ/AZURE_PROD_API_KEY
api_base: https://prod.openai.azure.com/
tags: ["AWS_IAM_PROD"] # 👈 Tag for production
- model_name: gpt-4-dev
litellm_params:
model: azure/gpt-4-dev
api_key: os.environ/AZURE_DEV_API_KEY
api_base: https://dev.openai.azure.com/
tags: ["AWS_IAM_DEV"] # 👈 Tag for development
发起请求
选项 1:使用配置标签(自动)
请求仅需指定模型 - 标签将自动从配置中应用
curl -X POST 'http://0.0.0.0:4000/chat/completions' \
-H 'Authorization: Bearer sk-1234' \
-H 'Content-Type: application/json' \
-d '{
"model": "gpt-4",
"messages": [{"role": "user", "content": "Hello"}]
}'
选项 2:使用 x-litellm-tags 标头
通过 x-litellm-tags 标头以逗号分隔的字符串形式动态传递标签
curl -X POST 'http://0.0.0.0:4000/chat/completions' \
-H 'Authorization: Bearer sk-1234' \
-H 'Content-Type: application/json' \
-H 'x-litellm-tags: team-api,production,us-east-1' \
-d '{
"model": "gpt-4",
"messages": [{"role": "user", "content": "Hello"}]
}'
格式:逗号分隔字符串(空格会自动修剪):"tag1,tag2,tag3"
选项 3:使用请求主体 tags
直接在请求主体中传递标签。支持两种格式
- 直接 tags 字段
- 嵌套在元数据 (Metadata) 中
curl -X POST 'http://0.0.0.0:4000/chat/completions' \
-H 'Authorization: Bearer sk-1234' \
-H 'Content-Type: application/json' \
-d '{
"model": "gpt-4",
"messages": [{"role": "user", "content": "Hello"}],
"tags": ["team-api", "production", "us-east-1"]
}'
curl -X POST 'http://0.0.0.0:4000/chat/completions' \
-H 'Authorization: Bearer sk-1234' \
-H 'Content-Type: application/json' \
-d '{
"model": "gpt-4",
"messages": [{"role": "user", "content": "Hello"}],
"metadata": {
"tags": ["team-api", "production", "us-east-1"]
}
}'
tags 字段必须是字符串数组。
信息
当通过标头或请求主体提供标签时,它们将覆盖模型部署中配置的任何标签。如果同时提供了标头和主体标签,则主体标签优先。
在密钥或团队上设置标签
您还可以在 API 密钥或团队级别设置默认标签
- 在密钥上设置
- 在团队上设置
curl -L -X POST 'http://0.0.0.0:4000/key/generate' \
-H 'Authorization: Bearer sk-1234' \
-H 'Content-Type: application/json' \
-d '{
"metadata": {
"tags": ["customer-acme", "tier-premium"]
}
}'
curl -L -X POST 'http://0.0.0.0:4000/team/new' \
-H 'Authorization: Bearer sk-1234' \
-H 'Content-Type: application/json' \
-d '{
"metadata": {
"tags": ["team-engineering", "department-ai"]
}
}'
进阶:自定义标头跟踪
通过将自定义标头添加到配置中来跟踪支出
litellm_settings:
extra_spend_tag_headers:
- "x-custom-header"
- "x-customer-id"
禁用 User-Agent 跟踪
litellm_settings:
disable_add_user_agent_to_request_tags: true
支出日志
来自模型配置的标签会显示在 LiteLLM_SpendLogs 中
{
"request_id": "chatcmpl-abc123",
"request_tags": ["AWS_IAM_PROD"],
"spend": 0.002,
"model": "gpt-4"
}