描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787111767671
编辑推荐
(1)作者背景权威:作者是湖南国家应用数学中心副主任、湘潭大学的博导、科技部国家重点子课题(大模型相关)的负责人,是资深的大模型技术专家和布道者。(2)作者经验丰富:作者在司法、工业设计等多个领域成功实现了开源大模型向垂直领域的迁移,有丰富的实战经验。(3)涵盖全部技术栈:从迁移方式、低算力微调、推理优化到开源基座模型的选择指标等,本书详细介绍了构建垂直领域大模型需要的全部技术栈。(4)涵盖构建全流程:从垂直大模型的迁移、微调到部署和性能优化,本书详细讲解了构建垂直领域大模型的全流程
内容简介
内容简介本书是一本深度探讨大模型在低算力环境下实现迁移与微调的实践指南,并深入讲解了大模型的部署与优化策略。书中结合多个垂直领域的应用场景,从理论到技术实现,全程详尽讲解了如何应对大模型在行业落地中的技术挑战,帮助读者逐步掌握大模型的迁移与微调核心技术。通过阅读本书,你将能够: (1)全面理解垂直领域迁移方式与技术选型 深入了解开源大模型向垂直领域迁移的核心方式,包括提示工程、检索增强生成、参数高效微调与全参数微调等技术路径,并灵活应对低算力场景下的迁移技术挑战。 (2)快速获取高质量领域数据的低成本方案 学习通过指令自举、无监督标注、自我策展等方法构建高质量数据集,同时掌握数据清洗、去重和质量过滤等关键技术,显著降低数据获取成本。 (3) 掌握低算力环境下的训练与推理优化技术 全面掌握低算力训练与微调方法(如LoRA和QLoRA),并结合推理优化技术(如量化、剪枝和模型编译),高效实现低成本的大模型训练与推理。 (4)精通大模型的生产环境部署与优化 系统学习生产环境中大模型的部署方案,涵盖服务器推理加速、分布式集群架构和多平台适配技术,确保模型在实际应用中的高效、安全运行。无论你是大模型开发者、人工智能研究人员,还是对垂直领域AI应用感兴趣的行业专家,本书都将带你深入大模型的核心领域,提供从构建、优化到部署的全流程指导,助你掌握这一前沿技术的实践精髓。
目 录
CONTENTS
目 录
前言
第1章 垂直领域大模型的行业
变革与机遇 1
1.1 大模型下的行业变革 1
1.1.1 大模型的iPhone时刻 1
1.1.2 大模型的全行业重塑 3
1.1.3 劳动力市场的变革 7
1.2 垂直领域大模型迁移的动机 7
1.2.1 商业价值 7
1.2.2 行业技术护城河 9
1.2.3 领域数据优势 9
1.3 垂直领域大模型迁移的机遇 10
第2章 垂直领域迁移技术栈 11
2.1 垂直领域迁移的方式 11
2.1.1 提示工程 12
2.1.2 检索增强生成 15
2.1.3 参数高效微调 17
2.1.4 全参数微调 18
2.1.5 从头预训练 19
2.1.6 垂直领域迁移低算
力技术选型 20
2.2 低算力微调 20
2.3 推理优化 22
2.3.1 模型编译 23
2.3.2 模型压缩 24
2.3.3 模型分区 25
第3章 大模型的开源生态 27
3.1 大模型的开源社区 27
3.1.1 Meta 27
3.1.2 Hugging Face 28
3.1.3 微软 31
3.1.4 英伟达 32
3.2 开源生态下基座模型选择的
关键指标 33
3.2.1 参数规模 33
3.2.2 训练Token 34
3.2.3 上下文窗口 35
3.2.4 综合评测 36
3.2.5 商业许可 37
3.3 开源基座模型LLaMA系列 38
3.3.1 LLaMA 2 38
3.3.2 LLaMA 3 40
3.3.3 商用限制 40
第4章 自举领域数据的获取 42
4.1 指令自举标注 42
4.2 自举无监督标注 44
4.2.1 指令生成阶段 44
4.2.2 答案生成阶段 46
4.2.3 过滤和修剪阶段 47
4.3 自我策展 47
4.3.1 初始化阶段 48
4.3.2 自我增强阶段 49
4.3.3 自我策展阶段 49
4.4 自我奖励 50
4.4.1 种子数据 51
4.4.2 自我指令创建 51
4.4.3 指令遵循训练 52
4.4.4 迭代训练 53
第5章 数据处理 54
5.1 数据处理的挑战 54
5.2 数据质量 55
5.2.1 文本提取 56
5.2.2 数据去重 56
5.2.3 质量过滤 58
5.2.4 内容毒性过滤 59
5.3 高效数据集访问 60
5.3.1 数据集来源 60
5.3.2 列式内存格式 61
5.3.3 向量化计算 63
5.3.4 零复制数据交换 64
5.3.5 虚拟内存 65
第6章 大模型抽象 66
6.1 计算图 66
6.2 静态计算图 69
6.3 动态计算图 70
6.4 算子优化与调度 73
6.4.1 计算图与算子优化 73
6.4.2 计算图与算子调度 74
6.4.3 串行调度与并行调度 74
6.5 大模型中的张量与算子 76
6.5.1 输入层 77
6.5.2 自注意力层 78
6.5.3 前馈网络层 79
6.5.4 输出层 79
6.6 大模型的序列化 80
6.6.1 序列化文件的类型 80
6.6.2 TensorFlow模型序列化 81
6.6.3 PyTorch模型序列化 84
6.6.4 Safetensors序列化格式 86
第7章 LoRA低算力微调 89
7.1 LoRA的原理 89
7.2 LoRA的重参数化方法 91
7.3 秩的选择 92
7.4 LoRA的多任务处理策略 93
7.5 LoRA量化版本QLoRA 94
7.6 LoRA微调类型 95
7.6.1 继续预训练 95
7.6.2 RLHF 96
7.6.3 DPO 97
第8章 大模型的分布式训练 99
8.1 分布式训练的挑战 99
8.1.1 算力与内存瓶颈 99
8.1.2 分布式训练系统的
设计挑战 100
8.2 分布式集群架构 102
8.2.1 GPU集群架构 102
8.2.2 集合通信算子 104
8.2.3 通信拓扑 108
8.3 分布式训练的通信架构 109
8.3.1 基于参数服务器的架构 109
8.3.2 基于归约的架构 111
8.4 并行模式 113
8.4.1 数据并行 113
8.4.2 张量并行 115
8.4.3 流水线并行 116
8.4.4 并行模式的对比 117
8.5 大模型的张量并行 118
8.5.1 输入层 118
8.5.2 输出层 120
8.5.3 多层感知机 121
8.5.4 自注意力 122
8.6 数据并行的内存优化 123
8.6.1 设备内存占用 124
8.6.2 ZeRO技术 125
8.6.3 ZeRO-Offload技术 128
第9章 推理优化技术 131
9.1 计算加速 131
9.1.1 算子融合 131
9.1.2 并行推理 134
9.2 内存优化 135
9.2.1 KV缓存 135
9.2.2 页注意力 137
9.2.3 快速注意力 139
9.3 吞吐量优化 143
9.3.1 内存I/O瓶颈 143
9.3.2 静态批处理 143
9.3.3 连续批处理 144
9.3.4 动态分割融合 145
9.4 量化 147
9.4.1 量化的动机 147
9.4.2 量化的原理 148
9.4.3 LLM.int8() 150
9.4.4 GPTQ 152
第10章 大模型的编译优化 156
10.1 深度学习编译与大模型编译 156
10.1.1 深度学习编译 156
10.1.2 多级渐进优化 158
10.1.3 硬件优化偏好 159
10.1.4 大模型的编译特点 161
10.2 深度学习框架
目 录
前言
第1章 垂直领域大模型的行业
变革与机遇 1
1.1 大模型下的行业变革 1
1.1.1 大模型的iPhone时刻 1
1.1.2 大模型的全行业重塑 3
1.1.3 劳动力市场的变革 7
1.2 垂直领域大模型迁移的动机 7
1.2.1 商业价值 7
1.2.2 行业技术护城河 9
1.2.3 领域数据优势 9
1.3 垂直领域大模型迁移的机遇 10
第2章 垂直领域迁移技术栈 11
2.1 垂直领域迁移的方式 11
2.1.1 提示工程 12
2.1.2 检索增强生成 15
2.1.3 参数高效微调 17
2.1.4 全参数微调 18
2.1.5 从头预训练 19
2.1.6 垂直领域迁移低算
力技术选型 20
2.2 低算力微调 20
2.3 推理优化 22
2.3.1 模型编译 23
2.3.2 模型压缩 24
2.3.3 模型分区 25
第3章 大模型的开源生态 27
3.1 大模型的开源社区 27
3.1.1 Meta 27
3.1.2 Hugging Face 28
3.1.3 微软 31
3.1.4 英伟达 32
3.2 开源生态下基座模型选择的
关键指标 33
3.2.1 参数规模 33
3.2.2 训练Token 34
3.2.3 上下文窗口 35
3.2.4 综合评测 36
3.2.5 商业许可 37
3.3 开源基座模型LLaMA系列 38
3.3.1 LLaMA 2 38
3.3.2 LLaMA 3 40
3.3.3 商用限制 40
第4章 自举领域数据的获取 42
4.1 指令自举标注 42
4.2 自举无监督标注 44
4.2.1 指令生成阶段 44
4.2.2 答案生成阶段 46
4.2.3 过滤和修剪阶段 47
4.3 自我策展 47
4.3.1 初始化阶段 48
4.3.2 自我增强阶段 49
4.3.3 自我策展阶段 49
4.4 自我奖励 50
4.4.1 种子数据 51
4.4.2 自我指令创建 51
4.4.3 指令遵循训练 52
4.4.4 迭代训练 53
第5章 数据处理 54
5.1 数据处理的挑战 54
5.2 数据质量 55
5.2.1 文本提取 56
5.2.2 数据去重 56
5.2.3 质量过滤 58
5.2.4 内容毒性过滤 59
5.3 高效数据集访问 60
5.3.1 数据集来源 60
5.3.2 列式内存格式 61
5.3.3 向量化计算 63
5.3.4 零复制数据交换 64
5.3.5 虚拟内存 65
第6章 大模型抽象 66
6.1 计算图 66
6.2 静态计算图 69
6.3 动态计算图 70
6.4 算子优化与调度 73
6.4.1 计算图与算子优化 73
6.4.2 计算图与算子调度 74
6.4.3 串行调度与并行调度 74
6.5 大模型中的张量与算子 76
6.5.1 输入层 77
6.5.2 自注意力层 78
6.5.3 前馈网络层 79
6.5.4 输出层 79
6.6 大模型的序列化 80
6.6.1 序列化文件的类型 80
6.6.2 TensorFlow模型序列化 81
6.6.3 PyTorch模型序列化 84
6.6.4 Safetensors序列化格式 86
第7章 LoRA低算力微调 89
7.1 LoRA的原理 89
7.2 LoRA的重参数化方法 91
7.3 秩的选择 92
7.4 LoRA的多任务处理策略 93
7.5 LoRA量化版本QLoRA 94
7.6 LoRA微调类型 95
7.6.1 继续预训练 95
7.6.2 RLHF 96
7.6.3 DPO 97
第8章 大模型的分布式训练 99
8.1 分布式训练的挑战 99
8.1.1 算力与内存瓶颈 99
8.1.2 分布式训练系统的
设计挑战 100
8.2 分布式集群架构 102
8.2.1 GPU集群架构 102
8.2.2 集合通信算子 104
8.2.3 通信拓扑 108
8.3 分布式训练的通信架构 109
8.3.1 基于参数服务器的架构 109
8.3.2 基于归约的架构 111
8.4 并行模式 113
8.4.1 数据并行 113
8.4.2 张量并行 115
8.4.3 流水线并行 116
8.4.4 并行模式的对比 117
8.5 大模型的张量并行 118
8.5.1 输入层 118
8.5.2 输出层 120
8.5.3 多层感知机 121
8.5.4 自注意力 122
8.6 数据并行的内存优化 123
8.6.1 设备内存占用 124
8.6.2 ZeRO技术 125
8.6.3 ZeRO-Offload技术 128
第9章 推理优化技术 131
9.1 计算加速 131
9.1.1 算子融合 131
9.1.2 并行推理 134
9.2 内存优化 135
9.2.1 KV缓存 135
9.2.2 页注意力 137
9.2.3 快速注意力 139
9.3 吞吐量优化 143
9.3.1 内存I/O瓶颈 143
9.3.2 静态批处理 143
9.3.3 连续批处理 144
9.3.4 动态分割融合 145
9.4 量化 147
9.4.1 量化的动机 147
9.4.2 量化的原理 148
9.4.3 LLM.int8() 150
9.4.4 GPTQ 152
第10章 大模型的编译优化 156
10.1 深度学习编译与大模型编译 156
10.1.1 深度学习编译 156
10.1.2 多级渐进优化 158
10.1.3 硬件优化偏好 159
10.1.4 大模型的编译特点 161
10.2 深度学习框架
前 言
PREFACE
前 言
2022年,ChatGPT的横空出世,彻底颠覆了我对人工智能能力上限的认知。同时,作为一名创业者,我也敏锐地感觉到大模型除了带来内容生产方式的变革外,还将成为新一代人机交互的核心,并作为智能代理来构建自动化和半自动化的工作流程,甚至能与工业控制、机器人、消费电子领域相结合,引发深刻的社会变革。
当前,在大模型领域,正在重演类似iPhone与Android的局面。OpenAI已经建立了类似iPhone的生态,通过应用市场提供ChatGPT插件和定制版本的GPT模型。这些模型允许ChatGPT接入外部数据或工具,使开发者能够创建针对特定用途或业务场景的定制化模型,从而将ChatGPT扩展到各个领域,以应对不同的使用场景。同时,面对通用大模型的高昂开发成本与OpenAI的先发优势,只有少量头部企业才有资源在这个领域与其竞争。
Meta和Hugging Face等公司不断推进大模型技术的开源发展,重演了Android在移动互联网中的开源竞争策略,吸引了众多中小创新企业加入,共同构建针对特定细分领域的垂直大模型生态系统。大模型在垂直领域的应用不仅遵循特定商业场景的逻辑,还注重挖掘和增强产业价值。基于开源的通用大模型,中小规模的创新企业可以通过定制化垂直领域解决方案来构筑其技术和数据的商业优势,这是它们在当前大模型发展浪潮中建立竞争壁垒的关键途径。
然而,这种大模型在垂直领域的迁移存在很高的技术门槛。例如,如何解决大模型在领域迁移中的数据处理问题,如何在有限的算力下进行高效微调,如何部署这些模型以满足实际应用的需求,以及如何持续优化以降低部署后的推理成本等。整个工业界与学术界都缺乏这样的专业人才,也没有合适的资料介绍垂直领域迁移所涉及的完整知识体系。
我们的团队在2023年初就开始尝试在司法以及工业设计等领域迁移开源的大模型,在不断的“填坑”过程中,逐渐积累了大模型垂直领域迁移的完整技术栈。2023年6月,写完了《ChatGPT原理与架构:大模型的预训练、迁移和中间件编程》一书后,我就一直想把这部分知识和经验整理并分享出来,于是便有了这本书。
本书主要内容
本书旨在为读者提供关于大模型在垂直领域迁移的全面指南,深入探讨了大模型的领域迁移、微调、优化以及部署技术。全书共12章,各章内容简介如下。
第1章从大模型在垂直领域的生态系统出发,详细介绍行业变革的情况,并探讨领域迁移的动机和机遇。
第2章介绍垂直领域迁移所需的技术栈,包括迁移的方式、微调算法的选择、推理优化策略。
第3章讨论开源社区与基座模型的关系,并探讨选择基座模型的标准以及LLaMA系列成为首选基座模型的原因。
第4章介绍如何有效运用自举技术,减少对大量人工标注数据的依赖。
第5章介绍数据处理,先讨论与数据质量有关的技术,然后讨论高效的数据集访问技术,涉及数据集来源管理、列式内存格式的应用、向量化计算的优势以及零复制数据交换技术。
第6章从计算图的角度详细描述大模型表征为张量与算子的架构设计,以及在训练阶段和模型部署到生产环境阶段序列化的不同需求与应用。
第7章深入探讨如何基于LoRA技术进行大模型的继续预训练、人类反馈强化学习(RLHF)以及直接偏好优化(DPO)等多种微调技术。
第8章围绕分布式计算中的大模型训练,详细介绍Transformer架构中的自注意力机制和前馈神经网络如何进行张量拆分,以及优化与内存管理技术。
第9章深入探讨实现推理优化的关键技术,包括计算加速、内存优化、吞吐量优化和量化等,为降低垂直领域应用大模型推理的成本提供了主要的优化方向。
第10章详细讨论编译优化在大模型训练与部署阶段所扮演的角色,包括优化目标和策略。
第11章着重讨论大模型部署中的非性能需求,例如内容安全、水印、监控和评估。
第12章讨论垂直领域大模型在服务器端的架构与优化方法,包括实际部署时需要考虑的多种因素,并以TGI案例研究展示了一个完整的服务器端推理解决方案。
本书读者对象
AI领域的工程师:将从书中关于算法选择、模型训练、微调和推理优化的深入讨论中获益,从而提升他们在实际项目中应用大模型的技术水平。
AI研究人员:对于那些专注于探索人工智能前沿技术的研究者来说,本书中关于自举技术、分布式计算优化和新兴训练方法的内容将为他们提供宝贵的学术和应用见解。
技术架构师和系统设计师:在设计大规模AI系统和解决方案时,可以参考本书提供的关于大模型架构设计、序列化、内存管理以及服务器端优化的详细信息。
计算机科学领域的本科生:通过学习大模型在垂直领域迁移的基础理论和实际应用,他们可以在未来的学习和职业生涯中具备使用和评估AI技术的能力。本书将为他们提供必要的技术背景和案例研究,从而帮助他们更好地理解复杂的概念。
计算机科学领域的研究生:他们通常涉及更深入的研究项目,可以从本书的高级主题(如算法深度微调、优化策略和系统部署)中获得灵感。本书将为他们提供丰富的资源,帮助他们在学术研究或行业应用中开展创新工作。
商业战略规划
前 言
2022年,ChatGPT的横空出世,彻底颠覆了我对人工智能能力上限的认知。同时,作为一名创业者,我也敏锐地感觉到大模型除了带来内容生产方式的变革外,还将成为新一代人机交互的核心,并作为智能代理来构建自动化和半自动化的工作流程,甚至能与工业控制、机器人、消费电子领域相结合,引发深刻的社会变革。
当前,在大模型领域,正在重演类似iPhone与Android的局面。OpenAI已经建立了类似iPhone的生态,通过应用市场提供ChatGPT插件和定制版本的GPT模型。这些模型允许ChatGPT接入外部数据或工具,使开发者能够创建针对特定用途或业务场景的定制化模型,从而将ChatGPT扩展到各个领域,以应对不同的使用场景。同时,面对通用大模型的高昂开发成本与OpenAI的先发优势,只有少量头部企业才有资源在这个领域与其竞争。
Meta和Hugging Face等公司不断推进大模型技术的开源发展,重演了Android在移动互联网中的开源竞争策略,吸引了众多中小创新企业加入,共同构建针对特定细分领域的垂直大模型生态系统。大模型在垂直领域的应用不仅遵循特定商业场景的逻辑,还注重挖掘和增强产业价值。基于开源的通用大模型,中小规模的创新企业可以通过定制化垂直领域解决方案来构筑其技术和数据的商业优势,这是它们在当前大模型发展浪潮中建立竞争壁垒的关键途径。
然而,这种大模型在垂直领域的迁移存在很高的技术门槛。例如,如何解决大模型在领域迁移中的数据处理问题,如何在有限的算力下进行高效微调,如何部署这些模型以满足实际应用的需求,以及如何持续优化以降低部署后的推理成本等。整个工业界与学术界都缺乏这样的专业人才,也没有合适的资料介绍垂直领域迁移所涉及的完整知识体系。
我们的团队在2023年初就开始尝试在司法以及工业设计等领域迁移开源的大模型,在不断的“填坑”过程中,逐渐积累了大模型垂直领域迁移的完整技术栈。2023年6月,写完了《ChatGPT原理与架构:大模型的预训练、迁移和中间件编程》一书后,我就一直想把这部分知识和经验整理并分享出来,于是便有了这本书。
本书主要内容
本书旨在为读者提供关于大模型在垂直领域迁移的全面指南,深入探讨了大模型的领域迁移、微调、优化以及部署技术。全书共12章,各章内容简介如下。
第1章从大模型在垂直领域的生态系统出发,详细介绍行业变革的情况,并探讨领域迁移的动机和机遇。
第2章介绍垂直领域迁移所需的技术栈,包括迁移的方式、微调算法的选择、推理优化策略。
第3章讨论开源社区与基座模型的关系,并探讨选择基座模型的标准以及LLaMA系列成为首选基座模型的原因。
第4章介绍如何有效运用自举技术,减少对大量人工标注数据的依赖。
第5章介绍数据处理,先讨论与数据质量有关的技术,然后讨论高效的数据集访问技术,涉及数据集来源管理、列式内存格式的应用、向量化计算的优势以及零复制数据交换技术。
第6章从计算图的角度详细描述大模型表征为张量与算子的架构设计,以及在训练阶段和模型部署到生产环境阶段序列化的不同需求与应用。
第7章深入探讨如何基于LoRA技术进行大模型的继续预训练、人类反馈强化学习(RLHF)以及直接偏好优化(DPO)等多种微调技术。
第8章围绕分布式计算中的大模型训练,详细介绍Transformer架构中的自注意力机制和前馈神经网络如何进行张量拆分,以及优化与内存管理技术。
第9章深入探讨实现推理优化的关键技术,包括计算加速、内存优化、吞吐量优化和量化等,为降低垂直领域应用大模型推理的成本提供了主要的优化方向。
第10章详细讨论编译优化在大模型训练与部署阶段所扮演的角色,包括优化目标和策略。
第11章着重讨论大模型部署中的非性能需求,例如内容安全、水印、监控和评估。
第12章讨论垂直领域大模型在服务器端的架构与优化方法,包括实际部署时需要考虑的多种因素,并以TGI案例研究展示了一个完整的服务器端推理解决方案。
本书读者对象
AI领域的工程师:将从书中关于算法选择、模型训练、微调和推理优化的深入讨论中获益,从而提升他们在实际项目中应用大模型的技术水平。
AI研究人员:对于那些专注于探索人工智能前沿技术的研究者来说,本书中关于自举技术、分布式计算优化和新兴训练方法的内容将为他们提供宝贵的学术和应用见解。
技术架构师和系统设计师:在设计大规模AI系统和解决方案时,可以参考本书提供的关于大模型架构设计、序列化、内存管理以及服务器端优化的详细信息。
计算机科学领域的本科生:通过学习大模型在垂直领域迁移的基础理论和实际应用,他们可以在未来的学习和职业生涯中具备使用和评估AI技术的能力。本书将为他们提供必要的技术背景和案例研究,从而帮助他们更好地理解复杂的概念。
计算机科学领域的研究生:他们通常涉及更深入的研究项目,可以从本书的高级主题(如算法深度微调、优化策略和系统部署)中获得灵感。本书将为他们提供丰富的资源,帮助他们在学术研究或行业应用中开展创新工作。
商业战略规划
评论
还没有评论。