把邮箱交给一个会自己动手的程序,第一次尝试的人多半会有点犹豫。犹豫的缘由常常说不清,大致是:它替我点了什么,我看不见。
「智能体」这个词如今用得比较松。笼统地说,它指一类程序——接收的是一个目标而不是一条指令,自己把目标拆成步骤,调用外部工具,看返回结果,再决定下一步。它和聊天框的差别不在回答是否聪明,而在它真的会动手:打开文件、发出请求、填一张表单、点一次提交。
这个差别听着不大,实际是分水岭。聊天框答错了,你一眼能看出来;程序动错了手,代价要过一阵才浮现。
卡住的地方通常不在推理
演示里显眼的部分是「它自己想到了下一步」。真跑起来,麻烦往往出在别处:接口返回了意料之外的格式、页面比你预想的慢半秒、某个按钮的文字改了。这些都不属于推理问题,属于环境问题。
一个任务链有十步,每步成功率都不低,整条链跑通的概率仍会掉得很明显。所以更实际的做法,是把长任务切成几段,段与段之间留一个检查点。人不必盯全程,但要在关键处能插手。这不是对能力的不信任,是对链条长度的基本尊重。
能退回去,比能做成更重要
判断一个自动执行程序是否可用,我习惯先看它失败时留下什么,而不是它成功时多漂亮。发送出去的消息收不回,提交过的表单改不回来,这类动作只要发生一次,后面的补救成本就远高于省下的时间。
把智能体放进日常流程,权限这一关绕不过去。动手之前,有三件事值得问清楚:
- 出错之后,环境能不能回到原来的状态,还是只能人工一点点收拾;
- 它执行的每一步有没有留下人能读懂的记录,还是只给一行「任务失败」;
- 权限是按单次任务收窄的,还是一次性给到底,此后长期有效。
最后一条常被忽略。为了省事,很多人会把一整套凭据一次性交给它,之后也不再收回。可一个只需要读日历的任务,本来不该有发信的能力。把权限切细,代价是配置麻烦一点,换回来的是出事时的可控范围。
什么时候该把控制权收回来
我倾向于给这类程序划一条不太性感的界线:凡是不可逆、且影响面超出自己的操作,仍然自己按最后那一下。可逆的、可核对的、影响范围局限在个人工作流里的,放手让它跑,出问题再修。
这条线不是永久的。随着记录变得更清楚、回滚变得更可靠,能交出去的部分会慢慢变多。但在那之前,把智能体当成一个需要交代边界的新同事,比当成一个更聪明的输入框要稳妥。它的价值不在于替你做决定,而在于把那些重复、琐碎、步骤明确的事接过去——前提是你知道它接走的是什么,以及怎么拿回来。