系统设计Technical Deep Dive

Tool Calling 的边界控制:从可用到可控

发布时间2025/08/18
分类系统设计
预计阅读1 分钟
作者林嘉诚
*

讨论 Tool Calling 在业务系统中的边界问题,重点是权限、失败处理与观测。

01.问题定义

Tool Calling 的价值很直接:让模型可以触达业务系统。 但在生产场景里,最大风险也来自这里。

02.三类边界

权限边界

模型不应直接拥有全部能力。 应该通过用户上下文映射到可调用工具集合。

参数边界

所有工具入参都需要校验,避免“看起来合理”的非法请求进入系统。

行为边界

调用过程必须可追踪,包括:

  • 调用前意图
  • 调用参数
  • 返回结果与错误

03.一个简单实践

可以在执行层引入统一拦截器:

ts snippetts
function guardToolCall(name: string, payload: unknown, userRole: string) {
  // 1) 校验权限
  // 2) 校验参数
  // 3) 写入审计日志
}

04.结论

Tool Calling 不是“接上就好”,而是要在架构层明确谁可以调用、如何调用、失败怎么处理。