《动手构建大模型》路易斯-弗朗索瓦·布沙尔【文字版_PDF电子书_】

| 书名:动手构建大模型 作者:[加]路易斯-弗朗索瓦·布沙尔/[英]路易·彼得斯 出版社:人民邮电出版社 译者:孟二利/鲁骁/刘春晓/王斌 出版日期:2025-11 页数:330 ISBN:9787115668967 | 8.9 豆瓣评分 | 孔网购买 | 点击喜欢 | 全网资源sm.nayona.cn |
内容简介:
本书采用创新且实用的教学策略,巧妙融合理论基础与实践应用,深入剖析自然语言处理(Natural Language Processing,NLP)领域的新进展,以及大语言模型(Large Language Model,LLM)的原理。书中不仅系统阐述了 LLM 的理论基础,还通过实际项目案例展示了如何将这些模型应用于构建RAG系统。本书遵循由浅入深的路径,从LLM的基础知识入手,详细阐释了模型的训练流程,并深入探讨了如何利用提示技术与模型进行高效交互。书中还重点介绍了两个在业界得到广泛认可的框架—LlamaIndex和LangChain,它们是开发RAG应用的强大工具。书中的项目案例不仅为读者提供了宝贵的实践经验,也能够加深读者对相关概念的理解和应用。此外,书中进一步探讨了包括智能体和微调在内的高级技术,这些技术能够显着提升问答系统的性能。
作者简介:
路易斯-弗朗索瓦·布沙尔(Louis-Fran?ois Bouchard)
Towards AI公司联合创始人兼首席技术官(CTO),网名“What's AI”。他致力于普及AI知识并解释AI技术原理,让大众能够轻松理解AI。在深切体会到初创企业与学术界之间存在的巨大技能差距后,他从蒙特利尔学习算法研究所退学,放弃继续攻读博士学位,全身心投入YouTube科普内容创作和Towards AI公司的相关工作之中。
路易·彼得斯(Louie Peters)
Towards AI公司联合创始人兼首席执行官(CEO)。他致力于开发普惠化AI职业资源,推动大众高效进入AI领域。同时,依托帝国理工学院物理学背景及摩根大通集团的投资研究经验,他尤为关注AI技术的颠覆性影响、经济效应,以及持续技术突破对现实场景应用的赋能作用。
目 录:
第 1章 LLM简介 1
1.1 语言模型简史 1
1.2 什么是LLM 2
1.3 LLM的组成 2
1.3.1 Transformer 2
1.3.2 语言建模 3
1.3.3 分词 3
1.3.4 嵌入 4
1.3.5 训练/微调 5
1.3.6 预测 5
1.3.7 上下文窗口 5
1.3.8 规模法则 6
1.3.9 提示词 7
1.3.10 LLM中的涌现能力及测试基准 7
1.3.11 LLM简史 9
1.3.12 项目:使用LLM(GPT-3.5 API)进行翻译 13
1.3.13 项目:通过小样本学习来控制LLM的输出 14
1.4 本章小结 16
第 2章 LLM架构和概况 17
2.1 理解Transformer 17
2.1.1 论文“Attention Is All You Need” 17
2.1.2 架构实战 21
2.2 Transformer架构的设计选择 24
2.2.1 编码器-解码器架构 24
2.2.2 仅编码器架构 26
2.2.3 仅解码器架构 28
2.2.4 Transformer架构的优化技术 30
2.3 生成式预训练Transformer(GPT)架构 31
2.3.1 掩码自注意力 31
2.3.2 GPT的训练过程 31
2.3.3 MinGPT 32
2.4 LMM简介 33
2.4.1 常见架构和训练目标 33
2.4.2 开源版本的Flamingo 34
2.4.3 指令微调的LMM 35
2.4.4 探索LLaVA—一个指令微调的LMM 36
2.4.5 超越视觉和语言 36
2.5 专有模型vs.开放模型vs.开源模型 37
2.5.1 Cohere LLM 37
2.5.2 OpenAI的GPT-3.5 turbo、GPT-4o和GPT-4o mini 38
2.5.3 Anthropic的Claude 3模型 38
2.5.4 Google DeepMind的Gemini 39
2.5.5 Meta的LLaMA 2 39
2.5.6 Mistral LLM 40
2.6 LLM的应用和示例 41
2.6.1 商业与职业 41
2.6.2 法律与合规 42
2.6.3 医疗保健和健康 42
2.6.4 教育与研究 43
2.6.5 媒体与娱乐 43
2.6.6 技术与软件 43
2.6.7 个人发展与生活方式 44
2.6.8 金融与投资 45
2.6.9 运动与健康 45
2.6.10 其他 46
2.6.11 使用LLM的风险和伦理考量 46
2.7 本章小结 46
第3章 LLM实践 48
3.1 理解幻觉和偏见 48
3.1.1 通过控制输出减轻LLM的幻觉 49
3.1.2 解码方法 51
3.1.3 微调LLM 52
3.2 LLM性能评估 54
3.2.1 目标函数和评估指标 54
3.2.2 内在指标:困惑度 55
3.2.3 外部指标:基准测试 56
3.3 本章小结 58
第4章 提示技术简介 59
4.1 提示词和提示工程 59
4.2 提示技术 63
4.2.1 零样本提示 63
4.2.2 上下文学习和小样本提示 63
4.2.3 角色提示 64
4.2.4 链式提示 65
4.2.5 思维链提示 65
4.3 提示注入与安全 66
4.4 本章小结 68
第5章 RAG 70
5.1 为什么使用RAG 70
5.2 嵌入向量 71
5.3 向量数据库与向量存储 72
5.4 从头构建一个RAG管道 73
5.4.1 数据预处理 73
5.4.2 生成嵌入向量 75
5.4.3 查找相关文本块 76
5.4.4 测试余弦相似度 77
5.4.5 相似度计算实战 77
5.4.6 提示词增强 79
5.5 本章小结 82
第6章 LangChain和LlamaIndex简介 83
6.1 LLM框架 83
6.2 LangChain介绍 83
6.3 项目1:使用LangChain构建LLM驱动的应用 86
6.3.1 提示模板 86
6.3.2 摘要链示例 87
6.3.3 问答链示例 88
6.4 项目2:构建新闻文章摘要器 89
6.5 LlamaIndex介绍 94
6.5.1 数据连接器 94
6.5.2 节点 95
6.5.3 索引 96
6.5.4 查询引擎 98
6.5.5 路由器 98
6.5.6 保存和加载本地索引 99
6.6 LangChain、LlamaIndex与OpenAI Assistants 99
6.7 本章小结 101
第7章 使用LangChain进行提示 102
7.1 LangChain提示模板 102
7.2 小样本提示和样例选择器 107
7.2.1 人类与AI的信息交互 108
7.2.2 小样本提示 108
7.2.3 样例选择器 110
7.3 LangChain链 114
7.3.1 使用LLMChain生成文本 114
7.3.2 在会话链中增加记忆 115
7.3.3 使用顺序链连接链 116
7.3.4 调试链 116
7.3.5 定制链 117
7.4 项目1:使用输出解析器管理输出 118
7.5 项目2:新闻文章摘要器的改进 127
7.6 项目3:基于文本数据创建知识图谱—揭示隐藏的连接 133
7.6.1 使用LangChain构建知识图谱 134
7.6.2 知识图谱可视化 135
7.7 本章小结 137
第8章 索引、检索与数据预处理 138
8.1 LangChain的索引和检索器 138
8.2 数据摄取 141
8.2.1 从PDF中加载数据 142
8.2.2 从网页中加载数据 142
8.2.3 从Google Drive 中加载数据 144
8.3 文本切分器 144
8.3.1 基于字符长度的文本切分 145
8.3.2 基于逻辑终点的文本切分 146
8.3.3 基于NLTK的其他语种切分 148
8.3.4 基于SpaCy的其他语种切分 148
8.3.5 Markdown格式的文本切分 149
8.3.6 基于Token的文本切分 151
8.4 相似性搜索与嵌入向量 152
8.4.1 开源嵌入模型 153
8.4.2 Cohere嵌入 154
8.5 项目1:客服问答聊天机器人 156
8.5.1 工作流程 157
8.5.2 文档切分及向量化 158
8.5.3 基于策略设计提示词 159
8.5.4 基于LLM生成回答 160
8.6 项目2:基于Whisper和LangChain的YouTube视频摘要器 161
8.6.1 使用Whisper进行音频转录 163
8.6.2 切分文档并生成摘要 163
8.6.3 将转录内容添加到Deep Lake 166
8.7 项目3:为你的知识库创建语音助手 169
8.7.1 从Hugging Face Hub获取内容 170
8.7.2 加载和切分文本 171
8.7.3 嵌入向量以及Deep Lake库 172
8.7.4 创建语音助手 173
8.7.5 基于Streamlit构建交互界面 175
8.8 通过自批判链防止输出不良内容 177
8.9 在客服问答聊天机器人中防止输出不良内容 181
8.10 本章小结 185
第9章 高级RAG 187
9.1 从概念验证到产品:RAG系统的挑战 187
9.2 使用LlamaIndex的高级RAG技术 187
9.2.1 嵌入模型与LLM微调 189
9.2.2 RAG监控与评估 189
9.2.3 混合检索与嵌入向量检索 189
9.3 LlamaIndex查询 189
9.3.1 查询构建 190
9.3.2 查询扩展 190
9.3.3 查询转换 191
9.3.4 使用查询引擎来回答问题 191
9.3.5 重排序 195
9.3.6 递归检索与从小到大的检索 197
9.4 RAG指标与评估 198
9.4.1 RAG与LLM评估指标 198
9.4.2 检索评估指标 200
9.4.3 基于社区的评估工具 202
9.4.4 自定义RAG评估工作流 205
9.5 LangChain的LangSmith与LangChain Hub 210
9.6 本章小结 214
第 10章 智能体 215
10.1 什么是智能体:大模型作为推理引擎 215
10.2 AutoGPT和BabyAGI概述 220
10.2.1 AutoGPT 220
10.2.2 使用AutoGPT与LangChain 221
10.2.3 BabyAGI 227
10.2.4 使用BabyAGI与LangChain 229
10.3 LangChain中的智能体仿真项目 232
10.3.1 CAMEL项目 233
10.3.2 生成式智能体 234
10.4 项目1:构建创建分析报告的智能体 235
10.5 项目2:使用LlamaIndex查询和汇总数据库 242
10.5.1 第 1步:定义数据源并创建向量存储索引 242
10.5.2 第 2步:配置查询引擎 244
10.5.3 第3步:开发会话智能体 245
10.5.4 第4步:为智能体添加自定义函数 246
10.6 项目3:使用OpenAI Assistants构建智能体 249
10.7 项目4:LangChain OpenGPTs 251
10.8 项目5:对PDF中的财务信息进行多模态分析 253
10.8.1 数据提取 253
10.8.2 存储在Deep Lake中 257
10.8.3 微调嵌入空间 259
10.8.4 聊天机器人实战 262
10.9 本章小结 264
第 11章 微调 265
11.1 理解微调 265
11.2 LoRA 266
11.3 项目1:使用LoRA进行SFT 267
11.3.1 加载数据集 268
11.3.2 设置LoRA配置和训练超参数 270
11.3.3 合并LoRA和OPT参数 272
11.3.4 推理 274
11.4 项目2:使用SFT和LoRA进行金融情感分析 276
11.4.1 加载数据集 277
11.4.2 初始化模型和训练器 278
11.4.3 合并LoRA和OPT 280
11.4.4 推理 281
11.5 项目3:用医疗数据微调Cohere LLM 283
11.5.1 Cohere API 283
11.5.2 数据集 284
11.5.3 微调 287
11.6 RLHF 290
11.7 项目4:使用RLHF改进LLM 292
11.7.1 SFT 293
11.7.2 训练奖励模型 297
11.7.3 强化学习 300
11.7.4 推理 305
11.8 本章小结 307
第 12章 部署与优化 309
12.1 模型蒸馏和教师模型 309
12.2 LLM部署优化:量化、剪枝和投机解码 312
12.2.1 模型量化 313
12.2.2 量化LLM 315
12.2.3 模型剪枝 316
12.2.4 投机解码 318
12.3 项目:使用谷歌云平台上的CPU部署量化模型 319
12.3.1 量化模型 320
12.3.2 使用量化模型进行推理 322
12.3.3 使用谷歌云平台上的计算引擎部署量化模型 323
12.4 在云服务提供商上部署开源LLM 325
12.5 本章小结 326
总结 328
浏览器不支持脚本!
摘要:路易斯-弗朗索瓦·布沙尔的《动手构建大模型》是一部兼具理论深度与实践指导的力作,围绕大模型的设计、训练、优化和应用进行了系统阐述。书中不仅解释了大模型背后的数学原理与算法架构,还详细讲解了数据预处理、模型训练策略、性能评估方法以及实际部署技巧,使读者能够从零开始构建自己的大模型。全书语言通俗易懂,同时又不失专业性,适合科研人员、工程师以及人工智能爱好者阅读。通过作者的循序渐进讲解,读者能够理解大模型的核心机制,掌握实现高效训练和调优的实用技巧,并能够将理论应用于实际场景,为人工智能的创新应用奠定坚实基础。
1、大模型理论基础
《动手构建大模型》首先对大模型的基本概念进行了系统讲解。书中指出,大模型不仅仅是参数量大的神经网络,更是一种能够捕捉复杂数据模式的计算架构。作者通过直观的图示和案例,解释了大模型的层次结构、注意力机制以及多模态处理能力,使读者能够建立清晰的理论框架。
在数学原理方面,布沙尔详细分析了梯度下降、反向传播、正则化等关键算法对大模型训练的重要性。通过结合公式推导和图形示例,读者可以直观理解各类优化方法如何在实际训练中提升模型性能。尤其是对大模型特有的梯度消失、梯度爆炸问题,书中提供了深入的理论分析和解决策略。
此外,书中对大模型的容量、泛化能力和计算复杂度进行了深入探讨。作者通过对比实验和性能指标,说明了模型规模与实际任务效果之间的关系,强调在构建大模型时需要在准确性与计算资源之间取得平衡。这一部分内容为后续实践提供了坚实的理论支持。
2、数据处理与准备
布沙尔在书中强调数据的重要性,指出高质量的数据是大模型成功的核心。书中详细讲解了数据清洗、标注、增强和归一化等步骤,使读者能够理解数据在模型训练中的关键作用。作者通过实例展示了如何对大规模数据进行处理,以确保模型输入的稳定性和可靠性。
在数据预处理方面,书中提出了多种有效方法,包括去噪、缺失值处理、类别均衡和特征工程。通过这些方法,读者能够提升模型的训练效率和泛化能力。同时,布沙尔结合真实案例,分析了不同预处理方法对模型性能的影响,让理论知识具备实践指导价值。
书中还介绍了数据集划分策略、批处理技术和数据流水线构建。作者通过示例说明如何在保证数据多样性的前提下,优化训练和验证过程,从而最大化模型效果。这部分内容为后续训练和调优提供了坚实的数据基础。
3、模型训练与优化
在模型训练部分,布沙尔详细讲解了从模型初始化到收敛的整个流程。书中介绍了不同的优化器选择、学习率调节策略以及训练批次设计,帮助读者理解如何高效训练大规模模型。作者还针对训练中常见的问题,如过拟合和欠拟合,提出了具体解决方法和调优技巧。
对于大模型特有的训练难题,书中提供了分布式训练和混合精度训练方案。通过详细的步骤说明和代码示例,读者能够掌握如何利用多GPU或多节点环境加速模型训练。这部分内容既有理论深度,又兼具实践操作性,是构建大模型的关键环节。
此外,书中还探讨了模型评估和性能监控方法。作者通过对训练曲线、损失函数和指标的分析,指导读者如何判断模型训练是否达到最佳状态,并结合案例讲解了模型微调和早停策略,使训练过程更加高效且稳定。
4、模型应用与部署
布沙尔在书中深入探讨了大模型在实际场景中的应用价值。作者列举了自然语言处理、计算机视觉、推荐系统等领域的典型案例,说明了大模型如何提升任务精度和用户体验。同时,书中强调了应用落地中数据安全和隐私保护的重要性。
在模型部署方面,书中提供了完整的流程,包括模型压缩、量化、推理优化和服务接口设计。通过实例演示,读者可以掌握如何将训练好的大模型在不同硬件环境中高效运行,保证响应速度和计算资源利用率。
此外,布沙尔还分析了大模型应用中的挑战,如延迟优化、模型更新和持续学习机制。作者提出了一系列实用策略,帮助读者在实际部署过程中不断优化模型性能,并能够根据业务需求进行灵活调整。
总结:
《动手构建大模型》系统而全面地展示了大模型的理论基础、数据处理、训练优化及应用部署全过程。书中不仅讲解了核心算法与实践方法,还结合丰富案例和图示,使复杂概念更易理解,帮助读者从零起步逐步掌握大模型构建技能。
通过阅读本书,读者能够在理论理解的基础上,掌握实际操作技巧,实现大模型从设计到部署的全流程管理,为人工智能项目提供有力支撑。无论是科研探索还是工程实践,《动手构建大模型》都为读者提供了详尽且可操作的指南。
本文由nayona.cn整理
联系我们

关注公众号

微信扫一扫
支付宝扫一扫 