四、用户交互之二:后台运行也可以建立用户信任
在之前关于聊天型用户体验的章节中,我们探讨了聊天界面如何要求用户主动与 AI 互动。而如果 AI 可以在后台为您工作呢?
我认为,为了让智能体系统真正发挥潜力,必须实现让 AI 在后台运行的转变。当任务在后台处理时,用户通常对较长的完成时间更加宽容(因为他们不再过于追求低延迟)。这让智能体能够更专注地完成任务,而不是像在聊天界面中那样急于给出回应。
此外,后台运行的智能体能够让我们人类更高效地扩展我们的能力。聊天界面通常限制我们一次只能处理一个任务。但如果智能体在后台运行,多个智能体可以同时处理多个任务。
那么,后台运行智能体的用户体验是什么样的呢?
1、与后台智能体建立信任:从「人在循环中」到「人在循环上」
要让智能体在后台运行需要建立一定的信任。如何建立这种信任呢?
一个简单的方式就是展示给用户智能体正在执行的每一步操作,并让用户随时查看这些信息。虽然这些信息不会像流式反馈那样实时显示,但应该为用户提供可以点击查看的选项。
下一步,不仅仅是让用户看到发生了什么,还要让他们能够纠正智能体的操作。如果用户发现智能体在第 10 步中的第 4 步做出了错误选择,他们应该能够回到第 4 步进行纠正。
这种纠正方式可以通过几种形式实现。以纠正错误调用工具的智能体为例:
- 您可以手动输入正确的工具调用指令,使其看似由智能体生成,然后继续后续步骤。
- 您可以向智能体提供明确的指令,告诉它如何更好地调用工具——例如,「用参数 X 调用,而不是参数 Y」,并要求智能体更新其预测。
- 您可以更新当时的指令或状态,并从该步骤重新运行。
选项 2 和 3 的区别在于智能体是否意识到其先前的错误。选项 2 是要求智能体认识到其错误并加以纠正,而选项 3 则是在不知情的情况下只遵循新的指令。
这种方法将用户从「在循环中」转变为「在循环上」。「在循环上」意味着智能体需要向用户展示其执行的所有中间步骤,用户可以在工作流中途暂停,提供反馈,然后让智能体继续执行。
一个已经实现了类似用户体验的应用是 Devin——AI 软件工程师。Devin 能够长时间运行,用户可以查看所有执行的步骤,回到某个特定时间点,并从那里进行纠正。
2、整合人工输入:智能体在需要时如何请求帮助
虽然智能体在后台运行,但这并不意味着它必须完全自主地完成任务。有些时候,智能体可能不知道接下来该怎么做或如何回应。这时,它需要引起人类的注意并请求帮助。
以我正在构建的电子邮件助手智能体为例。虽然它能够处理一些基础的邮件任务,但对于某些任务,我不希望自动化处理,例如复杂的 LangChain 错误报告审阅或决定是否参加会议。
在这种情况下,电子邮件助手需要一种机制向我请求信息,而不是让我直接处理回复。它希望获得我的意见,然后利用这些信息撰写邮件或安排会议。
目前,我已经在 Slack 中设置了这个助手。它通过问题通知我,我在线程中回复,轻松集成到我的工作流程中。如果这种用户体验在更大范围内应用,我会设想一个类似客户支持仪表盘的界面,展示所有需要人工帮助的任务、请求的优先级及其他元数据。
我最初将这个电子邮件助手称为「智能体收件箱」——但更准确地说,它是一个为人类帮助智能体完成任务的收件箱……这种想法令人深思。