新闻详情

新闻详情

首页 / 资讯中心 / 详情

腾讯数字人+大模型知识引擎:企业级智能客服架构设计与RAG落地实践

发布时间:2026/9/25 21:37:55来源:尧图网络
腾讯数字人+大模型知识引擎:企业级智能客服架构设计与RAG落地实践
1. 从两个产品说起数字人和知识引擎到底在解决什么问题第一次接触腾讯这套数字人加知识引擎的组合是在一个企业智能客服的升级项目里。当时客户的需求很直接现有的客服系统回答太机械用户问三句就转人工人工成本压不下来而且知识库更新一次要等两周才能生效。我们评估了几条路线最后选了数字人做交互层、大模型知识引擎做认知层的方案。跑下来最大的感受是这两块东西单独看都不新鲜但拼在一起之后产生的效果跟传统方案完全不是一个量级。先把概念说清楚。腾讯数字人本质是一套融合了语音识别、语音合成、自然语言理解、面部驱动和实时渲染的交互系统它解决的是机器怎么像一个真人一样跟你对话这个问题。而大模型知识引擎解决的是另一个问题机器怎么准确理解你的问题并从海量资料里找到对的答案。前者管面子后者管里子。很多项目失败就失败在只做了面子工程数字人形象很漂亮但一问三不知或者答非所问。这套组合适合谁参考我梳理了一下主要是三类人一是做企业级智能客服、智能导览、虚拟主播的技术负责人二是想在自己的产品里嵌入对话能力的开发者三是做AIGC应用落地、需要把大模型能力产品化的团队。不管你是哪一类理解这两个产品各自的边界和它们之间的接口比单纯会调API重要得多。关键词里反复出现的AIGC、腾讯混元大模型、向量数据库其实构成了这套方案的底层骨架。混元提供基础的语言理解和生成能力向量数据库负责知识的存储和检索AIGC则是最终呈现出来的内容形态。这三者怎么协同后面会拆开讲。2. 整体架构设计为什么是数字人知识引擎这个组合2.1 分层解耦的设计思路我见过不少团队一上来就想做一个全能数字人把语音、理解、检索、生成、渲染全塞在一个服务里。这种做法在demo阶段跑得通一旦上生产就崩。原因很简单每一层的性能特征、更新频率、扩展需求都不一样。语音合成要低延迟知识检索要高召回大模型生成要控成本渲染要保帧率。耦合在一起改一处动全身。腾讯这套方案的分层逻辑是清晰的。最底层是混元大模型提供通用的语言能力底座往上一层是知识引擎它内部又分了文档解析、向量化、向量数据库存储、检索召回、重排序几个环节再往上是对话管理层负责多轮上下文、意图识别、话术编排最上层才是数字人交互层处理语音输入输出和形象驱动。这种解耦带来的直接好处是知识库更新不影响数字人形象换个大模型版本不用动检索逻辑数字人换个形象也不用重新训练知识。我在项目里就吃过耦合的亏早期把检索逻辑写死在对话服务里后来想换向量数据库改了整整一周。2.2 为什么知识引擎必须配向量数据库这是很多人问得最多的问题。传统关键词检索不行吗行但不够。用户问你们的产品怎么退款知识库里写的是售后服务流程说明关键词匹配可能一条都命中不了。向量数据库的作用是把文本转成高维向量用语义相似度来找答案而不是靠字面匹配。具体来说知识引擎会先把文档切分成块每块通过嵌入模型转成一个向量存进向量数据库。用户提问时问题也转成向量然后在数据库里做近似最近邻搜索找出语义最接近的几个知识块。这个过程就是常说的RAG检索增强生成。检索出来的内容作为上下文喂给大模型让它在限定范围内生成答案既保证了准确性又避免了模型胡编。向量数据库的选型上市面上有Milvus、腾讯自家的向量检索服务等。选哪个主要看数据规模、查询并发和运维成本。中小规模用托管服务省心大规模自建要考虑分片和索引调优。关键词里出现的milvus 向量数据库和向量化和向量数据库说明这块是大家关注的重点后面会专门展开。2.3 数字人这一层的技术选型考量数字人不是简单放个视频循环播放。真正的交互式数字人要做到用户说话时它能听听完能理解理解完能答答的时候口型、表情、动作要跟语音对齐。这里面最容易被低估的是实时性。语音识别有延迟大模型生成有延迟语音合成有延迟渲染还有延迟这些延迟叠加起来如果超过两秒用户体验就崩了。所以数字人这一层的设计核心是流式处理。语音识别边听边出文字大模型边生成边吐token语音合成边收文字边出声渲染边收音频边驱动口型。每一环都不能等上一环完全结束才开始。这个思路跟传统请求-响应模式完全不同是流式的管道。我在调这块的时候光是处理各环节的缓冲和打断逻辑就花了不少时间用户中途插话怎么办、生成到一半要取消怎么办都是坑。3. 核心细节拆解知识引擎内部到底怎么运转3.1 文档解析与切分垃圾进垃圾出知识引擎的效果七成取决于文档处理质量。我见过太多团队直接把PDF丢进去就完事结果检索出来的内容全是页眉页脚和乱码。文档解析这一步要做的事情包括格式识别、版面分析、表格提取、图片OCR、去噪清洗。切分策略更是关键。切太大一个块里混了好几个主题检索出来噪音多切太小语义不完整模型拿到半句话没法用。常见的做法是按语义边界切比如按段落、按标题层级同时控制单块长度在300到800字之间。有个技巧是重叠切分相邻块之间保留10%到20%的重叠内容避免关键信息正好卡在切分点上被割裂。提示切分参数没有万能值必须根据你的文档类型调。技术文档适合按标题切客服问答适合按问答对切法律合同适合按条款切。上线前一定要拿真实问题做召回测试。3.2 向量化选对嵌入模型比调参重要向量化就是把文本变成一串数字。这串数字的质量直接决定了检索准不准。嵌入模型的选择要考虑几个维度中文语义理解能力、向量维度、推理速度、是否支持长文本。维度不是越高越好。768维和1536维在实际检索效果上可能差不了多少但存储和计算成本差一倍。我一般建议先用中等维度的模型跑基线效果不够再往上加。另外要注意问题和文档必须用同一个嵌入模型用A模型编码文档、用B模型编码问题检索结果会惨不忍睹这个坑我踩过。向量化的批量处理也有讲究。一次性把几万条文档丢进去编码内存容易爆。合理的做法是分批处理每批几百到一千条同时做好失败重试和断点续传。编码完成后的向量要连同原始文本、元数据一起入库元数据包括来源、时间、分类等后面做过滤检索时用得上。3.3 向量数据库的索引与检索调优向量数据库的核心是索引结构。常见的有扁平索引、倒排文件索引、分层可导航小世界图等。扁平索引召回率最高但速度慢适合小数据集图索引速度快、召回率也不错是生产环境的主流选择。检索的时候有两个参数要调召回数量和相似度阈值。召回数量太少可能漏掉正确答案太多噪音进来干扰模型。一般先召回10到20条再用重排序模型精排取前3到5条喂给大模型。相似度阈值用来过滤明显不相关的结果低于阈值的直接丢弃。参数作用常见取值调整方向召回数量初筛候选集大小10-20召回率低就调大相似度阈值过滤不相关结果0.6-0.8噪音多就调高重排序数量精排后保留条数3-5上下文超限就调小索引类型决定检索速度与精度图索引数据量大优先图索引3.4 重排序被低估的效果放大器很多人做完向量检索就直接把结果喂给大模型了忽略了重排序这一步。向量检索是粗筛它基于语义相似度但相似不等于相关。重排序模型会对候选结果做更精细的相关性打分把真正有用的排到前面。实测下来加了重排序之后答案准确率能提升十几个百分点。代价是增加一点延迟但这点延迟换来的是用户体验的质变非常值。重排序模型也有大小之分小的快但精度一般大的慢但准根据你的延迟预算选。4. 数字人交互层的实现要点4.1 语音链路的延迟控制数字人交互的语音链路是麦克风采集、语音识别、文本处理、大模型生成、语音合成、音频播放加口型驱动。这条链路上每一环都有延迟加起来很容易超过三秒。控制延迟的核心思路是并行和流式。语音识别用流式模式用户还在说话的时候就开始出中间结果说完立刻给最终结果。大模型生成用流式输出第一个token出来就开始往语音合成送不用等整段生成完。语音合成也用流式收到一段文字就合成一段音频。这样整体感知延迟能压到一秒以内。打断处理是另一个难点。用户说到一半突然插话系统要能立刻停止当前的语音播放和生成切换到新的输入。这需要一套状态管理机制标记当前会话的状态收到打断信号时清理管道里的缓冲数据。这块逻辑不复杂但容易出bug建议单独写测试用例覆盖。4.2 口型与表情的驱动逻辑数字人的口型要跟语音对齐靠的是音素到视素的映射。语音合成的时候会输出音素序列和时间戳渲染引擎根据这些信息驱动嘴部模型。表情则根据文本情感分析的结果来调比如检测到疑问句就微微挑眉检测到高兴的内容就嘴角上扬。这里有个经验口型精度不用追求极致用户对轻微的不同步其实不敏感但对明显的延迟很敏感。与其花大力气做高精度口型不如先把同步延迟压下来。另外表情变化要克制过度夸张的表情反而显得假自然微小的变化更真实。4.3 多轮对话的上下文管理数字人不是一问一答就结束用户会追问、会切换话题、会指代前文。这要求对话管理能维护上下文。做法是把最近几轮的对话历史拼进大模型的输入里但要注意长度限制超了要截断或摘要。指代消解是个细节。用户说它多少钱这个它指什么需要从上下文里推断。简单的做法是把上一轮提到的实体带进当前轮的提示里让模型自己判断。复杂场景可能需要专门的指代消解模块。我在项目里发现把最近三轮的问答对完整保留再往前做摘要效果和成本比较平衡。5. 实操过程从零搭一套可用的系统5.1 环境准备与依赖梳理动手之前先把依赖理清楚。核心组件包括大模型服务、嵌入模型服务、向量数据库、语音识别服务、语音合成服务、数字人渲染引擎。这些可以是腾讯云上的托管服务也可以部分自建。如果走托管路线开通服务、拿密钥、配网络访问权限就行。如果自建要考虑GPU资源、存储、网络带宽。嵌入模型和重排序模型对GPU有要求向量数据库对内存和磁盘IO有要求。我建议先用托管服务跑通流程验证效果之后再评估哪些环节值得自建降本。5.2 知识库构建的完整流程第一步是文档收集。把散落在各处的资料汇总包括产品手册、FAQ、历史工单、培训材料。注意版权和隐私敏感信息要脱敏。第二步是解析清洗。用解析工具把各种格式转成纯文本去掉无关内容。这一步建议人工抽检机器解析难免出错。第三步是切分。按前面说的策略切块控制长度和重叠。第四步是向量化。批量调用嵌入模型得到向量。第五步是入库。把向量、原文、元数据一起写进向量数据库建好索引。第六步是测试。准备一批真实问题看召回结果对不对不对就回去调切分和检索参数。# 知识入库的简化示例 from embedding_client import embed_batch from vector_db import VectorDB db VectorDB(collectionknowledge_base) def ingest_documents(chunks): batch_size 500 for i in range(0, len(chunks), batch_size): batch chunks[i:ibatch_size] texts [c[text] for c in batch] vectors embed_batch(texts) records [ { vector: v, text: c[text], source: c[source], category: c[category] } for v, c in zip(vectors, batch) ] db.insert(records) print(f已入库 {ilen(batch)} 条)5.3 对话服务的串联知识库建好之后把对话服务串起来。用户输入进来先做意图识别判断是闲聊还是知识问答。闲聊走通用大模型知识问答走RAG流程。RAG流程是问题向量化、检索、重排序、拼提示词、调大模型生成。提示词的设计很关键。要明确告诉模型只根据提供的资料回答资料里没有就说不知道不要编造。这个约束能大幅降低幻觉。同时要求模型输出简洁因为后面还要做语音合成太长的回答用户听不下去。5.4 数字人接入与联调最后把数字人接上。语音识别把用户的话转成文字送给对话服务对话服务返回答案语音合成把答案转成音频渲染引擎根据音频驱动数字人。联调阶段重点测三件事延迟、打断、异常。延迟用埋点测每一环的耗时找出瓶颈。打断测用户中途插话系统能不能正确响应。异常测网络抖动、服务超时、空结果这些边界情况。这三块测扎实了系统基本就能上生产了。6. 常见问题与排查技巧实录6.1 检索不准的排查路径检索不准是最常见的问题。排查顺序是先看切分再看嵌入最后看检索参数。切分问题表现为召回的内容语义不完整解决办法是调整切分策略。嵌入问题表现为语义相近的问题召回结果差异大解决办法是换嵌入模型或检查是否用错了模型。检索参数问题表现为该召回的没召回或召回一堆噪音解决办法是调召回数量和阈值。我整理了一个速查表现象可能原因排查方法解决方向召回内容不完整切分点割裂语义检查切分边界调整切分策略加重叠相似问题结果差异大嵌入模型不适配对比不同模型换中文优化模型该召回没召回召回数量太小看召回列表调大召回数量噪音太多阈值太低看相似度分布调高阈值加重排序答案答非所问提示词约束不够看模型输入强化提示词约束6.2 数字人延迟高的优化手段延迟高先定位是哪一环慢。语音识别慢就换流式模式大模型慢就换更小的模型或减少上下文语音合成慢就用流式合成渲染慢就降分辨率或减特效。多数情况下瓶颈在大模型生成因为token是一个一个吐的。优化手段包括用更快的模型、限制输出长度、把常见问题做成缓存直接返回。缓存是个好东西。高频问题第一次走完整流程把答案缓存起来下次同样的问题直接返回延迟从秒级降到毫秒级。缓存要设过期时间知识更新后旧缓存要失效。6.3 大模型幻觉的抑制幻觉就是模型编造不存在的信息。抑制手段有几个一是提示词里明确要求只根据资料回答二是检索结果里带上来源让模型引用三是生成后做校验检查答案里的关键信息是否在检索结果中出现过四是设置兜底话术模型不确定时统一回复这个问题我需要转人工。实测下来提示词约束加来源引用能解决大部分幻觉。剩下的靠校验和兜底。不要指望完全消除幻觉能做到可控就够了。6.4 知识更新的处理知识库不是建完就不管了。业务在变知识要跟着更新。更新策略有两种全量重建和增量更新。全量重建简单但耗时适合数据量小或更新频繁的场景。增量更新只处理变化的文档快但要做去重和版本管理。我的建议是建一套文档版本管理机制每个文档有唯一ID和版本号更新时对比版本只处理变化的。删除文档时同步删除对应的向量。这样知识库始终跟业务保持一致。7. 一些实操心得和踩坑记录做这类项目技术选型其实不是最难的部分难的是把各个环节的细节磨到位。我分享几个印象深的坑。第一个坑是嵌入模型和检索模型不匹配。早期为了省事文档用了一个模型编码问题用了另一个结果检索效果差得离谱。后来统一了模型效果立刻正常。这个教训是向量化这条链路上编码器和检索器必须配套。第二个坑是切分粒度一刀切。一开始所有文档都用同样的切分参数结果技术文档切得稀碎FAQ又切得太大。后来按文档类型分别配置切分策略效果好了很多。没有万能参数只有适配的参数。第三个坑是忽略冷启动。系统刚上线时知识库内容少用户问的问题很多都召不回。这时候要有兜底策略召不回就转通用大模型或转人工不能让用户对着数字人干瞪眼。随着知识库积累召回率会慢慢上来。第四个坑是数字人形象过度设计。客户一开始想要一个特别炫酷的形象结果渲染开销大延迟高用户体验反而差。后来换了个简洁的形象延迟降下来用户满意度反而提升了。形象是为交互服务的不要本末倒置。关于成本这也是绕不开的话题。大模型调用按token计费向量数据库按存储和查询计费语音服务按时长计费。用量大的时候成本很可观。控制成本的手段包括缓存高频问答、限制上下文长度、用更小的模型处理简单问题、定期清理无用知识。我一般会做一个成本监控看板实时看各项消耗超预算就告警。最后说一个关于效果评估的事。很多人做完系统不知道好不好因为没有评估标准。建议建一套评测集包含真实问题和标准答案定期跑一遍看准确率、召回率、延迟这些指标的变化。没有度量就没有优化这是我一直坚持的原则。评测集要持续补充把线上发现的新问题加进去让评估越来越贴近真实场景。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

如何为 MaaEnd 贡献代码:从搭建环境到提交第一个 PR 的完整指南 2026/9/25 22:13:28

如何为 MaaEnd 贡献代码:从搭建环境到提交第一个 PR 的完整指南

如何为 MaaEnd 贡献代码:从搭建环境到提交第一个 PR 的完整指南 【免费下载链接】MaaEnd MaaEnd 终末地小助手:基于视觉 AI 的「明日方舟:终末地」自动化工具 项目地址: https://gitcode.com/gh_mirrors/maa/MaaEnd MaaEnd 终末地小助…

阅读更多 →
邹平省心的新房装修设计公司实力与用户口碑 2026/9/25 22:13:20

邹平省心的新房装修设计公司实力与用户口碑

淄博业之峰家园装饰有限公司是淄博本土深耕家装行业的正规服务商,成立24年来始终立足淄博本地需求,为各类家装业主提供全流程的品质装修服务,其核心定位是做淄博人值得托付的良心家装品牌,主营别墅装修、新房装修、老房改造、大平…

阅读更多 →
YouTube 视频推广怎么做 内容优化广告和服务如何区分 2026/9/25 22:13:20

YouTube 视频推广怎么做 内容优化广告和服务如何区分

选择适合目标的 YouTube 推广方式的数据分析和 96SMM 产品支持 先确定观看、订阅还是业务目标,再选择内容优化、YouTube 或 Google Ads、合作推广或具体第三方项目。不同方式的数据和交付必须分开报告。 本文按“明确问题、完成内容、记录数据、诊断原因、选择支持、…

阅读更多 →
自媒体商用配图,有哪些性价比不错的在线修图工具 2026/9/25 22:12:41

自媒体商用配图,有哪些性价比不错的在线修图工具

自媒体配图早已告别简单拼图、美颜修图的基础需求。如今公众号、小红书、短视频封面、图文推文等场景,都需要高频产出高清、统一风格、可商用的视觉素材。多数自媒体创作者没有专业设计基础,也不愿承担高额软件年费、素材版权费用。在线修图工具无需下载…

阅读更多 →
Atlas 300V推理卡实战:YOLO模型转换与部署全流程 2026/9/25 22:12:12

Atlas 300V推理卡实战:YOLO模型转换与部署全流程

最近不少人在后台问同一个问题:Atlas 300V 24G到底是不是运算加速卡,它和常见的GPU显卡有什么区别?还有人直接说想在Atlas上部署YOLO,但模型转换、算子支持、推理流程这些地方被卡得一头雾水。我把这两件事放到一起聊,…

阅读更多 →
Java开发必备的10个编码习惯,第7个最易忽略 2026/9/25 22:12:11

Java开发必备的10个编码习惯,第7个最易忽略

在Java开发中,代码写出来容易,写好却难。真正拉开工程师水平的,往往不是对框架的熟练度,而是那些日复一日的编码习惯。下面这10个习惯,看似基础,却能显著提升代码质量。尤其是第7个,很多人直到线…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉