一、总体技术架构剖析
腾讯文档(https://docs.qq.com/)AI 大模型助手应用,如下图所示:
腾讯文档的 AI 大模型助手总体架构如下图所示,包括6大模块:AICopilot、AIServer、AIAgent、AIEngine、AIOperation、AIExtension。AICopilot 模块:提供 AI 侧边栏对话功能,负责意图识别、对话管理、缓存及存档等功能。AIServer 模块:提供各类别定制化的浮层助手服务。AIAgent 模块:作为 AI 智能代理,集成并提供各类别的文档处理工具,由上层服务调用识别意图后驱动。AIEngine 模块:作为文档 AI 引擎,统一抽象并封装各项 AI 能力(比如:文生文、文生图、语音转写、语音识别、图像识别、嵌入式 AI 等),实现能力间无感切换。AIOperation 模块:负责文档 AI 灰度发布策略、隐私保护措施以及运营操作。AIExtension 模块:扩展 AI 服务,支持AI应用落地所需的支持能力,比如:文本搜索、图片搜索、Python 执行环境等。二、问答场景技术架构剖析
针对 Word、PPT、Sheet、思维导图、数据收集表及知识库等多种内容形态的问题解答。AI 大模型应用的核心挑战在于建立基础的问答系统架构。攻克这一难题的关键,在于如何使 AI 大模型精准掌握并理解各类文档的领域知识内容。两种解决方案:
一种:领域知识通过微调(Fine-tuning)记忆到大模型中。二种:通过 Prompt 的方式把领域知识即时给到大模型。- 用户文档信息本质上是用户个人数据的整合,主要用于个性化服务。
- 由于用户文档常更新且注重时效性,无法每次变更都重新训练模型。
- 同时出于隐私保护原则,用户数据不能用于模型训练。因此,针对每位用户单独训练模型的方案并不现实可行。
第一、文档加载:定义统一的 Document 数据模型,将实现默认典型的数据源加载实现,业务方也可以根据接口自定义实现自身所需文档数据源。第二、文档分片:大模型上下文大小有一定限制,需要将大量数据进行分割操作。第三、文档 Embedding:Embedding 过程将对应文本向量化,以提供更好的语义表达。第四、文档向量存储:使用向量数据库存储文档向量数据。第五、文档召回:根据用户输入的问题召回和问题最相关的文档信息。第六、问题解答:根据召回文档资料 + 用户输入问题提供给大模型进行知识问答。