API Key 与模型限流
限流 可以保护模型服务提供方容量,并防止单个调用方或模型耗尽共享配额。当配额属于某个调用方时,请在调用方 API Key 上配置限制;当使用某个模型的所有调用方应共享配额时,请在模型上配置限制。
这些限制属于其所配置的 API Key 或模型。限流策略是独立规则,可以匹配团队、成员、API Key、模型、模型名称或模型服务提供方,并把匹配流量划分到彼此独立的配额桶中。同一请求可以同时匹配 API Key 限制、模型限制和策略。每个匹配的限制都会生效;只要有任一配额桶耗尽,网关就会在调用模型服务提供方之前返回 429。
本指南介绍如何在 API Key 和模型上配置限制、验证限制是否生效,以及选择共享计数器存储。AISIX Enterprise 或 AISIX Cloud 使用控制面路径,开源 AISIX 网关使用资源文件路径。两种路径配置相同的网关能力。
准备工作
开始前,请准备以下内容:
- 可以发送代理请求的模型别名和调用方 API Key。如果尚未配置,请参阅模型服务提供方密钥、模型别名和调用方 API Key。
- 对于 AISIX Enterprise 或 AISIX Cloud:已接入网关的环境,以及具有写权限范围的 Admin Token。可以按照 AISIX Enterprise 快速入门进行本地评估;如需申请 AISIX Cloud 访问权限,请联系 API7。
- 对于开源 AISIX 网关:可验证并重新加载的声明式资源文件。参见重新加载资源文件。
导出用于验证本页任一示例的网关请求参数:
# AISIX_PROXY 不含尾部斜杠或端点路径
# 本地快速入门使用 http://127.0.0.1:3000。
export AISIX_PROXY="YOUR_AISIX_GATEWAY_URL"
export AISIX_MODEL="gpt-4o-prod"
export AISIX_API_KEY="YOUR_CALLER_API_KEY"
对于控制面示例,还需导出控制面连接参数及待限制资源的 ID:
# AISIX_CP 包含 /api,且不含尾部斜杠
# 本地 AISIX Enterprise 快速入门使用 http://localhost:8080/api
export AISIX_CP="YOUR_AISIX_CONTROL_PLANE_API_URL"
export AISIX_TOKEN="YOUR_ADMIN_TOKEN"
export ENV_ID="YOUR_ENVIRONMENT_ID"
# API_KEY_ID 标识明文值为 AISIX_API_KEY 的调用方 Key。
export API_KEY_ID="YOUR_CALLER_API_KEY_ID"
# MODEL_ID 标识别名为 AISIX_MODEL 的模型。
export MODEL_ID="YOUR_MODEL_ID"