20 分钟带你搞懂 LLMOps !!
导读 本文将介绍 LLMOps 大模型。
主要内容包括以下几个部分:1. LLMOps 的定义
2. LLM 微调技术
3. LLM 应用构建架构
4. LLM 应用构建难点
5. LLM 应用解决方案
分享嘉宾|邹晓东 上海深擎信息科技有限公司 架构leader
编辑整理|陈业利
内容校对|李瑶
出品社区|DataFun
LLMOps 的定义
第一个阶段是预训练阶段 在预训练阶段,数据集通过预训练产生预训练模型,这个过程是千模大战的主战场,各类开源闭源的大模型都是通过这个阶段产生的。 第二个阶段是微调阶段 微调阶段是指特定领域的数据集,在预训练模型的基础上,通过 finetune 手段产生特定领域的模型。 第三个阶段是应用开发阶段 应用开发阶段只是在预训练模型和特定领域模型的推理功能基础上,为其喂入我们的输入,经过提示工程进行指令编排,最终产生我们所需要的大模型输出。
02
LLM 微调技术
1. 基座大模型概述
BERT 模式 GPT 模式 混合模式
第一种 Encoder-Decoder,又称为 T5 模式。它的训练包括编码和减码阶段,主要的模型类型是判别式,任务的类型是全面型。它主要的代表模型是 T5,BART 以及 GLM 等等。 第二种 Encoder-Only,这是 BERT 模式。这种模式的模型主要类型是判别式的,任务的类型是理解任务以及单任务模式,它的主要代表是 BERT 以及文心的早期版本。 第三种 Decoder-Only,也就是 GPT 模式。它采用的训练方式是自回归模型类的生成式模型,任务类型是生成类以及多任务,现在常见的 GPT 系列以及 Palm、LaMDA、Bloom 等都是采用这种方式,包括文心 3.0 也更改为这种模式。
2. PEFT
03
LLM 应用构建架构
第一个缺点,大模型是静态的,大模型训练成本比较高,它的所有数据可能终止在某个时间点,在这之后的数据没办法实时更新。 第二个缺点,大模型对于特定领域的数据,特别是私有数据是没法获取到的。 第三个缺点,大模型的成本问题,公司或者个人开发者没法实现微调过程。在大部分情况下还是会使用云端的大模型。 最后一个缺点,大模型是一个黑盒,在很多情况下我们没法知道大模型回答的东西到底是它掌握的知识还是胡编乱造的,它没有一个准确或者保真的逻辑在里面。
Connector,即数据准备。将文档数据、数据库的数据、数据流的数据等通过embedding 向量的方式存到向量数据库里面,供 RAG 调用。在大模型问答的过程中,Prompt 可以通过 RAG 去检索最相近的一些文档、知识,供大模型引用进行问答。这样来保证知识的有效、准确、真实。 在有效准确真实的基础之上,需要扩展一些能力,比如本地的一些 API、数据库、或者现实世界更多的知识,供给大模型调用。可以把 API 调用或者大模型外部工具的使用,作为一个插件。在与大模型交互之前先通过工具去获取一些信息,再与大模型进行交互,达到增强的结果。这能极大地提升应用的交互能力。
04
LLM应用构建难点
工具,即 Tools,依赖大模型的 FunctionCall 能力。 记忆,里面包括短期记忆和长期记忆。短期记忆是指大模型的上下文,需要大模型具备多轮对话能力。长期记忆就需要像数据库那样去存储交互的一些细节。实际上知识库也可以认为是记忆的一种。其实人类的学习过程就是存储记忆的一个过程。 Planning,规划能力,指依赖大模型的内置 COT,即思维链的能力。
1. 常见 Agent 技术
Auto-GPT:是大模型思维链自主实现任务目标的项目。 BabyAGI:基于前序任务结果和目标来创建新任务。 GPT-Engineer:是根据向 AI 提供一些动人的解释或者指导来完成完整的代码库。
GPTeam:内置了很多智能体,每个智能体都有独立的记忆,能够相互地交流进行协作。 GBT Researcher:根据定制化的需求,生成详细客观不带偏见的研究报告。 MetaGPT:多个智能的不同角色协作来完成一个复杂任务。
2. 技术难点
可靠性。大模型的幻觉是非常难克服的一个问题,经常在 planting 阶段或者 thought 阶段提出一些不真实或者环境无法满足的操作或者推论,导致应用难以执行。 稳定性。大模型是非常随机性的,会使用户在多次结果中得到截然不同的结论。生成式智能体在最初可能颇具吸引力,但在完成具体任务时又可能难以接受。 准确性。大模型存在知识欠缺,我们需要给他一些参考的知识,基于参考知识来回答。受限于当前的搜索技术,在应用构建中,很难保证获得到的知识或者记忆是最相关的。特别是在 RAG 系统里面,体现得尤为明显。 完整性。现在大模型的 token 通常比较受限,如 4096 或者现在推的比较多的是 6K,但也达不到一个文档的完整长度。在这种情况下,我们不可能将一个完整的文档或者任务作为上下文投喂给大模型,这会导致一些任务比如法规读取或者coding 难以取得很好的体验。 成本。智能体在实际的应用过程中,特别是比较复杂的一些诸如使用思维链、思维树或者 React 这种大模型交互的智能体,需要与大模型进行反复的交互。即使是一个极小的任务,也会产生比较高的成本。
05
LLM 应用解决方案
参数化模板
大模型的调试
多版本的支持:
批量化回测功能:
低代码构建,很多组件都需要快速沉淀下来,使用户能够在这些组件的基础上快速搭建出一个场景; 场景的模板化,我们搭建的场景要能够尽可能地复用,因为大模型很多流程都是比较固定的,在提供了丰富的模板之后,能够快速孵化出一个新的场景; 配置的在线化,即 Prompt 工程。能够进行快速地替换、调节,让线上的一些效果快速地更改、调试、发布。
针对线上的效果,我们需要做到效果的监控和成本的监控,包括:
针对知识问答的点击场景,也是比较核心的场景,它依赖于召回结果的准确性,因此需要对知识库的命中率和相关性进行监控,为效果提供保证。
敏感词调用,这是针对于大模型的监管问题。大模型通常会命中一些敏感词,导致输出结果异常。这通常是输入的问题,由于 RAG 的影响,输入其实大部分来自于知识库。因此知识库或者问题产生敏感词会极大地影响用户体验,产生不可预知的行为。这种情况下,如何评估知识库的好坏就尤为重要。可以采用对敏感调用率进行监控,来保证场景下是以极低风险在运行,而不是经常命中敏感词,导致应用不可用。
成本的考虑,需要对 token 消耗进行监控。特别在改写或者 agent 的场景,在大模型进行多次交互过程中,消耗的 token 数量是非常可观的。企业需要直观地获取每个场景 token 消耗速度,来保证核心成本不被浪费。
分享嘉宾
INTRODUCTION
邹晓东
上海深擎信息科技有限公司
架构leader
邹晓东,硕士毕业于中国科学院光电研究院,现任深擎科技架构团队负责人。目前主要负责深擎 MLOps 机器学习平台和 LLMOps 大模型应用平台的设计研发工作。
往期推荐
一文带你掌握AB实验最佳流程 ! ! !
免费下载:《数据湖应用架构与MySQL数据库电子书领取》
洞察海外 AB 实验的地区差异效果
借鉴 ChatGPT 思想,小布助手在 AIGC 上的探索
数据波动归因分析与指标治理
当推荐遇见大模型,会碰撞出什么样的火花
集团类企业数据治理实践
网易云音乐用户行为归因数据体系建设
因果推断在解决推荐系统偏置问题的研究和产品应用
点个在看你最好看
SPRING HAS ARRIVED