大模型應用開發:RAG 入門與實戰
陳明明
買這商品的人也買了...
-
$301OpenCL 異構並行程式設計實戰
-
$454JavaScript程序設計
-
$458直擊招聘 : 程序員面試筆試數據結構深度解析
-
$403深入 RabbitMQ
-
$505嵌入式 Linux 系統開發:基於 Yocto Project
-
$454Hyperledger Fabric 源代碼分析與深入解讀
-
$352FFmpeg 從入門到精通
-
$450$356 -
$450$383 -
$594$564 -
$658Hyperledger Fabric技術內幕:架構設計與實現原理
-
$352Hyperledger Fabric 菜鳥進階攻略
-
$454HyperledgerFabric 核心技術
-
$301cURL 必知必會
-
$305Spring Boot 微服務實戰:使用 RabbitMQ、Eureka、Ribbon、Zuul 和 Cucumber 開發 RESTful 服務
-
$474$450 -
$254超級帳本 HyperLedger Fabric 區塊鏈開發實戰
-
$1,080$853 -
$654$621 -
$719$683 -
$602深入理解 Linux 網絡: 修煉底層內功,掌握高性能原理
-
$654$621 -
$893$848 -
$602大語言模型開發:用開源模型開發本地系統
-
$680$530
相關主題
商品描述
本書詳細解析了RAG(Retrieval-Augmented Generation,檢索增強生成)技術及其應用,從文檔的分塊與向量化,到利用深度學習模型進行向量檢索,再到結合Prompt技術以實現精準響應,每個知識點都有清晰的邏輯闡述與實踐案例;同時,介紹了PyTorch編程基礎與深度學習核心概念。此外,本書還涵蓋了一系列實用技術,如Web可視化工具Streamlit與Gradio的使用,以及如何利用這些工具快速構建交互式界面,直觀展示RAG技術的效果。最後,通過動手實現PDF閱讀器的實例,讀者能親自體驗從理論到實踐的過程,加深對RAG技術的理解與掌握。
本書內容通俗易懂,適合對文檔搜索和RAG應用感興趣的讀者閱讀,也可以作為從事大語言模型相關工作的人員的參考書。
作者簡介
陈明明,数据科学博士,研究方向为自然语言处理、深度学习及贝叶斯统计;曾就职于微软,从事自然语言处理和人工智能的开发工作。
潘翔,计算机应用博士,研究方向为卷积网络、大数据分析、大语言模型、多模态数据分析;主持了国家自然科学基金、浙江省科学技术厅等重点项目,在IEEE Journal of Biomedical and Health Informatics、《计算机学报》等期刊和国际会议上发表30多篇论文;目前就职于浙江工业大学计算机科学与技术学院。
戴弘毅,毕业于维克森林大学和波士顿大学,研究方向为自然语言处理、深度学习及金融市场分析。
目錄大綱
第 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