图书目录

目    录

第1章  RAG入门  1

1.1  RAG的定义  2

1.2  简易、高级和模块化RAG  3

1.3  RAG对比微调  4

1.4  RAG生态  5

1.4.1  检索器(D)  5

1.4.2  生成器(G)  7

1.4.3  评估器(E)  8

1.4.4  训练器(T)  8

1.5  简易、高级和模块化RAG代码  8

1.5.1  第1部分:搭建环境与基本实现  9

1.5.2  第2部分:高级方法与评估  13

1.6  小结  25

1.7  问题  26

1.8  参考文献  26

1.9  扩展阅读  26

第2章  基于Deep Lake和OpenAI的RAG嵌入向量库  27

2.1  从原始数据到嵌入  28

2.2  按流水线组织RAG  29

2.3  RAG生成式AI流水线  30

2.4  搭建RAG流水线  31

2.4.1  配置环境  31

2.4.2  流水线组件1:数据采集与准备  35

2.4.3  流水线组件2:数据嵌入与存储  38

2.4.4  流水线组件3:增强输入生成  43

2.5  小结  50

2.6  问题  51

2.7  参考文献  51

2.8  扩展阅读  51

第3章  使用LlamaIndex、Deep Lake和OpenAI构建基于索引的RAG  53

3.1  使用基于索引RAG的原因  54

3.2  为无人机创建语义搜索引擎和生成式智能体  56

3.2.1  安装环境  57

3.2.2  流水线组件1:采集并准备文档  57

3.2.3  流水线组件2:创建并填充Deep Lake向量库  60

3.2.4  流水线组件3:基于索引的RAG  64

3.3  向量库索引查询引擎  66

3.3.1  查询响应和来源  67

3.3.2  优化组块  68

3.3.3  性能指标  69

3.4  树索引查询引擎  70

3.5  列表索引查询引擎  72

3.6  关键词索引查询引擎  74

3.7  小结  76

3.8  问题  76

3.9  参考文献  77

3.10  扩展阅读  77

第4章  无人机技术中的多模态模块化RAG  79

4.1  多模态模块化RAG  80

4.2  编写无人机技术多模态模块化RAG程序  82

4.2.1  加载LLM数据集  82

4.2.2  加载和可视化多模态数据集  84

4.2.3  多模态数据集导航  87

4.2.4  创建多模态查询引擎  90

4.2.5  多模态模块化RAG小结  94

4.2.6  性能指标  95

4.3  小结  98

4.4  问题  99

4.5  参考文献  100

4.6  扩展阅读  100

第5章  使用专家人类反馈提升RAG性能  101

5.1  自适应RAG  102

5.2  使用Python创建混合自适应RAG  104

5.2.1  检索器  104

5.2.2  生成器  107

5.2.3  评估器  115

5.3  小结  120

5.4  问题  120

5.5  参考文献  121

5.6  扩展阅读  121

第6章  使用Pinecone扩展RAG银行客户数据  123

6.1  使用Pinecone进行扩展  124

6.2  流水线组件1:采集并准备数据集  125

6.2.1  采集和处理数据集  126

6.2.2  探索性数据分析  129

6.2.3  训练机器学习模型  132

6.3  流水线组件2:扩展Pinecone索引(向量库)  135

6.3.1  管理向量库所面临的挑战  136

6.3.2  安装环境  137

6.3.3  处理数据集  137

6.3.4  切块并嵌入数据集  138

6.3.5  创建Pinecone索引  142

6.3.6  更新插入  143

6.3.7  查询Pinecone索引  145

6.4  流水线组件3:RAG生成式AI  147

6.4.1  基于GPT-4的RAG  147

6.4.2  提取相关文本  149

6.4.3  增强提示词  150

6.4.4  增强生成  150

6.5  小结  153

6.6  问题  153

6.7  参考文献  154

6.8  扩展阅读  154

第7章  使用维基百科API和LlamaIndex创建可扩展的知识图谱RAG  155

7.1  基于知识图谱语义搜索的RAG架构  156

7.2  流水线组件1:采集并准备文档  160

7.2.1  检索维基百科数据及元数据  161

7.2.2  准备数据以执行更新插入  164

7.3  流水线组件2:创建并填充Deep Lake向量库  165

7.4  流水线组件3:基于知识图谱索引的RAG  166

7.4.1  生成知识图谱索引  167

7.4.2  展示图谱  168

7.4.3  与知识图谱索引交互  169

7.4.4  安装相似度分数计算库并定义函数  170

7.4.5  重排  170

7.4.6  示例指标  171

7.5  小结  176

7.6  问题  177

7.7  参考文献  177

7.8  扩展阅读  177

第8章  基于Chroma和Hugging Face Llama创建动态RAG  179

8.1  动态RAG架构  180

8.2  安装环境  182

8.2.1  Hugging Face  182

8.2.2  Chroma  184

8.3  激活会话时间  185

8.4  下载并准备数据集  186

8.5  嵌入并向Chroma插入数据  187

8.5.1  选择模型  188

8.5.2  嵌入并存储  189

8.5.3  展示嵌入  190

8.6  查询集合  191

8.7  提示与检索  194

8.8  使用Llama开发RAG  196

8.9  总会话时长  199

8.10  小结  199

8.11  问题  200

8.12  参考文献  200

8.13  扩展阅读  200

第9章  赋能AI模型:微调RAG数据和人类反馈  203

9.1  微调静态RAG数据的架构  204

9.2  安装环境  206

9.3  准备微调数据集  207

9.3.1  下载并可视化数据集  207

9.3.2  准备微调数据集  208

9.4  微调模型  209

9.5  使用经过微调的OpenAI模型  213

9.6  指标  215

9.7  小结  217

9.8  问题  218

9.9  参考文献  218

9.10  扩展阅读  218

第10章  使用Pinecone和OpenAI实现视频生成RAG  219

10.1  视频生成RAG架构  220

10.2  搭建视频生成环境  222

10.2.1  导入模块和库  223

10.2.2  GitHub  223

10.2.3  OpenAI  224

10.2.4  Pinecone  225

10.3  流水线组件1:生成器和注释器  225

10.3.1  AI视频数据集  226

10.3.2   生成器和注释器  233

10.4  流水线组件2:向量库管理器  239

10.5  流水线组件3:视频专家  244

10.6  小结  248

10.7  问题  248

10.8  参考文献  249

10.9  扩展阅读  249

附录    251