Command Palette
Search for a command to run...
大语言模型在演化的用户意图中迷失方向
大语言模型在演化的用户意图中迷失方向
Jihoon Tack Philippe Laban Jennifer Neville
摘要
随着大语言模型(LLM)能力的增强,它们越来越多地被部署为协作智能体,通过迭代交互承担用户委托的任务。然而,真正的交互本质上是动态的:用户很少在一开始就完整阐明其意图,而是随着对话的展开逐步披露、修正和重塑意图。尽管如此,LLM 的评估和训练仍主要在单轮、意图完全指定的设定下进行,这留下了一个根本性的问题:当用户意图在对话过程中不断演化时,LLM 在追踪并据此行动方面的表现如何?为研究这一问题,我们引入了一个框架,将静态的单轮任务转化为动态的多轮对话。在这些对话中,用户的意图跨轮次演化——逐步揭示、修正,有时在对话中途被重定向——同时保留每项任务的原始评估协议,使得现有基准无需新的标注即可作为受控的测试平台被复用。在多项任务中,我们揭示了一个一致的现象:强大的静态设定表现无法迁移到意图演化的设定中,各模型家族的性能均出现大幅下降。我们的发现指出了一个根本性的差距:当今的 LLM 尚不能忠实地追踪演化的用户意图并据此行动,这一能力在静态评估中不可见,但对未来的协作智能体至关重要。
一句话总结
微软研究院的研究人员提出一个框架,将静态单轮任务转换为动态多轮对话,其中用户意图在回合间逐步揭露、修改和转向,同时保留原始评估协议,将现有基准重用为可控测试平台,揭示出强大的静态性能无法迁移到这种意图不断演变的设定中,不同模型系列的性能均大幅下降,并凸显出 LLM 在忠实跟踪并响应不断演变的用户意图方面存在关键差距,这一能力在静态评估中无法体现,但对未来的协作 agents 至关重要。
核心贡献
- 该论文引入一个框架,将任何可验证的单轮任务转换为受控的多轮环境,通过将最后一轮锚定在原始任务上,并反向合成了前序轮次,包含三种意图演变形式:增量揭示、修正和任务切换。
- 该方法保留源数据集的评估协议,使得 agent 的最终动作可以使用原始验证器进行验证,无需额外标注或基于 LLM 的判断。
- 在数学、文本到 SQL、搜索和编程基准上的实验表明,当用户意图变得动态时,前沿和开源 LLM 的性能均大幅下降,暴露了静态评估无法发现的根本差距。
引言
作者应对了从单轮 LLM 聊天机器人到在长期演变的对话中与用户协作的 agent 的转变,例如在 vibe coding 或迭代文档编辑中。在这些现实场景中,用户意图并非静态;而是逐步披露、修正或转向。现有基准仍以单轮为主,任务在开始时就被完全指定,而较新的多轮评估则依赖 LLM 判断、简短的用户轮次以及对用户行为的有限控制,未能捕捉真实交互的更广泛动态。作者提出一个框架,将任何可验证的单轮数据集转换为意图不断演变的多轮环境。通过将最终用户意图锚定到原始单轮答案上,该框架通过三种可控动态(欠指定、修正和任务切换)合成前序轮次,同时保留数据集的可验证真值,从而无需额外标注或评判模型就能实现可扩展的长期评估。
数据集
作者构建了一个模拟数据集,以捕捉在长期多轮对话中不断演变的用户意图。以下是该数据集的组成、处理和使用方式的详细说明:
-
来源与组成 该数据集基于一个可验证的单轮数据集构建。从中提取一个“锚定意图”,代表用户旅程的最终可验证目标。从该锚定意图出发,作者逆向生成一系列前序意图,创建一条多轮轨迹,模拟用户需求如何逐步演变。
-
可验证性的继承 由于锚定意图来自可验证的来源,整个模拟轨迹继承了这一属性。每一轮仍然可以自动检查,这对于可靠的评估和训练至关重要。
-
处理流程
- 锚定提取 – 从源数据集中选择一个可验证的意图。
- 逆向构建 – 从锚定意图向后构建前序意图,形成一致的用户目标变化历史。
- 轨迹模拟 – 将整个序列组装成多轮对话,保留原始的可验证性。
-
本文中的用途 该数据集用于训练和评估必须处理具有演变意图的长期交互的模型。模拟轨迹提供了一个可控且可扩展的环境,能够自动衡量模型跟踪和响应不断变化的用户需求的能力。
方法
作者将用户意图形式化为一个可控的结构化状态,并具有控制其在不同对话轮次间演变的转换动态。这种结构化表述能够精确控制用户所揭示的信息,超越了固定且欠指定的状态,从而捕捉诸如信息修正和任务转向等动态行为。在任意轮次 t,用户的意图定义为:
It=(ft,Ct,Ctrev,yt)其中 ft 表示用户想要完成的目标函数,Ct 是该函数的参数集合,Ctrev⊆Ct 跟踪已向 agent 揭示的参数,yt 是真值答案。
为了建模这种意图的演变,作者提出了三种不同的转换类型。
首先,argument reveal 发生在用户披露一个之前未揭示的参数,同时保持底层函数和已有参数不变。其次,argument revision 发生在用户更改至少一个已揭示参数的值,要求 agent 更新其信念,而不是锚定于先前的值。第三,function switch 涉及用户转向一个完全不同的任务,其中共享参数将其值传递给新函数。
为了在长期交互中可扩展且自动可验证地模拟这些不断演变的意图,作者构建了一个多阶段模拟框架。
该过程从意图提取开始。由于逐轮意图标注成本高昂,作者利用现有的单轮可验证数据集。从每个问题-答案对 (q,y∗) 中,他们提示 LLM 提取源函数 f∗ 及其参数集 C∗。这个三元组作为模拟对话最后一轮的锚定意图,确保 agent 的最终动作能根据原始数据集验证器进行评分。
接下来,框架执行逆向扩展以合成导致该锚定意图的前序意图。对于 argument revision,作者为源参数生成反事实值。对于每个源参数 ci∗,LLM 生成一个反事实值 cicf,用户之后可以将其修正回源值。对于 function switch,他们合成一个前驱函数 fpre 及其参数 Cpre,使得 Cpre∩C∗=∅。该过程可以递归应用,构建更长的前驱函数链。
最后,作者执行情境模拟以生成多轮对话。一个调度器根据一系列一致性规则将转换事件分配到 T 轮中。这些规则确保最后一轮与锚定意图匹配,所有条件都已揭示,并要求 function switch 仅在当前任务完全指定后发生。然后,一个渲染器根据每轮仅基于意图更新 ΔIt 构造自然语言用户回答,而非完整的意图。该渲染器将更新后的函数和参数与领域特定的对话前缀连接起来,生成逼真的对话。
实验
实验在四个基准上测试了 LLM agent 在多轮演变意图场景中的表现,使用了 reveal、revision 和 switch 等转换。强大的单轮性能未能迁移,随着转换的累积,准确率急剧下降,尤其是 function switch 时。消融实验揭示,组合多种转换类型以及增加源任务难度会进一步降低性能,而简单的记忆辅助只能部分恢复性能。总体而言,agent 难以维持准确的意图跟踪并在多轮中整合上下文,凸显了需要更好的信念状态管理。
大型语言模型在多轮用户意图演变时准确率持续下降,即使它们在完全指定的单轮任务上表现优异。在搜索和软件工程基准上,下降最为严重,有些模型尽管单轮分数很高,但完全失败。更多的工具调用并不能弥补跟踪变化意图的挑战,因为累积的上下文成为干扰因素。从单轮到意图演变设置,所有模型的相对准确率下降幅度很大,有些模型在 BIRD-SQL 上损失超过 30% 的单轮性能,在 BrowseComp+ 上损失超过 58%。在 SWE-Bench 上,GPT 5.1 和 Grok 4.20 在意图演变下获得了 0% 的准确率,超时或耗尽工具调用预算,而它们单轮准确率分别为 72% 和 84%。
模型在从单轮转移到多轮意图演变交互时,准确率持续下降,其中 function switch 的影响最大。组合多种转换类型通常加剧下降,表明随着对话动态变得复杂,意图跟踪能力恶化。这种影响在 SWE-Bench Verif. 上尤为严重,任何 function switch 都会使 GPT 5.1 的准确率降至零。在所有数据集上,function switch 转换导致从单轮准确率下降的幅度最大,超过单独的 argument reveal 或 argument revise。包含 function switch 的组合,如 revise+switch 和 reveal+revise+switch,通常会进一步降低性能,尽管 BIRD-SQL 上 GPT 5.5 出现了部分反弹。在 SWE-Bench Verif. 上,GPT 5.1 在任何包含 function switch 的场景下完全失败(0% 准确率),而 GPT 5.5 则保留了大部分单轮性能。
在 GSM8K 对话上对 GPT 5.1 的逐轮意图跟踪显示,argument reveals 和 changes 几乎被完美跟踪,而 function switches 导致准确率显著下降。当多个 function switches 发生时,下降尤为严重,准确率从 89% 降至 82%。argument reveals 和 changes 几乎被完美跟踪,准确率在 96% 或以上。function switch 跟踪准确率从一次出现时的 89% 急剧下降到两次出现时的 82%。
实验评估了大型语言模型在单轮和多轮基准上的表现,其中用户意图通过 argument reveal、revision 和 function switch 演变。尽管模型能够高精度跟踪参数更新,但 function switch 造成的性能下降最严重,而组合多种转换类型会加剧下降。这种影响在搜索和软件工程任务中尤为显著,部分模型尽管单轮结果强劲,但完全无法跟踪变化的意图。