ChatGLM3大模型本地化部署、應用開發與微調
王曉華
買這商品的人也買了...
-
$505CUDA 並行程序設計 : GPU 編程指南 (CUDA Programming: A Developer's Guide to Parallel Computing with GPUs)
-
$580$458 -
$414$393 -
$594$564 -
$588$559 -
$479$455 -
$680$537 -
$1,134$1,077 -
$948$901 -
$454從零開始大模型開發與微調:基於 PyTorch 與 ChatGLM
-
$720$569 -
$550$435 -
$600$570 -
$556大規模語言模型:從理論到實踐
-
$505LangChain 入門指南:構建高可復用、可擴展的 LLM 應用程序
-
$880$695 -
$474$450 -
$602大語言模型應用指南:以 ChatGPT 為起點,從入門到精通的 AI 實踐教程 (全彩)
-
$800$632 -
$505OpenAI API 接口應用實戰
-
$780$608 -
$474$450 -
$468$445 -
$650$507 -
$556C++ 之美:代碼簡潔、安全又跑得快的 30個要訣 (Beautiful C++: 30 Core Guidelines for Writing Clean, Safe, and Fast Code)
相關主題
商品描述
《ChatGLM3大模型本地化部署、應用開發與微調》作為《PyTorch 2.0深度學習從零開始學》的姊妹篇,專註於大模型的本地化部署、應用開發以及微調等。《ChatGLM3大模型本地化部署、應用開發與微調》不僅系統地闡述了深度學習大模型的核心理論,更註重實踐應用,通過豐富的案例和場景,引導讀者從理論走向實踐,真正領悟和掌握大模型本地化應用的精髓。 全書共分13章,全方位、多角度地展示了大模型本地化實戰的完整方案,內容包括大模型時代的開端、PyTorch 2.0深度學習環境搭建、基於gradio的雲上自托管ChatGLM3部署實戰、使用ChatGLM3與LangChain實現知識圖譜抽取和智能問答、適配ChatGLM3終端的Template與Chain詳解、ChatGLM3多文本檢索的增強生成實戰、構建以人為本的ChatGLM3規範化Prompt提示工程、使用ChatGLM3的思維鏈構建、GLM源碼分析與文本生成實戰、低資源單GPU微調ChatGLM3實戰、會使用工具的ChatGLM3、上市公司財務報表非結構化信息抽取實戰、上市公司財務報表智能問答與財務預警實戰。 《ChatGLM3大模型本地化部署、應用開發與微調》適合大模型的初學者、有一定基礎的大模型研究人員、大模型應用開發人員。同時,《ChatGLM3大模型本地化部署、應用開發與微調》還可作為高等院校或高職高專相關專業大模型課程的教材,助力培養新一代的大模型領域人才。
作者簡介
王曉華,高校計算機專業講師,研究方向為雲計算、大數據與人工智能。著有《PyTorch語音識別實戰》《從零開始大模型開發與微調:基於PyTorch與ChatGLM》《PyTorch 2.0深度學習從零開始學》《Python機器學習與可視化分析實戰》《谷歌JAX深度學習從零開始學》《Spark 3.0大數據分析與挖掘:基於機器學習》《TensorFlow深度學習應用實踐》《OpenCV TensorFlow深度學習與計算機視覺實戰》《TensorFlow知識圖譜實戰》《TensorFlow人臉識別實戰》《TensorFlow語音識別實戰》《TensorFlow Keras自然語言處理實戰》《TensorFlow 2.0卷積神經網絡實戰》《Keras實戰:基於TensorFlow2.2的深度學習實踐》《TensorFlow 2.0深度學習從零開始學》《深度學習的數學原理與實現》。
目錄大綱
目 錄
第1章 大模型時代的開端 1
1.1 大模型的歷史與發展 1
1.1.1 大模型的“涌現” 1
1.1.2 深度學習與大模型的起源 3
1.1.3 大模型的概念與特點 4
1.1.4 大模型開啟了深度學習的新時代 5
1.2 為什麽要使用大模型 6
1.2.1 大模型與普通模型的區別 7
1.2.2 為什麽選擇ChatGLM 8
1.2.3 大模型應用場合與發展趨勢 9
1.3 本章小結 10
第2章 PyTorch 2.0深度學習環境搭建 11
2.1 安裝Python開發環境 12
2.1.1 Miniconda的下載與安裝 12
2.1.2 PyCharm的下載與安裝 14
2.1.3 softmax函數練習 18
2.2 安裝PyTorch 2.0 19
2.2.1 NVIDIA 10/20/30/40系列顯卡選擇的GPU版本 19
2.2.2 PyTorch 2.0 GPU NVIDIA運行庫的安裝 19
2.2.3 Hello PyTorch 22
2.3 Hello ChatGLM3 23
2.3.1 ChatGLM3簡介與安裝 23
2.3.2 CPU版本的ChatGLM3推演 25
2.3.3 GPU(INT4或INT8量化)版本的ChatGLM3推演 26
2.3.4 GPU(half或float量化)版本的ChatGLM3推演 28
2.3.5 離線狀態的ChatGLM3的使用 29
2.3.6 ChatGLM的高級使用 30
2.4 本章小結 31
第3章 基於gradio的雲上自托管ChatGLM3部署實戰 32
3.1 gradio的基本使用詳解 32
3.1.1 從gradio的Interface開始 33
3.1.2 gradio輸入與輸出組件 35
3.1.3 啟動gradio的launch 41
3.1.4 gradio中多樣化的輸入和輸出組件 42
3.1.5 gradio中常用的幾個組件 45
3.1.6 使用gradio搭建視頻上色服務 57
3.2 基於gradio的貓狗分類可視化訓練與預測實戰 59
3.2.1 運行環境與數據集的準備 60
3.2.2 模型的設計 63
3.2.3 PyTorch模型訓練的基本流程 64
3.2.4 可視化訓練流程 65
3.2.5 使用訓練好的模型完成gradio可視化圖像分類 67
3.3 基於網頁端的ChatGLM3部署和使用 69
3.3.1 使用gradio搭建ChatGLM3網頁客戶端 70
3.3.2 使用ChatGLM3自帶的網頁客戶端 71
3.4 基於私有雲服務的ChatGLM3部署和使用 72
3.4.1 使用FastAPI完成ChatGLM3私有雲交互埠的搭建(重要) 73
3.4.2 基於streamlit的ChatGLM3自帶的網頁客戶端 74
3.5 本章小結 74
第4章 使用ChatGLM3與LangChain實現知識圖譜抽取和智能問答 75
4.1 當ChatGLM3遇見LangChain 76
4.1.1 LangChain的基本構成、組件與典型場景 76
4.1.2 確認統一地址的ChatGLM3部署方案 78
4.1.3 使用ChatGLM3構建LangChain的LLM終端 78
4.1.4 從一個簡單的提示模板開始 81
4.1.5 ChatGLM3格式化提示詞的構建與使用 82
4.2 ChatGLM3+ LangChain搭建專業問答機器人 84
4.2.1 使用LangChain的LLM終端完成文本問答 84
4.2.2 數據準備與基礎算法分析 86
4.2.3 使用LangChain完成提示語Prompt工程 87
4.2.4 基於ChatGLM3的LLM終端完成專業問答 88
4.3 使用ChatGLM3的LLM終端搭建知識圖譜抽取與智能問答 89
4.3.1 基於ChatGLM3的LLM終端完成知識圖譜抽取 89
4.3.2 基於ChatGLM3的LLM終端完成智能問答 91
4.4 本章小結 92
第5章 適配ChatGLM3終端的Template與Chain詳解 93
5.1 基於輸入模板的人機交互 93
5.1.1 提示模板的4種類型 94
5.1.2 可嵌套的提示模板 95
5.2 Template中示例的最佳選擇 97
5.2.1 基於長度的輸出示例 97
5.2.2 基於相似度的輸出示例 99
5.3 使用Chain提高ChatGLM3的能力 100
5.3.1 Chain的數學計算方法 101
5.3.2 多次驗證檢查器 101
5.4 LangChain中的記憶功能 102
5.4.1 ConversationChain會話鏈的使用 102
5.4.2 系統memory的使用 103
5.5 基於ChatGLM3終端撰寫劇情梗概、評論與宣傳文案實戰 105
5.5.1 對過程進行依次調用的順序鏈SimpleSequentialChain 105
5.5.2 對過程進行依次調用的順序鏈SequentialChain 107
5.5.3 對順序鏈添加額外參數的方法 109
5.6 本章小結 111
第6章 ChatGLM3多文本檢索的增強生成實戰 112
6.1 使用自然語言處理方法對目標進行查找 113
6.1.1 數據集的準備 113
6.1.2 分別基於BM25與LLM終端進行目標查找的方法 114
6.1.3 建立工業級標準化輸出:LLM終端與BM25結合 116
6.2 基於LLM終端完成文本內容抽取與文本問答 118
6.2.1 讀取目標內容 118
6.2.2 LangChain對文檔的讀取與分割方法 119
6.2.3 基於LangChain的文本分塊 123
6.2.4 找到最近似問題的文本段落 124
6.2.5 使用LLM終端完成智能文本問答 125
6.3 使用LLM終端完成反向問題推斷 127
6.3.1 文本問題提取實戰 127
6.3.2 存儲提取後的內容 130
6.4 本章小結 131
第7章 構建以人為本的ChatGLM3規範化Prompt提示工程 132
7.1 提示工程模板構建的輸入與輸出格式 132
7.1.1 提示模板的輸入格式 133
7.1.2 提示模板的輸出格式 135
7.2 提示工程模板高級用法 138
7.2.1 提示模板的自定義格式 138
7.2.2 提示模板的FewShotPromptTemplate格式 139
7.2.3 部分格式化的提示模板詳解 140
7.3 結合提示工程的網頁搜索服務實戰 142
7.3.1 網頁搜索的API實現 142
7.3.2 網頁問答提示模板的實現 143
7.3.3 結合網頁搜索的LLM終端問答實戰 144
7.4 本章小結 145
第8章 使用ChatGLM3的思維鏈構建 146
8.1 思維鏈初探 146
8.1.1 思維鏈源於人類使用自然語言的概念來理解事物 147
8.1.2 思維鏈的優勢與應用場景 147
8.2 思維鏈詳解及其實戰 149
8.2.1 思維鏈詳解 149
8.2.2 基於ChatGLM3的思維鏈實戰 150
8.3 本章小結 152
第9章 GLM源碼分析與文本生成實戰 153
9.1 GLM組件詳解 154
9.1.1 GLM模型架構重大突破:旋轉位置編碼 154
9.1.2 添加旋轉位置編碼的註意力機制 156
9.1.3 新型的激活函數GLU詳解 156
9.1.4 GLM“三角掩碼”與“錯位”輸入輸出格式詳解 157
9.2 GLM整體架構詳解與文本生成實戰 159
9.2.1 調整架構順序的GLMBlock 159
9.2.2 自定義GLM模型(單文本生成版) 162
9.3 本章小結 167
第10章 低資源單GPU微調ChatGLM3實戰 168
10.1 什麽是大模型微調 168
10.1.1 大模型微調的作用 169
10.1.2 大模型微調技術有哪些 169
10.1.3 參數高效微調詳解 170
10.2 ChatGLM3大模型微調的準備內容 171
10.2.1 從數據準備看ChatGLM3微調:有監督微調詳解 172
10.2.2 從實施看ChatGLM3微調:LoRA詳解 173
10.2.3 適配ChatGLM3微調的輔助庫:PEFT詳解 174
10.3 虛擬客服多輪問答實戰 180
10.3.1 ChatGLM3數據輸入結構和處理函數 181
10.3.2 ChatGLM3微調訓練 186
10.3.3 ChatGLM3微調推理 189
10.4 加速的秘密:accelerate訓練方法與模型量化詳解 191
10.4.1 加速器accelerate詳解與完整代碼編寫 192
10.4.2 加速的秘密1:大模型的量化技術 195
10.4.3 加速的秘密2:大模型的INT8量化方案 196
10.4.4 加速的秘密3:大模型ChatGLM3中的量化源碼分析與實踐 198
10.5 更快的量化訓練方案:QLoRA基礎內容詳解 200
10.5.1 加速的秘密4:基於bitsandbytes的ChatGLM3量化QLoRA實現 200
10.5.2 加速的秘密5:QLoRA詳解 202
10.5.3 微調的目的:讓生成的結果更聚焦於任務 205
10.6 QLoRA微調文本生成實戰 207
10.6.1 數據處理 207
10.6.2 損失函數設計 210
10.6.3 基於QLoRA的ChatGLM3文本生成微調實戰 211
10.6.4 基於QLoRA的ChatGLM3文本生成 213
10.7 本章小結 215
第11章 會使用工具的ChatGLM3 216
11.1 ChatGLM3調用工具源碼詳解與實戰 216
11.1.1 Python調用工具詳解 217
11.1.2 ChatGLM3工具調用流程詳解 218
11.1.3 大模型ChatGLM3工具調用實戰詳解 220
11.1.4 大模型ChatGLM3工具調用原理詳解 223
11.1.5 ChatGLM3消息傳遞方式詳解 230
11.2 ChatGLM3官方工具註冊與調用源碼分析與實戰 231
11.2.1 Python中的裝飾器與回調函數 231
11.2.2 ChatGLM3官方工具函數的註冊源碼分析詳解 233
11.2.3 大模型ChatGLM3官方工具調用的判定依據詳解 236
11.2.4 ChatGLM3官方工具函數的調用分析詳解 237
11.2.5 ChatGLM3調用工具分析與實戰演示 238
11.3 ChatGLM3實戰:構建個人助理之美妝助手 240
11.3.1 背景和參考資料設定 240
11.3.2 美妝助手的使用實戰 246
11.4 本章小結 247
第12章 上市公司財務報表非結構化信息抽取實戰 249
12.1 超長文本處理功能的ChatGLM3與真實財務報表的處理 250
12.1.1 ChatGLM3-6B-32K模型的獲取與緩存 250
12.1.2 超大規模的2020—2023年真實中國股票市場年度財務報表數據庫的建立 250
12.2 單報表非結構化信息抽取實戰 253
12.2.1 單報表數據探查與提取信息結構化處理 253
12.2.2 單報表數據非結構化信息抽取的實現 254
12.3 本章小結 256
第13章 上市公司財務報表智能問答與財務預警實戰 257
13.1 基於ChatGLM3的非結構化數據抽取與大規模財務報表數據庫的建立 257
13.1.1 逐行代碼講解使用ChatGLM3對關鍵數據進行抽取 258
13.1.2 大規模上市公司財務報表目標字段抽取函數的建立 260
13.1.3 大規模上市公司財務報表目標字段數據庫的建立 262
13.2 基於自然語言的上市公司財務報表智能問答與財務預警實戰 264
13.2.1 使用自然語言結合ChatGLM3實現上市公司財務報表智能問答與預警解決方案1 264
13.2.2 使用自然語言結合ChatGLM3-6B實現上市公司財務報表智能問答與預警解決方案2 267
13.2.3 使用自然語言結合ChatGLM3實現上市公司財務報表智能問答與預警解決方案3 270
13.3 本章小結 272
附錄 大模型的“幻覺” 273