《大模型RAG實戰:RAG原理、應用與係統構建》封麵

內容簡介

這是一本全麵講解RAG技術原理、實戰應用與係統構建的著作。作者結合自身豐富的實戰經驗,詳細闡述了RAG的基礎原理、核心組件、優缺點以及使用場景,同時探討了RAG在大模型應用開發中的變革與潛力。書中不僅揭示了RAG技術背後的數學原理,還通過豐富的案例與代碼實現,引導讀者從理論走向實踐,輕鬆掌握RAG係統的構建與優化。無論你是深度學習初學者,還是希望提升RAG應用技能的開發者,本書都將為你提供寶貴的參考與指導。

通過閱讀本書,你將掌握以下知識:

RAG的召回和生成模塊算法

高級RAG係統的構建技巧

RAG係統的各種訓練方法

RAG的範式變遷

零基礎搭建RAG係統

高級RAG係統微調與搭建

作者簡介

汪鵬

資深NLP技術專家和AI技術專家,擁有多年NLP落地經驗。擅長結合用戶場景,針對性地設計圖譜、問答、檢索、多模態、AIGC等相關的算法和落地方案。在Kaggle獲得多枚獎牌,等級master。擁有公眾號“NLP前沿”。

穀清水

畢業於清華大學,有國內多家大廠工作經歷,7年深度學習項目開發經驗。在KDD-CUP等機器學習競賽中多次獲獎,持有多項發明專利。知乎ID:“戰士金”。

卞龍鵬

某上市公司資深AI算法工程師,多年互聯網一線工作經驗,10年機器學習與數據挖掘經驗。持多項發明專利,發表多篇SCI文章,主攻機器視覺、模式識別、自然語言處理。

目錄

目  錄Contents
前 言
第一部分 基礎
第1章 RAG與大模型應用 2
1.1 大模型應用的方向:RAG  2
1.1.1 什麼是RAG  2
1.1.2 RAG與模型微調的對比  5
1.1.3 RAG帶來的範式改變  5
1.2 為什麼需要RAG  6
1.2.1 大模型的知識更新問題  6
1.2.2 大模型生成結果的不可解釋性問題  8
1.2.3 大模型的數據泄露問題  8
1.2.4 大模型的訓練成本問題  9
1.3 RAG的工作流程  9
1.3.1 數據準備  10
1.3.2 數據召回  11
1.3.3 答案生成  12
1.4 RAG的優缺點  12
1.4.1 RAG的優點  12
1.4.2 RAG的缺點  13
1.5 RAG的使用場景  14
1.6 RAG麵臨的挑戰  16
1.6.1 LLM的伸縮法則與知識庫大小的關係  16
1.6.2 相似度搜索的性能問題  17
1.7 本章小結  19
第2章 語言模型基礎 20
2.1 Transformer  20
2.1.1 詞嵌入  24
2.1.2 編碼器  35
2.1.3 解碼器  39
2.1.4 解碼頭  41
2.2 自動編碼器  41
2.2.1 ELMo  42
2.2.2 BERT  43
2.3 自回歸模型  47
2.3.1 GPT  48
2.3.2 LLaMA  53
2.4 本章小結  56
第3章 文本召回模型 58
3.1 文本召回模型基礎  58
3.2 稠密向量檢索模型  61
3.2.1 SimCSE  61
3.2.2 SBERT  63
3.2.3 CoSENT  64
3.2.4 WhiteBERT  65
3.2.5 SGPT  66
3.3 稀疏向量檢索模型  67
3.3.1 樸素詞袋模型  67
3.3.2 TF-IDF  68
3.3.3 BM25  70
3.4 重排序模型  71
3.5 本章小結  72
第二部分 原理
第4章 RAG核心技術與優化方法 74
4.1 提示詞工程  74
4.1.1 提示詞工程基礎  74
4.1.2 RAG場景下的提示詞設計  81
4.2 文本切塊  83
4.2.1 固定大小文本切塊  84
4.2.2 基於NLTK的文本切塊  85
4.2.3 特殊格式文本切塊  85
4.2.4 基於深度學習模型的文本切塊  86
4.3 向量數據庫  87
4.3.1 Faiss  88
4.3.2 Milvus  92
4.3.3 Weaviate  93
4.3.4 Chroma  93
4.3.5 Qdrant  93
4.4 召回環節優化  94
4.4.1 短文本全局信息增強  94
4.4.2 召回內容上下文擴充  95
4.4.3 文本多向量表示  96
4.4.4 查詢內容優化  98
4.4.5 召回文本重排序  101
4.4.6 多檢索器融合  102
4.4.7 結合元數據召回  104
4.5 效果評估  107
4.5.1 召回環節評估  107
4.5.2 模型回答評估  109
4.6 LLM能力優化  115
4.6.1 LLM微調  115
4.6.2 FLARE  117
4.6.3 Self-RAG  119
4.7 本章小結  120
第5章 RAG範式演變 121
5.1 基礎RAG係統  121
5.1.1 基礎流程  121
5.1.2 存在的問題  122
5.2 先進RAG係統  125
5.3 大模型主導的RAG係統  127
5.4 多模態RAG係統  131
5.5 本章小結  135
第6章 RAG係統訓練 136
6.1 RAG係統的訓練難點  136
6.2 訓練方法  138
6.3 獨立訓練  138
6.4 序貫訓練  139
6.4.1 凍結召回模塊  140
6.4.2 凍結生成模塊  141
6.5 聯合訓練  143
6.5.1 異步更新索引  143
6.5.2 批近似  147
6.6 本章小結  149
第三部分 實戰
第7章 基於LangChain實現RAG應用 152
7.1 LangChain基礎模塊  152
7.2 基於LangChain實現RAG  156
7.3 基於Streamlit搭建一個ChatPDF可視化應用  158
7.4 本章小結  161
第8章 RAG係統構建與微調實戰 162
8.1 向量模型構建  162
8.1.1 模型選型  162
8.1.2 訓練數據構造  163
8.1.3 向量模型訓練  166
8.1.4 向量模型聯合訓練  167
8.2 大模型指令微調  175
8.3 複雜問題處理  179
8.3.1 微調數據構造  180
8.3.2 微調數據處理  194
8.3.3 複雜問題推理處理  200
8.4 本章小結  203
······

最後修改:2025 年 07 月 18 日