UX for Agents, Part 2: Ambient

面向代理的 UX,第二部分:环境

这是我们第二篇关于面向代理的 UX 的文章。我们将讨论环境背景代理,它们可以同时处理多个任务,以及如何在您的工作流程中使用它们。

阅读时间 4 分钟

在 3 月份的红杉资本 AI Ascent 会议上,我谈到了代理的三个限制:规划、UX 和记忆。请查看该演讲 这里。这是我们关于面向代理的 UX 的第二篇文章,重点关注环境代理。

在我们关于面向代理的基于聊天的 UX 的上一篇博文中,我们讨论了聊天如何要求用户主动思考向 AI 发送消息。但是,如果 AI 可以就在后台为您工作呢?

我认为,为了让代理系统真正发挥其潜力,需要发生这种向允许 AI 在后台工作的转变。当任务在后台处理时,用户通常对更长的完成时间更宽容(因为他们放宽了对低延迟的预期)。这使代理可以做更多工作,通常比在聊天 UX 中更仔细/更勤奋地工作。

此外,在后台运行代理使我们人类能够更有效地扩展我们的能力。聊天界面通常将我们限制在一个时间执行一个任务。但是,如果代理在后台环境中运行,则可以有很多代理同时处理多个任务。

那么,这种后台代理 UX 会是什么样的呢?

与后台代理建立信任:从“人机交互”到“人机协同”

让代理在后台运行需要一定程度的信任。您如何建立这种信任?

一个简单的想法是向用户展示代理正在执行的操作。显示它正在执行的所有步骤,并让用户观察正在发生的事情。虽然这些信息可能不会立即显示(因为它在将响应流回时会显示),但它应该可供用户点击并观察。

下一步不仅仅是让用户看到正在发生的事情,还要让他们纠正代理。如果他们看到代理在 10 个步骤中的第 4 步做出了错误的选择,他们应该能够回到第 4 步并以某种方式纠正代理。

这种纠正是什么样子的?它可以采取几种形式。让我们以纠正错误调用工具的代理为例

  1. 您可以手动键入正确的工具调用并使其看起来像是代理输出的,然后从那里继续
  2. 您可以向代理提供关于如何更好地调用工具的明确说明 - 例如,“用参数 X 调用它,而不是参数 Y” - 并要求代理更新其预测
  3. 您可以在时间点的某个点更新代理的说明或状态,然后从该步骤开始重新运行

选项 2 和 3 之间的区别在于代理是否意识到其先前的错误。在选项 2 中,代理被呈现其先前的糟糕生成并被要求纠正它,而在选项 3 中,它不知道其错误预测(并且只是遵循更新的说明)。

这种方法将人从“在循环中”转变为“在循环中”。“在循环中”需要能够向用户展示代理执行的所有中间步骤,允许用户在中途暂停工作流程,提供反馈,然后让代理继续。

一个已经实现了类似 UX 的应用程序是Devin,人工智能软件工程师Devin 运行了很长时间,但您可以查看执行的所有步骤,倒带到特定时间点的开发状态,并从那里发出更正。

整合人工输入:代理如何在需要时寻求帮助

虽然代理可能在后台运行,但这并不意味着它需要完全自主地执行任务。有些时候代理会不知道该做什么或如何回答。此时,它需要引起人类的注意并寻求帮助。

我正在构建的电子邮件助手代理就是一个具体例子。虽然电子邮件助手可以回答基本电子邮件,但它经常需要我在我想自动执行的某些任务上提供输入。这些任务包括审查复杂的 LangChain 错误报告、决定我是否想去参加会议等。

在这种情况下,电子邮件助手需要一种方式来向我传达它需要信息才能响应。请注意,它不是要求我直接响应;相反,它是在寻求我对某些任务的意见,然后它可以使用这些意见来撰写并发送一篇不错的电子邮件或安排一个日历邀请。

目前,我已将此助手设置为 Slack。它向我发送一个问题,我在线程中回复它,与我的工作流程自然集成。如果我要考虑在比我自己只是一个电子邮件助手更大的范围内进行这种类型的 UX,我会想象一个类似于客户支持仪表板的 UX。此界面将显示助手需要人工帮助的所有区域、请求的优先级以及任何其他元数据。

我最初在描述此电子邮件助手时使用的是“代理收件箱”一词 - 但更准确地说,它是人类用于在某些任务上协助代理的收件箱……有点令人不寒而栗的想法。

结论

我非常看好环境代理,因为我认为它们是让我们扩展自身能力的关键。

随着我们团队继续构建LangGraph,我们正在考虑这些类型的 UX。我们检查点所有状态,方便实现人机协同的可观察性、倒带和编辑。这也使代理能够联系人类并在继续之前等待他们的响应。

如果您正在使用环境代理构建应用程序,请与我们联系。我们很乐意听取您的经验!