TL;DR
- 代理工具是可调用的接口,允许AI代理检索数据、执行计算、操作文件、使用软件或触发业务操作。
- 有效的工具定义需要一个准确的名称、面向决策的描述、严格的输入架构、有限的输出和明确的错误状态。
- 工具质量应通过任务级评估来衡量,而不仅仅是检查端点是否返回成功状态。
- 读写能力应分开,权限应默认为最低所需范围,后续操作应需要批准。
- 网络访问通常是一个管道:搜索或已知URL提供候选项,检索返回内容,验证决定内容是否安全和有用。
什么是代理工具?
代理工具是AI代理可以调用的函数或服务,用于与模型存储的知识之外的系统进行交互。工具可以搜索网络、查询数据库、计算确定性结果、读取文件、控制浏览器或在业务应用中创建记录。模型接收工具的描述和架构,决定是否调用它,提供结构化参数,并在下一个推理步骤中使用返回的结果。
该定义将代理工具与普通提示上下文区分开来。上下文告诉模型某些信息;工具为运行时提供了一种受控方式来获取信息或执行操作。它还将工具与技能区分开:工具执行一个有限的操作,而技能或工作流程描述如何处理更广泛的任务类别。
当代理需要当前的公共网页数据时,Nstproxy Crawl可以作为一个检索工具,将提供的URL或有限站点转换为结构化工件。它不决定哪些事实是真实的,也不替代代理的领域验证。
代理工具如何工作
代理工具通过重复的选择、调用、观察和停止循环工作。运行时向模型呈现工具定义,模型选择工具和参数,主机验证请求,工具执行,结果返回给模型。当任务完成、达到限制或需要人工决策时,循环结束。
模型上下文协议规范标准化了应用程序如何在客户端-服务器边界之间公开工具、资源和提示。MCP可以减少自定义集成代码,但该协议并不消除身份验证、授权、输入验证、日志记录或批准门的需要。
最重要的工程边界位于模型意图和工具执行之间。模型提出调用;可信的应用程序代码必须验证参数、强制范围、应用超时并决定是否允许执行。语法上有效的工具调用并不自动意味着一个安全或正确的操作。
主要类型的代理工具
代理工具可分为六种实际分类,尽管生产系统可能使用不同的标签。
| 分类 | 典型操作 | 主要风险 | 有效控制 |
|---|---|---|---|
| 检索 | 搜索、数据库读取、知识查找 | 过期或被污染的上下文 | 源头和语义验证 |
| 计算 | 数学、代码执行、转换 | 资源滥用或不安全代码 | 沙盒和配额 |
| 文件 | 读取、创建、编辑、导出 | 数据丢失或敏感信息泄露 | 路径白名单和版本控制 |
| 浏览器或计算机使用 | 导航、点击、输入、检查UI | 广泛的环境权限 | 隔离会话和确认 |
| 商业应用 | 电子邮件、日历、CRM、票据 | 外部副作用 | 分开读/写工具和批准 |
| 网络收集 | 获取、呈现、爬取、提取 | 条款、隐私、无限范围 | URL策略、爬虫限制和保留规则 |
检索工具
检索工具返回当前或领域特定的信息。可靠的结果应包括源标识符、时间戳和足够的来源以支持后续验证。向量相似性、关键词搜索、图遍历和SQL查询是不同的检索方法;除非路由逻辑和结果语义明确,否则不应将它们隐藏在一个模糊的“搜索所有内容”工具后面。



