大模型应用开发:RAG入门与实战

978-7-115-64893-8
作者: 陈明明
译者:
编辑: 张涛

图书目录:

第 1章 RAG概述 001

1.1 人工智能和自然语言处理概述 001

1.1.1 人工智能的定义和发展历史 001

1.1.2 自然语言处理的概念和基本任务 001

1.2 自然语言处理在大数据时代的挑战与机遇 003

1.2.1 大数据时代对自然语言处理的影响 003

1.2.2 大数据时代的自然语言处理技术发展趋势 004

1.3 基于RAG的大模型文档搜索概述 006

1.3.1 RAG模型的含义和基本原理 006

1.3.2 大模型文档搜索在信息检索领域的重要性 007

1.4 基于RAG的大模型文档搜索的工作原理 008

1.4.1 Retriever模块的工作原理 008

1.4.2 Generator模块的工作原理 009

1.4.3 Ranker模块的工作原理 011

1.5 基于RAG的大模型文档搜索的优势和应用场景 012

1.5.1 优势 012

1.5.2 应用场景 014

第 2章 PyTorch编程基础 017

2.1 PyTorch简介 017

2.2 PyTorch安装与环境配置 018

2.2.1 安装PyTorch 018

2.2.2 环境配置 019

2.2.3 常见安装问题及解决方法 019

2.3 PyTorch张量 020

2.3.1 张量的创建 020

2.3.2 张量的基本运算 023

2.3.3 张量的索引和切片 026

2.3.4 张量的形状操作 029

2.4 PyTorch自动微分 032

2.4.1 梯度计算 032

2.4.2 反向传播 033

2.4.3 停止梯度传播 035

2.5 PyTorch模型构建 037

2.5.1 搭建神经网络模型 037

2.5.2 模型参数的访问和初始化 039

2.6 PyTorch数据加载与预处理 041

2.6.1 数据加载 041

2.6.2 数据预处理 043

2.7 PyTorch模型训练与评估 045

2.7.1 模型训练 045

2.7.2 模型评估 049

2.8 PyTorch模型保存与加载 053

2.8.1 模型的保存 053

2.8.2 模型的加载 054

2.9 小结 056

第3章 深度学习基础 057

3.1 感知机和多层感知机 057

3.1.1 感知机的原理和结构 057

3.1.2 多层感知机的结构和前向传播 058

3.1.3 多层感知机的训练算法 059

3.2 卷积神经网络 061

3.2.1 卷积层和池化层 061

3.2.2 CNN的典型结构:LeNet、AlexNet、VGG、ResNet 064

3.3 循环神经网络 073

3.3.1 RNN的结构和原理 073

3.3.2 长短期记忆网络 075

3.3.3 门控循环单元 076

3.4 Transformer模型 078

3.4.1 Self-Attention机制 078

3.4.2 Transformer架构 080

3.4.3 Transformer在机器翻译、语言建模等任务中的应用 084

3.5 BERT模型 084

3.5.1 BERT的预训练任务和目标 084

3.5.2 BERT的结构、原理和应用 088

3.6 GPT大模型 089

3.6.1 GPT的预训练任务和目标 089

3.6.2 GPT的结构、原理和应用 090

3.7 深度学习的优化算法 091

3.7.1 梯度下降和反向传播 091

3.7.2 SGD和Adam 094

3.7.3 学习率调整策略 096

3.8 深度学习的正则化和防止过拟合方法 099

3.8.1 L1和L2正则化 099

3.8.2 Dropout和Batch Normalization 101

第4章 自然语言处理基础 103

4.1 基础知识 103

4.1.1 分词算法 103

4.1.2 关键词提取 106

4.1.3 摘要提取 110

4.2 模型如何看懂文字 113

4.3 ChatGPT大模型 117

4.3.1 GPT模型的发展历程 118

4.3.2 ChatGPT模型概述 119

4.3.3 ChatGPT模型的原理和发展方向 120

第5章 Web可视化 121

5.1 Streamlit介绍 121

5.1.1 概述 121

5.1.2 主要功能 122

5.1.3 应用场景 132

5.2 Gradio介绍 145

5.2.1 概述 145

5.2.2 主要功能 147

5.2.3 应用场景 153

第6章 RAG文档分块和向量化 164

6.1 文档分块概述 164

6.1.1 文档分块的定义和作用 164

6.1.2 常见的文档分块算法 166

6.1.3 文档分块在信息检索和自然语言处理中的应用 168

6.2 文档分块方法 171

6.2.1 基于规则的文档分块方法 171

6.2.2 基于机器学习的文档分块方法 173

6.2.3 基于深度学习的文档分块方法 174

6.3 文档向量化概述 178

6.3.1 文档向量化的定义和作用 178

6.3.2 文档向量化在自然语言处理中的应用场景 179

6.3.3 文档向量化的评估指标 181

6.4 基于词袋模型的文档向量化方法 183

6.4.1 词频矩阵 183

6.4.2 TF-IDF矩阵     185

6.4.3 Hot编码 187

6.4.4 哈希编码 188

6.5 基于词嵌入模型的文档向量化方法 190

6.5.1 Word2Vec 190

6.5.2 fastText 191

6.5.3 Doc2Vec 193

6.6 基于预训练模型的文档向量化方法 195

6.6.1 BERT文档向量化 195

6.6.2 GPT文档向量化 197

第7章 RAG向量检索技术 199

7.1 向量检索技术的定义和应用场景 199

7.1.1 向量检索技术的定义 199

7.1.2 向量检索技术的应用场景 200

7.2 向量间距离的计算 204

7.2.1 内积距离 204

7.2.2 欧式距离 206

7.2.3 汉明距离 207

7.2.4 杰卡德距离 208

7.3 基于树的方法 210

7.3.1 KNN算法 210

7.3.2 KD-树 211

7.3.3 Annoy 212

7.4 基于哈希的方法 214

第8章 RAG中的Prompt技术 216

8.1 特定指令模式 217

8.2 指令模板模式 223

8.3 代理模式 227

8.4 示例模式 231

8.5 零样本提示模式 231

8.6 少样本提示模式 233

8.7 思维链提示模式 234

8.7.1 零样本CoT 235

8.7.2 少样本CoT 237

第9章 动手实现PDF阅读器 239

9.1 PDF内容提取 239

9.2 PDF文档分块 241

9.3 PDF文档向量化 243

9.4 PDF文档相似度计算 244

9.5 大模型回答 246

详情

本书详细解析了RAG(Retrieval-Augmented Generation,检索增强生成)技术及其应用,从文档的分块与向量化,到利用深度学习模型进行向量检索,再到结合Prompt技术以实现精准响应,每个知识点都有清晰的逻辑阐述与实践案例;同时,介绍了PyTorch编程基础与深度学习核心概念。此外,本书还涵盖了一系列实用技术,如Web可视化工具Streamlit与Gradio的使用,以及如何利用这些工具快速构建交互式界面,直观展示RAG技术的效果。最后,通过动手实现PDF阅读器的实例,读者能亲自体验从理论到实践的过程,加深对RAG技术的理解与掌握。 本书内容通俗易懂,适合对文档搜索和RAG应用感兴趣的读者阅读,也可以作为从事大语言模型相关工作的人员的参考书。

图书摘要

相关图书

推荐系统:产品与算法解析
推荐系统:产品与算法解析
AI辅助编程实战
AI辅助编程实战
深入理解Prometheus监控系统
深入理解Prometheus监控系统
流式系统
流式系统
程序员的制胜技
程序员的制胜技
Verilog HDL程序设计教程(第2版)
Verilog HDL程序设计教程(第2版)

相关文章

相关课程