大模型基础应用框架 (ReACT\SFT\RAG) 创新及零售业务落地
零售技数中心推出融合 Agent、SFT 与 RAG 的大模型基础应用框架,帮助业务完成大模型微调、部署和应用,落地场景。本文为 2023 京东零售技术年度盘点深度文章系列的第 5 篇(共 11 篇),欢迎持续关注。
一、前言
2023 年,大语言模型以前所未有的速度和能力改变我们对智能系统的认知,成为技术圈最被热议的话题。但“百模大战”终将走向“落地为王”,如何将大语言模型的强大能力融入实际业务、产生业务价值成为致胜关键。
在零售场,大模型应用面临的核心挑战包括以下三点:
(1)模型缺乏零售领域的专业知识,建设业务专属大模型训练成本高
(2)模型内容生产伴有幻觉,而检索海量业务信息又缺乏有效技术,检索成本高
(3)在商家问答等多流程复杂业务场景下,模型缺乏自主规划能力,需要大量人工干预
为了应对上述三点挑战,九数算法中台推出了一整套大语言模型应用解决方案,一种融合基于 ReAct 框架的 AI Agent、SFT(指令微调)与 RAG(检索增强生成)技术的应用框架,不仅赋予大模型学习领域知识的能力,还显著提升了模型的自主决策和信息处理精确度,为业务人员高效落地大模型的微调、部署和应用提供了落地保障。
九数算法中台大模型基础应用框架
二、高效微调(SFT)
通用大模型虽然在处理通用知识方面表现出色,但缺乏针对零售垂直领域的知识理解。为此,需要引入经过人工标注的领域数据,对已完成预训练的通用大模型进行微调,从而得到具有该领域知识的零售垂域大模型。这个过程就是“有监督微调(Supervised Fine-Tuning)”,简称 SFT。
【2.1 SFT 流程介绍】
SFT 的流程包括数据生产、模型选型、模型微调、效果验证几个环节,每一步都存在相应的技术挑战:
(1)数据生产:创建用于微调预训练模型的高质量数据集,数据集质量对模型训练的效果至关重要。在零售场,京东沉淀了丰富的领域数据,比如电商营销策略、消费者行为数据、商品信息数据等,这些数据往往格式不统一、噪声多,如何以这些业务数据为基础,高效构建可用于微调训练的数据集,是数据生产环节的痛点。
(2)模型选型:根据对中文的支持程度、参数量级、性能等选择合适的预训练模型作为微调的起点。高速发展的开源社区为业务方提供了大量可供选择的预训练模型,但不同模型擅长不同任务,需要实验对比模型表现。而开源模型存在样本标注、模型标准不统一的问题,将开源方案应用在企业环境中也需要一定的适配工作量,给业务方带来了较高的模型选型成本。
(3)模型微调:使用准备好的数据集对选定的预训练模型进行微调。训练时需要设置适当的学习率、批次大小和训练周期等参数,同时监控模型的性能,如损失函数和准确率等指标。在算力资源紧缺的背景下,不少业务方面临算力资源不足的问题,如何用最小的算力资源实现最优的模型训练性能至关重要。
(4)效果验证:使用独立的验证数据集对模型进行测试,评估模型训练效果。关键是建立系统的模型评估指标,并选择合适的方法高效进行效果评估。
SFT 流程介绍
【2.2 九数算法中台 SFT 框架的优势】
九数算法中台通过自研的 SFT 高效微调框架,从高质量数据集的构建到灵活的模型选择,训练过程中的算力优化,到效果验证,都提供了创新的解决方案,确保了 SFT 技术的高效实施。主要优势如下:
(1)数据生产:通过使用开源基座大模型能力,构建通用大模型数据增强(LLM Data Augmentation,简称 LDA)工具,使用场景覆盖 Self-Instruct、Query 扩展,Query2Doc,Doc2Query 等。帮助业务方高效创建可用于 SFT 训练的标准样本集。
(2)模型选型:集成 15 个左右的主流 LLM 模型(如言犀、ChatGLM,Llama 等) ,统一模型的样本标准和训练模式,实现一份样本在多模型间随意切换;同时,开源 LLM 模型经过中台工程师的适配,可在九数的环境下开箱即用,帮助业务方灵活进行模型选型实验。
(3)模型微调:
①支持方法广:支持对 LLM 模型的预训练(Pretrain)和高效微调(SFT),微调方面支持全参微调(Full-Parameter Fine-Tuning)和 LoRA 等参数高效微调 PEFT 方法(Parameter-Efficient Fine-Tuning )。支持人类反馈强化学习 RLHF 训练(Reinforcement Learning from Human Feedback),支持 PPO(Proximal Policy Optimization)、DPO(Direct Preference Optimization)等强化学习算法。
②训练性能高:通过编译优化、算子优化、网络和 IO 优化等方法,相比纯开源的代码性能提升 40%左右;支持 70B+超大规模模型微调;
③支持 SFT 模型蒸馏:建设模型知识蒸馏组件,在模型效果无损或损失较小的同时缩小模型规模,降低模型线上运行的成本,帮助业务方节约算力资源,未来可在端上使用。
(4)效果验证:支持高性能批量离线推理与客观+主观评估方式。通过手动融合 kernel、triton 编译优化、通信压缩等手段,提升批量离线推理性能。通过建立客观评估维度与用户自定义主观维度,实现生成效果验证。
目前,九数算法中台自研 SFT 框架已于京东内部多个业务试点应用,实现 SFT 技术的低成本应用。
三、检索增强生成(RAG)
大型语言模型通过监督式微调(SFT)补充了特定领域知识的不足,但在获取时效性知识、减少内容幻觉以及确保数据安全等方面依然存在挑战。在零售场景中,无论是来自 C 端用户的商品咨询,还是来自 B 端商家的平台规则咨询,对生成答案的时效性、专业度、准确性要求都更高,还需要大模型具备多轮对话的理解能力。
检索增强生成技术(Retrieval-Augmented Generation,简称 RAG)的引入,有效减轻了这些问题。RAG 的核心是根据用户提问(Query)从外部数据库检索相关信息,并基于此生成回答(Answer),相当于给大模型装上了“知识外挂”,基础大模型不用再训练即可随时调用特定领域知识。 这不仅提升了回答的时效性和准确性,还增加了答案的可解释性和可扩展性。此外,企业可以将数据库在本地维护,无需上传至开源模型,确保了数据安全性。
当用户询问“某两款不同品牌手机有什么不同时”时,RAG 技术通过索引,为大模型“外挂”两款手机不同参数和属性数据、最新热门趋势等知识库,通过检索技术在商品知识库中找到准确的商品参数等信息,通过大模型生成能力对比两款手机在哪些重要维度有所不同,高效、精准地向用户输出两款手机差异性。
【3.1 RAG 流程介绍】
RAG 的流程包括检索数据增强、检索过程增强、效果增强三个阶段。
(1)检索数据增强阶段:构建用于检索的语料库的过程,包括“数据提取与处理—文本向量化—创建索引—导入向量数据库”几步。这一阶段的关键是如何通过各类技术,构建有效的语料库,以提供给模型用于生成文本的信息。
(2)检索过程增强阶段:根据用户查询(Query)在语料库中进行检索,召回相关信息,并通过 LLM 服务生成摘要内容的过程。检索环节中,通过文本检索与向量检索的方式计算问题与语料库内文档块之间相似度来,召回相似度最高的 top K 个文档块。为了提升检索的精度,往往会在首次召回后加上过滤(Filter)、排序(Rank)等环节。摘要生成环节中,结合 prompt 工程,利用大模型对用户问题与检索完成的答案进行总结,生成答案摘要。为提升结果准确度,大模型可根据问题范围提前进行 SFT 微调训练。
(3)效果增强阶段:针对 RAG 检索和生成结果可进行效果评估,通过客观+主观方式对 RAG 模式进行批量标注与评分,评价结果可用于进一步优化检索质量与生成质量。
RAG 流程介绍
【3.2 九数算法中台 RAG 技术优势】
九数算法中台的 RAG 技术覆盖检索数据增强、检索过程增强、效果增强三个阶段,力求通过全流程技术方案的设计,提升 RAG 的效率和性能。
九数算法中台 RAG 架构
(1)检索数据增强阶段
①知识库构建
基于 Data Warehouse 构建知识库,通过增强数据粒度、对齐优化等优化策略增强知识库可用性。 增强数据粒度策略加强数据源可读性。通过推行数据标准化流程,去除无关信息、特殊字符、歧义及重复内容,对数据内容进行修订和简化,重点建设结构化知识索引,促进信息的高效检索与利用。对齐优化策略解决用户问题与文档内容不一致问题,引入假设性问题生成机制,针对语料库中每个文档设计相应的问题(Query)并嵌入文档中,提升用户问题/Query 的召回率,有效解决了文档间的对齐挑战。
②数据索引优化
数据索引优化旨在通过对索引结构优化和元数据信息整合等策略提升索引内容的质量,确保数据检索的效率和精度。 索引结构优化策略提升知识库内答案相关上下文被召回概率,通过块优化技术(Chunk optimization)调整切词大小和参数,最小化噪声数据的影响;还可以通过改变索引路径,并引入图结构信息来进一步优化索引结构。添加元数据信息策略提升检索相关性,特别是在处理时间敏感的数据如电子邮件查询时,强调最新信息的相关性而不仅是内容相似性。通过在索引块中嵌入关键元数据属性(如时间戳和章节编号等结构标识),进行精细化过滤,从而提升检索效率与相关度。
③优化 Embedding 模型
Embedding 模型将用户查询(Query)和语料块(Doc)文本转换成为向量。通过选取动态 Embedding(Dynamic Embedding)模型,并微调 Embedding(Fine-tuning Embedding) ,优化 Embedding 效果,提高其精确度和适应性。
通过选取动态 Embedding 模型,可将用户查询 Query 与知识库内容结合上下文内容转化为向量并进行匹配,提升匹配精准度。动态 Embedding 模型利用基于 Transformer 架构的深度学习模型、细粒度的语义捕获和多任务学习能力,根据对同一词汇的上下文理解,动态调整其向量表示,使得模型能够生成反映全局语义特征的向量,优化了词义多样性和歧义词汇的精准表征。为提升模型对垂域内容理解,可微调 Embedding,通过对预训练 Embedding 模型(如 BGE、Voyage 等)进行微调训练,增强模型在垂直领域任务中的表现。包括针对特定领域微调,帮助模型捕捉到该领域的术语和微妙差异,以及针对具体的检索任务微调,使之精准匹配用户查询(Query)和相关文档块(Doc)。
④兼容向量数据库
支持包含 Vearch、Milvus、Pinecone 等在内的多种向量数据库。
(2)检索过程增强阶段
检索过程增强检涉及对搜索引擎检索流程的综合优化,包括深度理解用户查询(Query)、改进召回策略、优化过滤和排序机制以及改进生成摘要等环节。
①查询(Query)改写
通过知识推理、关键词识别、属性抽取等技术,深入理解用户查询(Query)意图,并通过查询改写(Query Rewrite)提高检索的相关性和精度。
②召回策略
召回策略优化的目标包括准确率提升和性能提升两方面。准确率提升方面,我们采用多跳检索(Multi-hop Retrieval)和相关性召回策略,执行多次连续且逐渐深入的检索,以便从不同的数据源中获取更全面深刻的信息,从而提升召回的准确率;性能提升方面,引入检索结果缓存机制(Retrieval Cache)以优化系统性能,减少查询响应时间。
③过滤/排序(Filtering/Ranking)
采用排序算法和过滤机制,根据用户行为和上下文信息对召回的文档进行精准排序,排除不相关或低质量的内容。
④摘要生成
利用提示词工程(Prompt Engineering)技术,给用户提供相应的 Prompt 模板,优化文档摘要的自动生成结果;并通过模型微调(Fine-tuning)提升生成摘要的相关性和丰富度。
(3)效果增强阶段
①建立效果评估机制
效果增强阶段旨在通过多轮评估,明确现有 RAG 方案的优化方向,优化最终生成效果。我们支持主观+客观相结合的评估方式,针对检索质量和生成质量分别建立相应的评估维度,使用多种主流评估框架对 RAG 效果进行评估。
②针对检索质量优化
针对检索质量,采取检索策略选择与检索精度调优的双重途径。基于评估反馈,筛选与当前数据集和任务目标最匹配的检索策略,包括关键词匹配、语义搜索、图数据库检索等,并对检索参数进行精细调整,以优化检索结果的准确率和相关度。
③针对生成质量优化
针对生成质量,进行模型微调和数据结构重组两方面优化。根据评估效果反馈,进一步微调 Embedding 模型和生成模型,精确适配特定语料库和任务。此外,优化的数据结构与处理流程,以提高模型的学习效率和生成质量。
(4)联邦 RAG
除上述常规 RAG 流程外,针对当前私域数据分散,私域数据无法在保护数据隐私的前提下参与大模型训练、RAG 检索等问题,京东试点联邦 RAG 模式,将联邦学习(Federated Learning)和 RAG 相结合,支持用户私域数据在本地构建知识库,延续联邦学习数据可用不可见原则,支持异构数据分布式安全模型训练与微调,实现保障私域数据隐私的联邦 RAG 模式。
四、AI 智能体(AI Agent)
通过 SFT+RAG 技术,已经可以实现相对固定流程复杂业务问题的解决。面向未来,九数算法中台致力于实现“基于意图的结果指定”这一全新的产品交互方式,通过 AI Agent(智能体)赋予大模型自主规划和执行能力,高效解决多流程复杂的业务问题。
【4.1 AI Agent 介绍】
AI Agent 可以理解为:一个可以感知环境并能够基于当前场景做出决策的“智能体”。 当下大模型应用大多仅具备类似 ChatGPT 的对话式能力,无法自主执行复杂任务。为了拓展大模型的能力,可以为其添加各类组件(如 Planning/Proflie /Memory/Action 等),实现复杂任务的拆解、规划和执行。AI Agent 常见组件如下:
①Planning:将复杂的任务分解为更易处理的子任务,并制定出有效的策略。
②Proflie:描述了 Agent 的各种属性,如角色、目标、能力、知识和行为方式等。
③Memory:存储和组织从环境中获取的信息,以指导未来行动。
④Action:将抽象的决策转化为具体的行动。
AI Agent 四类组件
就交互形式而言,基于大型语言模型的 AI 代理可以分为两大类:单一智能体(Single Agent)和多智能体系统(Multi-Agents)。
早在 20 世纪 80 年代,计算机科学家已着手探索类似 AI Agent 这样能与人类交互的智能软件。在大模型能力的加持下,AI Agent 已成为既具有想象空间,又贴近应用的 AI 行业爆点。从交互形式上看,基于大语言模型的 Agent(LLM-based Agent)可分为单智能体(Single Agent)和多智能体系统(Multi-Agents):
(1)单一智能体 Single Agent:在其运行环境中独立作用,专注于一个特定的任务或服务领域,能够接收人类以自然语言提出的指令,并基于这些指令执行一些简单的任务,如数据查询、日程管理等,扮演人类智能助手的角色。目前比较成熟的产品包括 AutoGPT、BabyAGI 等等。
(2)多智能体 Multi-Agents:涉及多个 Agent 协同工作,以解决单 Agent 难以独立处理的复杂问题。Agents 们有不同的角色和专长,通过有效的协作共同实现目标。协作方式可以是合作型的,即通过共享信息、观点和资源来解决问题;也可以是对抗型的,比如通过竞争、谈判和辩论来优化决策过程,淘汰错误策略。这种多元化的互动模式使得多智能体系统能够应对更为复杂和动态的环境,展现出比单一智能体更加强大和灵活的问题解决能力。
【4.2 京东零售的 AI Agent 应用】
在复杂业务模型自主规划层面,京东零售基于 ReAct 范式构建 Agent LLM,帮助大语言模型理解上下文,精确把握用户意图,并在复杂情况下做出决策、执行任务和使用工具。 ReAct 范式结合了推理(Reasoning)与行动(Acting)机制,通过生成交替的推理路径和特定行动,优化模型的决策制定和执行流程,以及与外部资源的有效交互。此过程中,推理路径为模型提供了对行动计划的追踪与更新机制,而具体的行动则使模型能够与外部工具进行直接交互。这种交替机制增强了模型在复杂情景下的决策和多应用调度的精确度。
以常见的商家助手场景为例,随着越来越多的商家入驻京东平台,关于平台入驻规则、产品营销策略等方面的提问逐渐增多,传统的智能客服、人工回复等方式无法精准回复商家提问,且运营成本较高。京东零售基于 Multi-Agents 理念搭建的商家助手大模型在线推理服务架构,打通数据系统、算法系统和业务系统,不仅能够帮助商家快速了解平台规则、优化经营策略,还能通过自然语言交互提供个性化、多轮次的即时沟通服务。 这一系统的核心是算法层多个定制的 AI Agents,每个 Agent 都有专门角色和功能,可以调用不同的工具来解决相应的问题。例如,当商家就如何提升某个商品的销量提出问题,AI Agent 首先对商家提问进行语义理解,精准识别出商家的具体需求,然后调用商品信息查询的 API 接口,快速获取所需的数据和信息,并据此给出个性化的销量提升建议。
商家助手大模型在线推理服务架构
目前京东零售的 Agent LLM 已经应用于零售业务知识库构建,成功服务于商家、消费者、企业、门店等多类的用户群体,涵盖多种复杂使用场景,并支持通过工具调用来解决多流程的复杂业务问题。
五、结语
综上,九数算法中台的大模型基础应用框架融合基于 ReAct 框架的 AI Agent、SFT(指令微调)与 RAG(检索增强生成)技术,显著提高了大语言模型在零售业务的应用效率和效果。通过这一系列技术融合和创新,京东零售成功地将大模型的强大能力应用于人、货、场场景中,在人场,提供面向用户与商家的智能助手服务,如:商家助手、用户增长等;在货场,提供面向商品的知识问答服务,如:知识问答等;在场域,提供面向场域的智能运营服务,如:舆情风险挖掘、数据分析等。 零售大模型应用不仅提升了用户体验,优化了运营效率,还为零售行业的数智化转型提供了有力支撑,展现了大模型技术在零售领域广泛应用的巨大潜力和价值。
作者:京东零售技数中心
来源:京东零售技术 转载请注明来源
更多年度盘点文章
亚洲唯一!京东荣获2024年度Gartner供应链技术创新奖背后的创新探索
版权声明: 本文为 InfoQ 作者【京东零售技术】的原创文章。
原文链接:【http://xie.infoq.cn/article/9ef1fffbb0bcd62b0572ba7d6】。文章转载请联系作者。
评论