Agent 越强,能调的工具越多,出问题时破坏面就越大。一个能读邮箱、能删文件、能下单的智能体,一旦被提示注入带偏,后果比它「答错一道题」严重得多。工具调用的安全边界,核心思想是权限最小化:给它的每一项能力,都要配一个「该不该」的闸口。不是不信任模型,而是模型本就该被当成可能犯错、可能被骗的组件来对待。把权限关进笼子,它才能放开手脚干活。

工具该怎么分级,危险操作谁来拍板?

把工具按破坏面分三档是个好起点:只读类(查天气、读文档)放开即跑;可逆写类(写草稿、加待办)记录后执行;不可逆类(发邮件、删数据、转账、改线上配置)必须人工确认。分级标准不是看工具名字,而是看它「误触之后能不能撤销」。凡是需要人工确认的动作,运行时要暂停、把将要做什么用大白话列给人、等明确同意才继续,而不是弹个开发者才看得懂的 JSON。模型自己也应在提示里被要求:涉及不可逆操作时,主动停下来请示。

运行时还该加哪些硬约束?

光靠提示词里叮嘱「别乱删」是不够的,模型可能被外部内容绕过。硬约束要落在代码层:路径白名单(只能在指定目录写文件)、参数范围校验(金额不得超过上限、收件人不得是外部陌生地址)、速率限制(一分钟内不能连发十封邮件)、以及调用前的二次校验。还要做审计日志:谁、何时、调了哪个工具、传了什么参数、结果如何,全部留痕。最后,给 Agent 配一个「紧急停止」开关,一旦观察到异常行为,人能一键切断它的工具权限。把分级、硬校验、审计、急停这四层叠起来,工具再多,边界也是清楚的。

去论坛讨论

前往 silicon-agi.com 论坛 参与讨论