基于LLM的对话式搜索简明教程

本文探讨了对话式搜索如何通过结合知识库和大型语言模型提供交互式答案,其优势、工作原理,以及面临的挑战,包括价格、数据安全和任务执行能力。作者强调了这种模式的潜力和未来发展方向。
摘要由CSDN通过智能技术生成

生成式 AI 和大型语言模型 (LLM) 实现的最令人兴奋的模式之一是对话式搜索。 在这篇文章中,我将介绍你为什么需要对话式搜索、它是如何工作的以及这种搜索模式有哪些限制和变体。

NSDT工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编辑器 - REVIT导出3D模型插件 - 3D模型语义搜索引擎 - Three.js虚拟轴心开发包 

1、为什么需要对话式搜索

您希望能够从您控制的知识库中回答问题吗? 您是否有可以回答您所在领域的问题的文档? 是否不可能从您的知识库中列举出您希望能够回答的所有问题? 如果您对这些问题中的任何一个回答“是”,那么对话式搜索可能适合您。

简而言之,对话式搜索可以对您的文档进行任意问题和答案。 它使用您的文档来查找与给定问题相关的内容,并使用大型语言模型从相关内容生成文本。 问题和生成的答案都不逐字存在于您的知识库中。 生成的答案仍然基于您的知识库。 用户以对话方式提出问题,答案基于知识库搜索,因此我们称之为对话式搜索。

有些人将这种方法称为检索增强生成(RAG)。 系统执行以下操作:给定此上下文(从搜索查询中检索),回答此问题(使用生成的文本增强搜索结果)。

这是对传统搜索的改进,传统搜索给出的是一段话,而不是答案。 例如,我根据我自己和 Marco Noel 撰写的关于语音定制主题的文章训练了一个会话搜索系统。 下面是图 1 中的示例:

图 1 比较传统搜索和对话式搜索中对同一问题的回答

传统搜索返回文档中的一段内容。 该段落是与问题非常相关的文档中的关键字匹配。 在传统搜索中,用户可以单击文档并最终找到答案。 在对话式搜索中,系统直接返回答案。 对话式搜索的答案太棒了! 它源自知识库,下面来自开发人员工具的图 2 显示了使用哪些文档来构建答案。 提出问题的用户还可以获得文档的链接来验证答案。

图 2 会话搜索响应示例,突出显示了答案中的每个单词使用了哪些文档。

众所周知,LLM会通过给出自信但不合理的答案来产生幻觉。 许多LLM都是“在互联网上接受训练的”。 如果您从互联网上获取一个平均片段,您会相信它吗? 然而,会话搜索可以通过首先要求答案的很大一部分直接来自知识库,然后在无法使用知识库时回答“我不知道”来减轻幻觉。 其他缓解措施也是可能的,并且可能需要根据您的LLM进行。 如上图所示,对话式搜索可以提供证据,帮助您决定是否信任其答案。

在文档集合上使用生成式人工智能比针对您可以枚举的问题编写常见问题解答脚本或静态聊天机器人更容易。 它生成答案,而不是段落,因此它对用户来说比搜索更有用。 最后,它可以为生成的答案提供出处,为您提供值得信赖的响应。

2、对话式搜索的工作原理

传统搜索的流程是“用户查询”->“知识库搜索”->“返回相关段落”。

在会话式搜索中,流程是“用户查询”->“知识库搜索加LLM”->“返回答案(带证据)”。

我们已经了解了纯粹的“知识库搜索”是如何工作的。 纯粹的LLM是当你将查询发送到像 ChatGPT 这样的界面时,它会根据自己的知识库(它是训练数据)而不是你的知识库来回答问题。 神奇的事情发生在“知识库搜索加LLM”的结合中。 关键步骤如下图3所示。 假设用户问一个问题“我该怎么做 X?”

图 3 高级对话式搜索流程

对话式搜索从传统搜索开始,但将搜索结果输入到大型语言模型中。 LLM使用精心设计的提示,其中包括知识库中的上下文。 此提示指示LLM生成答案,但将答案限制在知识库中。 显示的提示是说明性的 - 您的聊天平台提供商可能会添加其他说明,例如告诉LLM何时说“我不知道”。

对话式搜索的美妙之处在于,大部分工作都落在聊天平台提供商身上。

聊天解决方案构建者只需要:

  • 提供相关文档(或知识库API 的链接)。
  • 配置与 LLM 的连接。

聊天平台提供商做了更繁重的工作:

  • 托管LLM。
  • 提示工程构建最高效的提示。 LLM对提示的大小有严格的限制,导致需要权衡。 应包含多少搜索结果? 其他提示说明需要详细到什么程度?
  • 可能会与提示工程一起调整知识库 API 调用,以检索相关且简洁的包。

我在不到一个小时的时间内为自己建立了一个演示对话搜索,其中包括建立我的知识库!

在图 3 中,我们看到了会话式搜索如何回答用户的初始问题。 这种模式也可以在用户提出后续问题的来回对话中发挥作用。 后续问题如图 4 所示。

图4 使用之前的聊天记录进行对话式搜索

同样,对话平台完成了大部分工作。

对话式搜索令人兴奋,因为每个企业都有一个知识库,而对话式搜索可以轻松解锁该知识库! 我预计会话搜索将在几年内成为知识库的新基线期望。 用户会喜欢有证据支持的答案; 知识库所有者会喜欢从其内容中获得的增加的价值。

3、对话式搜索有哪些限制和变化

会话式搜索仍处于起步阶段。 大规模实施面临一些挑战,并且基本主题存在多种变化。

  • 挑战#1:价格昂贵。

会话搜索背后的大型语言模型的计算成本很高,在专用硬件上运行,并且需要专门的技能来调整。

大型人工智能公司拥有大部分LLM,我预计大多数企业会购买而不是构建。 对 LLM 的 API 调用通常比大多数知识库搜索 API 昂贵得多。

一种变体是使用对话式搜索作为后备选项。 您可以为最常见的问题(“短尾”或“80/20”中的“80”)构建传统/静态问答聊天机器人,并回退到对话式搜索以解决任何未预先编程的问题(“长尾”) 。 您可以将静态问答视为缓存。 在此模式中,您可以使用 LLM 一次性生成常见问题的答案并将其存储在静态聊天机器人中。

  • 挑战#2:模型由谁托管?

如上所述,这些模型很昂贵。 许多模型提供商通过保留发送到其模型的请求以用作未来的训练数据来抵消这一成本。 您的企业可以将他们的问题和知识库内容发送给第三方吗? 我预计企业会要求选择使用LLM来保护其机密数据。

  • 挑战#3:这种模式只是问答,还不是事务性的

对话式搜索可以为用户问题生成出色的答案。 我看到了“如何开设账户”、“如何重置密码”等问题的精彩答案。 为用户开设帐户或重置密码不是很好吗? 这是显而易见的下一步,我想我们很快就会看到它来自平台提供商。 企业需要一个可以与其 API 集成来完成任务的解决方案。

  • 变体 #1:搜索 API

基本的会话式搜索架构可以使用几乎任何搜索 API。 接收文本查询并返回文档和/或段落的传统搜索 API 无处不在。 对话式搜索受搜索 API 的支配,返回高度相关的内容以输入到 LLM 提示中。 LLM 提示空间非常宝贵,搜索相关性的微小改进可以带来更好的答案。 一种变体是使用向量嵌入,而不是搜索 API 的传统“倒置索引”。

向量嵌入对单词之间的语义关系进行编码,从而可以更深入地理解用户的问题以及知识库中的文档。 传统的搜索方法更接近基于关键词。 图 1 中的传统搜索返回的结果与关键字相关,但不足以回答问题。 现有的搜索 API 很简单; 向量嵌入可以给出更好的答案。

  • 变体#2:向 LLM 传递更多背景信息

这篇文章中的示例 LLM 提示是通用的,适用于任何对话。 提示可以通过附加上下文(例如用户配置文件)进一步增强。 可以指示LLM“用户是黄金会员”、“用户是成年人”或“用户位于”。 我希望聊天平台提供商能够提供一种方法来做到这一点,尽管这需要一些工作才能使解决方案构建者轻松集成。

4、结束语

对话式搜索是一种令人兴奋的模式,易于设置且前景广阔。 我希望这篇文章对您理解该模式有所帮助。 写这篇文章帮助我巩固了我的观点!


原文链接:对话式搜索简明教程 - BimAnt

基于LLM(Language Model)的测试效率提升主要体现在以下几个方面: 1. 自动化测试:LLM的出现使得测试工程师能够利用自然语言的特点,快速生成测试用例和测试脚本。相比传统的手动编写测试用例,LLM能够极大地减少测试人员的工作量和时间成本,提高了测试效率。 2. 敏捷开发:LLM能够快速学习和适应不同的测试场景和需求,根据不同的自然语言输入生成相应的测试用例和脚本。这种灵活性使得测试人员能够更加快速地响应项目变更,及时执行测试,提高了敏捷开发的效率。 3. 覆盖率提升:LLM可以根据自然语言输入,自动生成全面且具有一定逻辑性的测试用例。相比人工编写测试用例,LLM能够更好地覆盖不同功能模块的边界条件和异常情况,从而提高测试的覆盖率。 4. 功能验证加速:LLM通过自动生成测试用例和脚本,可以快速验证新功能的正确性和稳定性。测试人员只需输入相应的功能描述,LLM会自动生成相应的测试用例,从而加快了功能验证的速度。 5. 测试回归:LLM可以根据自然语言输入,快速生成全面的测试脚本,以及对应的测试数据和预期结果。这种自动化回归测试能够提高测试的复用性和可维护性,降低了回归测试的工作量,提高了回归测试的效率。 综上所述,基于LLM的测试效率提升主要体现在自动化测试、敏捷开发、覆盖率提升、功能验证加速和测试回归等方面。LLM的应用能够帮助测试人员更快速、全面地进行测试工作,提高测试效率,降低测试成本。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值