操作场景
参数改写策略支持在请求转发给后端模型服务之前,对请求的 Body 参数和 Query 参数进行新增、编辑或删除操作。适用于以下场景:
参数注入:为所有请求自动添加必要的参数(如固定的
temperature、max_tokens)参数覆盖:覆盖客户端传入的参数值,统一控制模型行为
参数清理:删除敏感或不必要的参数,防止参数泄露
协议适配:适配不同供应商的参数差异(如将
top_p 改写为 topP)多版本兼容:支持不同 API 版本的参数格式转换
说明:
参数改写发生在请求路由之后、转发给后端模型服务之前,仅影响转发的请求,不影响客户端收到的响应。
前置条件
1. 已创建 AI 网关实例且处于运行中状态
2. 已创建模型 API
3. 了解后端模型服务支持的参数格式和要求
操作步骤
配置参数改写
步骤 1:进入模型 API 详情页
1. 登录 微服务平台控制台 ,在左侧导航栏单击云原生智能网关 > 实例列表。
2. 在实例列表页面,单击需要配置的网关实例的“ID”,进入该网关实例的基本信息页面。
3. 在左侧导航栏单击 模型管理,然后单击模型 API 页签。
4. 单击目标模型 API 名称,进入 API 详情页。
5. 切换到 参数改写 Tab。
步骤 2:参数改写配置
1. 在 参数改写 Tab 中,查看当前配置状态。
2. 单击 配置参数改写规则 进入配置对话框。
3. 在配置对话框中,开启 是否启用 开关。
4. 选择需要改写的参数,配置参数改写规则
操作类型说明:
操作类型 | 说明 | 使用场景 |
新增 | 添加新的参数键值对 | 注入默认参数如 temperature: 0.7 |
编辑 | 修改已有参数的值 | 覆盖客户端传入的参数 |
删除 | 删除指定的参数 | 清理敏感或不必要的参数 |
5. 单击添加按钮,可配置多条参数改写规则。规则按配置顺序依次执行。
步骤 3:保存配置
单击 确定 保存参数改写规则,配置立即生效。
典型配置示例
示例 1:统一温度参数
场景:统一控制所有请求的
temperature 参数,避免客户端随意设置。配置:
阶段 | 操作类型 | 参数键 | 参数值 |
Body 参数 | 编辑 | temperature | 0.7 |
效果:无论客户端传入什么 temperature 值,最终都使用 0.7。
示例 2:清理敏感信息
场景:删除请求中的用户标识信息,保护用户隐私。
配置:
阶段 | 操作类型 | 参数键 | 参数值 |
Body 参数 | 删除 | user | - |
Body 参数 | 删除 | metadata.user_id | - |
效果:请求中的用户标识字段被删除,不会转发给后端模型服务。
示例 3:适配 Azure OpenAI
场景:适配 Azure OpenAI 的
api-version Query 参数要求。配置:
阶段 | 操作类型 | 参数键 | 参数值 |
Query 参数 | 新增 | api-version | 2024-02-01 |
效果:所有请求自动添加
?api-version=2024-02-01。注意事项
1. 执行时机:参数改写发生在请求路由之后、转发给后端模型服务之前。
2. 执行顺序:多条规则按配置顺序依次执行,建议将依赖性的规则按正确顺序排列。
3. Body 参数限制:仅支持对 JSON 格式的请求 Body 进行参数改写。
4. 参数键路径:支持简单的参数键名(如
temperature),暂不支持嵌套路径(如 messages[0].content)。5. 与缓存的配合:参数改写发生在缓存查询之后,缓存的 Key 基于原始请求计算。
6. 与日志的关系:LLM Log 记录的是改写后的请求包体(如已开启包体采集)。
7. 参数值类型:当前版本参数值统一作为字符串处理,暂不支持数字、布尔等类型标记。