Tool Risk Level
Tool Risk Level 是对工具操作风险的分级,决定是否需要人类审批、是否需要额外日志、是否需要沙箱执行。
#concept
#evergreen
#ai
#security
[!info] related notes
- 所属 MOC: Tool Calling Engineering MOC
- 相关: Human-in-the-loop, Sandbox
Tool Risk Level
一句话定义
Tool Risk Level 是对工具操作风险的分级。查询天气是低风险,删除数据是高风险。不同风险级别决定了是否需要审批、是否需要沙箱、是否需要详细日志。
核心原理
风险等级是策略,不是通用常数
等级名称可用于组织策略,但不能仅从工具名决定审批。例如读取公开天气与读取秘密都“只读”,删除临时文件与删除生产数据库也不是同一风险。
| 评估维度 | 要检查的事实 |
|---|---|
| 数据敏感性 | 读取或输出什么数据,谁能接收 |
| 副作用 | 是否写入、发信、付款,是否可补偿 |
| 范围 | 真实目标数量、金额、环境与影响对象 |
| 授权 | 当前任务已授权什么,是否存在硬性禁止 |
| 隔离 | 路径、网络、凭证和资源限制是否有效 |
动态评估
可信注册表给出基础能力;执行器解析真实资源与参数后再评估本次操作。不能信任模型自报的 count 或 risk_level,也不能因少量记录把基础高风险降级。
例如删除批次应基于服务端解析后的目标集和版本评估范围;如果审批后目标集改变,需要重新评估,旧批准不能覆盖新的范围。
风险与控制
风险评估选择所需控制,不直接授予权限。已获有效授权的范围内操作无需重复确认;明确禁止的操作不能靠审批绕过。新增审批协议见 Approval Workflow。
只读也要校验数据权限和输出边界。审计按 工具审计日志记录必要摘要,风险越高不意味着可以把完整秘密写入日志。沙箱隔离也不替代业务授权。
常见坑
- 不做风险分级: 所有工具同等对待
- 风险等级太低: 高风险操作没有审批
- 不做动态评估: 同一个工具不同参数风险不同