随记1-LLM多轮对话的陷阱
今天工作偶然看到一篇微软的文章《LLMs Get Lost In Multi-Turn Conversation》觉得蛮有意思的,遂分享一下感悟。这篇文章主要讲的是,为什么许多大语言模型(LLMs)在测评的各种任务各种benchmark中表现优异,但是在面对用户的实际交流中(主要指多轮对话的形式),效果不尽人意。
这个原因呢,是因为目前的评估大多集中在明确完整的单轮对话,即在一次性的prompt中就详细确定地把任务描述完成;然而在实际使用中,用户通常需要多轮沟通才能明确需求(一部分是因为大语言模型的效果差,需要根据输出调整措辞,一部分是用户本身就需要慢慢理清楚脉络)。因此在两种对话模式的gap中,模型的效果就产生了dif。
当然这里插一句,为什么多轮对话的效果就一定差呢?有几个原因:1.LLM在前几轮的对话中(可能用户还在挤牙膏式表达完整需求)联想自行幻觉补充了一些信息,因此在输出时产生了幻觉(过早给出完整答案),质量也就变差了。2. 多轮对话的底层逻辑,是把前面对话的上下文全都输入给模型作为新的prompt,这样就导致之前的输出也输入了,放大了输出的噪声,并且增加了token长度,弱化了问题权重。
那么,这个现象的启示是什么呢?
- 对于模型开发者:建议不仅优化单轮对话能力,更要重视多轮对话中的可靠性,模型应具备更好地整合多轮信息、适时发起澄清、避免过早假设的能力。即在训练和评估中增加对多轮欠规格对话能力的关注,研发更具鲁棒性和可靠性的对话模型。
- 对于用户:提醒用户尽量在单个对话(prompt)中准确表达需求,或多用重启新对话的策略,避免持续局部纠正导致模型表现退化。
最后,感兴趣的可以看下原文:https://arxiv.org/pdf/2505.06120 感觉还是挺有意思的一篇文章。