探索ProductAgent:通过对话澄清实现精准电子商务产品搜索

ProductAgent: Benchmarking Conversational Product Search Agent with Asking Clarification Questions

摘要

本文介绍了一种在电子商务场景中的产品需求澄清任务,用户以模糊查询开始对话,而任务导向的代理通过提出澄清问题来实现更准确和定制化的产品搜索。为了解决这一任务,我们提出了ProductAgent,一个配备有策略性澄清问题生成和动态产品检索能力的对话信息寻求代理。具体来说,我们开发了代理,使其具备产品特征总结、查询生成和产品检索的策略。此外,我们提出了名为PROCRARE的基准,通过LLM驱动的用户模拟器自动和定性地评估代理的性能。实验表明,ProductAgent与用户积极互动,并随着对话轮次的增加,用户需求逐渐变得更加明确和详细,从而提高了检索性能。

原理

ProductAgent的核心工作原理是通过集成三个核心模块:产品数据库、记忆模块和一组工具,执行自主循环。具体来说:

  1. 产品数据库:存储产品项目在结构化和向量化的形式,使ProductAgent能够检索相关产品并将其总结为反映当前用户需求的统计数据。
  2. 记忆模块:缓存用户在整个对话会话中的上下文信息,包括结构化的澄清问题和非结构化的对话记录,使代理能够动态地提出下一个问题。
  3. 工具:支持各种动作,如产品检索和澄清问题生成。通过精心设计的提示,我们实现了语言和机器学习模型(LLMs)与这些模块之间的有效交互,自动化了任务。

流程

ProductAgent的工作流程包括三个主要阶段:

  1. 类别分析:代理首先根据已知的用户需求合成一个查询,并使用该查询从数据库中检索相关产品项目。检索到的项目被总结为统计数据,这些统计数据涵盖了各种产品方面,并作为动态知识库,根据正在进行的用户需求实时构建,为后续步骤奠定基础。
  2. 项目搜索:根据所有已知需求动态检索不同的相关产品项目。具体来说,ProductAgent首先利用查询生成工具根据当前需求生成一个自然语言查询。然后使用生成的查询来检索最符合用户需求的项目。
  3. 澄清问题生成:在此步骤中,代理提出几个新的澄清问题及其答案候选,这些候选是精心挑选的,结合了知识丰富的统计数据和已知的用户需求。用户被提示通过选择选项或提供反映其在交互界面中兴趣的额外个人信息来有效澄清其要求。这一用户反馈对于任务非常有价值,因为它有助于提高产品搜索过程的准确性。上述步骤在对话的每一轮中重复进行,目的是使后续轮次中的用户需求比前一轮次更加精确,从而随着时间的推移稳步提高产品搜索的准确性。

应用

ProductAgent的关键内容在电子商务产品搜索中具有广泛的应用前景。通过提供一个能够通过对话澄清用户需求并动态检索相关产品的代理,可以显著提高用户的购物体验和满意度。此外,该技术还可以扩展到其他需要通过对话进行信息检索的领域,如客户服务、旅游规划等。