论RAG技术对智能数字人对话的革新与优化方案

0 评论 2521 浏览 13 收藏 17 分钟

大模型的问世,对许多行业带去了深远的影响,比如数字人行业。而通常应用于大模型中的RAG技术,也可以为数字人业务带去变化和影响。这篇文章里,作者就做了讨论与分析,一起来看。

文档目录预览

  1. 为什么需要用LLM重塑数字人行业
  2. 什么是RAG技术
  3. 如何在实际业务中应用该技术(业务背景、业务目标、回收指标、产品框架、数据处理流程)
  4. 如何对数字人RAG模块进行评估和优化
  5. 直播场景下RAG回复的频率限制

一、为什么需要用LLM重塑数字人行业

在上一篇文章当中,我提到了数字人行业发展同质化竞争情况,市面上所有的数字人她的外在形象、口型合成、直播背景模版等等,都已经趋于同质化。

技术的不断进步可能在某些关键时刻彻底改变行业格局。例如,一些曾经在技术上占据优势地位的企业,可能因为新技术的出现而迅速失去竞争优势。如果这些企业不能及时适应,就会面临被竞争对手超越的风险。这也给了小型和初创企业赶超的机会。如何设计和运营,想清楚用它干什么,让软件工具代替人工发挥应有的价值,决定了他的商业化的程度。

自从大型语言模型(LLM)问世以来,它的影响被认为与几十年前互联网对各行业的影响相当。LLM的应用被视为对现代社会各个领域进行了全面的改造。其中也包含了数字人,一个带着人类面具外壳的AI智障,乘着大模型的风,使其变得更具互动能力。

二、什么是RAG技术

RAG模型的核心思想是结合信息检索和文本生成来解决复杂的自然语言处理任务。具体而言,RAG模型首先利用检索式技术从大规模语料库中检索相关文本片段或知识,并将这些文本片段作为上下文输入到生成式模型中。然后,生成式模型使用这些上下文信息来生成响应、答案或文本。

RAG模型的优点在于它能够利用大规模的外部语料库来增强生成式模型的能力,从而提高模型在开放域任务中的性能。

三、如何在实际业务中使用该技术?

1. RAG应用的业务背景是什么?-对销售领域深度对话数字人的渴望

数字人直播互动能力不足的问题;参考文章:

https://www.woshipm.com/ai/6002396.html

对于高客单价商品,尤其美妆、家电等垂直领域,新用户如果不是因为提前对产品有了解,提前对品牌有了解,是不太可能通过数字人直播进行下单的。因为产生新的购买行为,需要在直播间进行多轮的互动来进行了解一个商品,但是目前很多数字人厂商提供不了深度对话的AI数字人直播软件。那这个时候,利用数字人在非高峰期直播,提高品牌复购,让已经了解品牌的用户用合适的价格参与活动,也可以帮助品牌达到目标。

2. RAG需要完成哪些业务目标

借助商家和品牌商品数据以及竞品数据接入智能问答库,方便直播间用户进行复杂问询时,数字人可以提供更加精准的、个性化的且真实的回复。同时在构建智能回答机器人的同时还需要注意些业务上的逻辑:

  • 回答的准确性和语言风格:数字人在回复过程中要保证内容的准确性,以及符合口语化的表达。
  • 回答的品牌风险规避:数字人不回答或不提及或模糊提及 竞品品牌词和产品内容。
  • 回答频率克制:多弹幕/重复弹幕加持下,数字人需要控制回复频率,保证直播间的弹幕回复频率和速度的合理性,切勿造成刷屏现象。
  • 不明确回复内容:数字人对于不知道的问题需要收集起来,反馈业务进行问答库更新。
  • 合规检测:对LLM输出的答案需要通过合规检测。

3. RAG应用的检测数据指标

1)用户体验&直播间效果指标

  • 响应时间:数字人回答问题的平均响应时间。
  • 弹幕有效回复率:收集弹幕内容,对弹幕进行有效提问分类,并计算数字人对有效弹幕的消息回复率。

2)准确度和性能相关指标

  • 准确率:数字人回答正确的次数与总回答次数的比例。
  • 召回率:在所有应该被数字人正确回答的问题中,实际上被正确回答的比例。(召回率特别重要,当关注的重点是确保所有正例都被识别出来时,例如在疾病筛查或欺诈检测中,遗漏一个正例的代价可能非常高)
  • 答案相关性:这个指标强调生成的答案需要与提出的问题直接相关。
  • 忠实度:这个指标强调模型生成的答案必须保持对给定上下文的忠实,确保答案与上下文信息一致,不偏离或矛盾。这方面的评估对于解决大型模型中的幻觉问题至关重要

4. 产品设计框架

5. RAG检索库的构建流程

流程简述:由企业业务人员,在直播软件后台上传pdf/word文档,并进行文本的chunk处理,上传的数据会由「嵌入模型-Embedding Model」进行向量化的处理,这个过程就是将文本内容转化为计算机理解的语言。转换后,再存储在一个特定的数据库中,这个数据库通常被称之为「向量数据库-Vector Database」

详细构建流程:

Step1-准备数据集

数据集的来源:商家、品牌和企业用户本身沉淀下来的商品信息;这些数据可以是从互联网、数据库、文档集合或其他来源获取的文本。

Step2-文本预处理

为了避免数字人出现“一本正经地胡说八道”数据收集过程中一定要减少无效信息、冗余信息和错误信息的筛选,做好数据清理,以减少回复内容的幻觉,其次可以对文本数据进行预处理,包括分词、去除停用词、标点符号和特殊字符的去除、转换为小写等。可以使用自然语言处理工具库,如NLTK(Natural Language Toolkit)或spaCy来执行这些预处理步骤。

Step3-Chunking文本的分块与分段

  • 分块的目的是将较长的文本段落或文档划分为更小、更容易处理的部分。
  • 分块的方式可以根据任务需求和数据特点进行选择。例如,可以根据句子的边界进行分块(sentence chunking),也可以根据段落的边界进行分块(paragraph chunking)。

其次,输出处理过程中,文本切割的粒度也需要合理考量。

粒度过大

  • 如果将文本划分为过大的块,可能会导致检索的精度下降。因为模型在执行检索时,需要将查询文本与语料库中的文本进行比较,如果文本块太大,可能会包含过多的不相关信息,导致检索结果不准确。
  • 对于生成阶段,粒度过大的文本块可能会限制模型生成的多样性和灵活性,因为模型只能在较大的文本块中寻找生成的候选内容。

粒度过细

  • 如果将文本划分为过细的块,可能会导致检索的效率下降。因为模型需要处理更多的文本块,这可能会增加计算成本和时间成本。
  • 此外,对于生成阶段,粒度过细的文本块可能会导致模型难以捕捉到文本之间的相关性和上下文信息,从而影响生成结果的质量和连贯性。

当然分段方式可以有不同处理粒度,以寻求响应速度和查询准备度的最佳平衡点。

Step4-构建索引

构建索引是为了实现文本数据的快速检索和查询。在构建搜索库时,索引是一种非常有效的数据结构,它可以大大提高搜索和检索的速度和效率。以便快速地定位和访问数据。通过索引,可以在常数时间内(或接近常数时间)找到特定文本或文本片段,而不需要遍历整个数据集。

优点:减少搜索时间&&提高查询效率&&支持复杂查询&&节约资源和成本,可以有效提高系统的性能和可拓展性。

Step5-Embedding嵌入式模型训练

  • 使用准备好的文本数据集对RAG模型进行预训练,以学习文本的表示和语义信息。
  • 选择合适的预训练任务和模型架构,如BERT、GPT等,并根据任务需求进行微调。

将文本或知识片段转换为连续的向量表示形式。这种向量表示可以被用来度量文本之间的相似度,从而用于检索阶段。

具体来说,当RAG模型执行检索时,它会将查询文本(比如问题或者主题)和语料库中的文本进行比较,以找到最相关的文本片段。为了进行比较,模型需要将这些文本转换成向量形式。这个过程就是“向量化Embedding”。

Step6- 检索模块/生成模块构建,完成RAG知识库的搭建

设计和实现用于检索的模块,该模块将查询文本与索引中的文本数据进行比较,并返回最相关的文本片段。以使用向量化Embedding和相似度匹配等技术来实现检索模块。将检索模块和生成模块集成到一起,以构建完整的RAG搜索库。

5. 如何对数字人RAG模块进行评估和优化

对建立的RAG搜索库进行评估和优化,包括评估检索的准确性和生成的质量,并根据反馈进行必要的调整和改进。

1)数字人回复不准确问题:回复的答案出现幻觉和断层

调整方式1:提高检索内容与查询之间的相关性,对于文本分段chunk过程重新调整颗粒度

调整方式2: 可能是缺乏对LLM模型的预训练,或者说模型本身的参数不足、在理解和推理上存在固有缺陷,单纯用RAG技术也无法提高模型的输出能力。选择优秀模型的同时,可以用数据库对LLM模型进行预训练

2)提升召回率,用户问的问题,无法检索到相关内容,导致缺乏上文

调整方式. 由于长文本或者数据量太大导致响应的时间过长,或者导致检索不到,可以通过压缩不想管上下文、突出关键段落,减少上下文长度来提高RAG性能

3)减少有害和偏见性内容

调整方式1 :在构建训练数据集时,进行数据清洗和筛选,删除或标记有害和偏见性内容的样本。这可以通过人工审核或自动化技术来实现,以确保训练数据集的质量和健康性

调整方式2:在生成阶段,可以通过设置输出限制来限制模型生成可能有害或偏见性的内容。例如,可以限制生成内容的长度、语法结构或词汇选择,以减少可能导致问题的内容。

6. 直播场景下RAG回复的频率限制

在直播场景下,我们额外需要对直播间获取的弹幕信息,做文本的二次处理,避免出现以下问题。

  • 数字人对无效弹幕的回复-(如何判断弹幕的有效性)
  • 数字人对重复弹幕的重复回答-(如何提高直播间的回复体验)

弹幕有效性判断

  • 使用机器学习模型对弹幕进行分类,以区分有效和无效的弹幕。可以构建分类模型,对弹幕进行标记,如是否含有恶意词汇等
  • 结合规则引擎和机器学习模型,综合考虑多种因素对弹幕进行有效性判断。例如,设置阈值来限制相同内容的重复弹幕,或者根据弹幕内容的语义相似度来判断是否为无效刷屏弹幕。

弹幕去重处理

  • 在语义理解过程中,首先对弹幕进行去重处理,以消除相同或相似内容的重复弹幕。可以利用文本相似度计算方法,比如基于词向量的相似度或者编辑距离等,来进行弹幕去重。
  • 在回复用户时,检查历史记录,避免重复回答相同或相似的弹幕内容。可以维护一个已回复的弹幕列表,并在回复之前检查是否存在相同或相似的弹幕。

语义理解与情感分析

  • 利用大型语言模型进行语义理解和情感分析,以更好地理解弹幕内容的含义和情感倾向。通过分析用户的情绪和意图,可以更有针对性地回复弹幕,提高回复的准确性和合理性。
  • 对于无效刷屏弹幕,可以使用情感分析技术来识别其中的恶意、负面或无意义的内容,并选择不回复或以适当方式回复。

四、最后的话

这篇文章我们探讨了RAG在数字对话领域的应用流程,那相应的,在智能客服场景下,不出其右,RAG同样可以重新塑造这一领域的用户交互体验;

希望对你有所帮助和启发。如果你有任何想法、疑问或者想要分享的经验,请随时留言交流。

祝你在AI应用的探索之路上充满收获和进步。

本文由 @裴哲琦 原创发布于人人都是产品经理。未经作者许可,禁止转载

题图来自Unsplash,基于CC0协议

该文观点仅代表作者本人,人人都是产品经理平台仅提供信息存储空间服务

更多精彩内容,请关注人人都是产品经理微信公众号或下载App
评论
评论请登录
  1. 目前还没评论,等你发挥!