提示词之后是什么
Karpathy 最近关于将长语音会话用作提示词的帖子,帮助我理解了一种我在构建智能体时经常依赖的提示词技巧。这篇帖子附带的插图《从提示词到任务》用一张图概括了这个想法。
由于找不到更好的术语,我一直把这个单元称为"任务"。一个任务利用多模态提示词,在一次交互中向智能体提供指令和尽可能多的相关上下文。它覆盖的工作单元比单个提示词更大,并且会留下一个可存储的痕迹,日后可以转化为可复用的技能。
一个任务可以包含一段较长的语音解释、当前屏幕画面、精确的文本、标注、转录文本、图像,以及任何其他有助于智能体理解工作的证据。每种模态贡献的内容各不相同。语音承载着推理过程、优先级、示例和不确定性。屏幕向智能体提供当前状态以及工作所需的环境。标注将注意力引导到具体细节上。文本则保留了精确的需求、名称和约束条件。这些信号共同为智能体提供了更丰富的工作表征。
交互过程
这种体验更接近于引导智能体完成一项复杂任务,而非编写一条传统的提示词。我会预先加载那些原本需要在多次交互中才能逐步提供的上下文,然后给智能体留出空间,让它一次性完成更多工作。在实践中,我会在逐步讲解工作时录制一段语音笔记,截取相关的屏幕画面,用快速标注标记出来,然后粘贴智能体所需的精确文本。
当重要信息缺失时,智能体仍然可以提问。根据我的经验,更丰富的任务减少了重复的来回沟通——那种我需要重复说明上下文、指出同样的细节、或者纠正一个本可以从一开始就解决的假设的情况。最近的一个例子是在一个我很少使用的平台上安排发布内容。我录制了一段简短的语音笔记,说明了目标和约束条件,共享了打开排期页面的屏幕,并标注了关键字段。智能体一次性完成了设置,而通常那些关于填写哪些字段、粘贴哪些文案的后续追问再也没有出现。
这也改变了我对 AI 智能体生产力的看法。一个结构清晰的任务让我更有信心把工作交出去,转而去做别的事情。这使得并行工作变得更加可行,因为每个智能体在运行过程中需要的主动监督更少。
为什么有效
卡帕西指出,大语言模型在从冗长、杂乱的口语会话中重建意图方面表现得异常出色。一段随性的发言包含了关于目标、约束条件、关键示例以及说话者不确定性的许多微弱信号。模型能够将这些信号组织成对请求更清晰的表征。
我正在用更多模态来扩展这个思路。口语会话提供了推理过程,而屏幕、文本、注释、转录稿和图像则提供了额外的证据。当一个通道信息嘈杂或不完整时,另一个通道可以帮助消除歧义。
复杂的智能体任务常常在我本意、我明确说出的内容以及智能体能观察到的事物之间的边界上失败。多模态提示词让模型在开始工作之前有更多机会弥合这些差距。
成本与回报
这种方法看起来可能有些过头,有时也确实如此。一个简单的请求仍然值得用一个简单的提示词。我只有在任务运行时间长、对精度要求高、智能体需要导航不熟悉的界面,或者一个错误会导致多轮修正时,才会使用更丰富的任务。
多模态任务也可能因为包含更多上下文而成本更高。根据我的经验,这笔投入通常物有所值。我可以在每一轮交互中完成更大的工作单元,因为智能体从一开始就拥有了它所需的更多上下文。
这对于浏览器使用和计算机使用尤其有用。智能体可以看到环境,听到请求背后的推理过程,跟随识别重要元素的注释,并使用文本获取精确细节。这种组合有助于智能体导航不熟悉的界面。
我目前的一些例子包括:在陌生平台上安排发布、改进写作与编辑、以及优化工件和网页的设计。这些任务涉及许多微小的决策,用传统提示词来编码会非常繁琐,但在展示工作过程时却很容易沟通。在设计优化任务中,各种模态自然对应:语音解释布局哪里不对劲、改动应保留什么;屏幕展示工件的当前状态;标注标记出需要调整的具体间距、组件或区域;文本则提供确切的文案和必须保持不变的约束条件。
从轨迹到技能
我存储这些任务的轨迹,并从中审视重复出现的模式。
有用的模式通常包括:动作序列、我反复强调的约束条件、我应用的质量检查、以及那些能持续改进结果的修正。这些模式可以被提取为可复用的技能,这样下一个智能体就能从一个更强大的工作流程开始。
这种与自动化的关联很重要。一个任务为我提供了一个可检验、可改进、并最终能放入更大循环中的实用单元。更丰富的初始轨迹帮助我理解哪些部分可以可靠地自动化,以及人类的指导在哪些地方仍然能增加价值。
这个过程通常从一个手动任务开始。重复使用会产生轨迹,轨迹揭示出模式,模式则成为可复用的技能。随着时间的推移,工作流程所需的解释越来越少,因为重要的指导已经被捕获下来。
如果你有兴趣了解更多,我将通过我们的学院进行演示、分享并撰写更多相关内容:https://academy.dair.ai/
迈向全模态模型
全模态模型——即原生支持语音、视觉、图像和文本的模型——应该会让这种交互风格变得自然。我们将能够在同一个会话中说话、展示、指点、打字和提供示例,而模型则直接整合这些信号。
我感觉自己现在就在为那种交互进行排练。当前的工具已经使之成为可能,尽管体验上仍然像是把语音、浏览器状态、图像和文本拼凑在一起。
“任务”这个术语是临时性的,但其背后的核心理念通过反复使用已经变得清晰:给智能体提供更丰富的工作轨迹,让它重建意图,存储所发生的事情,并复用那些有效的模式。
这源于一个实际需求。我希望减少修正循环,强化任务交接,并让长期运行的智能体工作流更加可靠。多模态提示词正稳步地让我朝着这个方向前进,它已成为我让智能体处理实际工作的默认方式。