相關主題
商品描述
人工智能已在多個行業得到成功應用,大模型的應用已成為突破性進展的重要驅動力,而在特定垂直領域,如醫療、法律、金融等,大模型微調面臨獨特的挑戰和需求。本書致力於大型語言模型微調與應用的關鍵技術,本書探討兩個熱門應用方向:大模型的知識專業性和時效性。本書剖析了垂直領域大模型訓練的背景及意義,探討大模型在垂直領域的遷移學習、應用部署與效果評估等核心內容,結合實際案例,深入淺出地解析了每個環節的關鍵問題和解決方案,引領讀者瞭解行業內最新研究成果與發展趨勢,方便讀者快捷地嫁接到各個行業。
目錄大綱
目 錄
第1章 從零開始大模型之旅 1
1.1 對話機器人歷史 1
1.1.1 人機同頻交流 1
1.1.2 人機對話發展歷史 2
1.2 人工智能 4
1.2.1 從感知到創造 4
1.2.2 通用人工智能 7
1.2.3 發展方向 9
1.2.4 本書焦點 10
1.3 本章小結 11
第2章 大模型私有化部署 12
2.1 CUDA環境準備 12
2.1.1 基礎環境 12
2.1.2 大模型運行環境 13
2.1.3 安裝顯卡驅動 14
2.1.4 安裝CUDA 18
2.1.5 安裝cuDNN 24
2.2 深度學習環境準備 26
2.2.1 安裝Anaconda環境 26
2.2.2 服務器環境下的環境啟動 30
2.2.3 安裝PyTorch 32
2.3 GLM-3和GLM-4 34
2.3.1 GLM-3介紹 34
2.3.2 GLM-4介紹 36
2.4 GLM-4私有化部署 36
2.4.1 創建虛擬環境 37
2.4.2 下載GLM-4項目文件 37
2.4.3 安裝項目依賴包 39
2.4.4 下載模型權重 40
2.5 運行GLM-4的方式 41
2.5.1 基於命令行的交互式對話 42
2.5.2 基於Gradio庫的Web端對話應用 42
2.5.3 OpenAI風格的API調用方法 43
2.5.4 模型量化部署 45
2.6 本章小結 47
第3章 大模型理論基礎 49
3.1 自然語言領域中的數據 49
3.1.1 時間序列數據 49
3.1.2 分詞 50
3.1.3 Token 53
3.1.4 Embedding 53
3.1.5 語義向量空間 54
3.2 語言模型歷史演進 55
3.2.1 語言模型歷史演進 55
3.2.2 統計語言模型 57
3.2.3 神經網絡語言模型 58
3.3 註意力機制 58
3.3.1 RNN模型 58
3.3.2 Seq2Seq模型 60
3.3.3 Attention註意力機制 62
3.4 Transformer架構 65
3.4.1 整體架構 65
3.4.2 Self-Attention 66
3.4.3 Multi-Head Attention 68
3.4.4 Encoder 68
3.4.5 Decoder 70
3.4.6 實驗效果 71
3.5 本章小結 72
第4章 大模型開發工具 73
4.1 Huggingface 73
4.1.1 Huggingface介紹 73
4.1.2 安裝Transformers庫 77
4.2 大模型開發工具 79
4.2.1 開發範式 79
4.2.2 Transformers庫核心設計 80
4.3 Transformers庫詳解 84
4.3.1 NLP任務處理全流程 84
4.3.2 數據轉換形式 86
4.3.3 Tokenizer 88
4.3.4 模型加載和解讀 92
4.3.5 模型的輸出 94
4.3.6 模型的保存 97
4.4 全量微調訓練方法 98
4.4.1 Datasets庫和Accelerate庫 98
4.4.2 數據格式 101
4.4.3 數據預處理 103
4.4.4 模型訓練的參數 106
4.4.5 模型訓練 108
4.4.6 模型評估 110
4.5 本章小結 115
第5章 高效微調方法 117
5.1 主流的高效微調方法介紹 117
5.1.1 微調方法介紹 117
5.1.2 Prompt的提出背景 119
5.2 PEFT庫快速入門 121
5.2.1 介紹 121
5.2.2 設計理念 122
5.2.3 使用 125
5.3 Prefix Tuning 129
5.3.1 背景 129
5.3.2 核心技術解讀 129
5.3.3 實現步驟 131
5.3.4 實驗結果 134
5.4 Prompt Tuning 135
5.4.1 背景 135
5.4.2 核心技術解讀 136
5.4.3 實現步驟 137
5.4.4 實驗結果 139
5.5 P-Tuning 140
5.5.1 背景 140
5.5.2 核心技術解讀 141
5.5.3 實現步驟 142
5.5.4 實驗結果 144
5.6 P-Tuning V2 145
5.6.1 背景 145
5.6.2 核心技術解讀 146
5.6.3 實現步驟 147
5.6.4 實驗結果 149
5.7 本章小結 150
第6章 LoRA微調GLM-4實戰 151
6.1 LoRA 151
6.1.1 背景 151
6.1.2 核心技術解讀 152
6.1.3 LoRA的特點 153
6.1.4 實現步驟 155
6.1.5 實驗結果 157
6.2 AdaLoRA 157
6.2.1 LoRA的缺陷 157
6.2.2 核心技術解讀 158
6.2.3 實現步驟 160
6.2.4 實驗結果 161
6.3 QLoRA 162
6.3.1 背景 162
6.3.2 技術原理解析 163
6.4 量化技術 165
6.4.1 背景 165
6.4.2 量化技術分類 165
6.4.3 BitsAndBytes庫 166
6.4.4 實現步驟 166
6.4.5 實驗結果 169
6.5 本章小結 169
第7章 提示工程入門與實踐 170
7.1 探索大模型潛力邊界 170
7.1.1 潛力的來源 170
7.1.2 Prompt的六個建議 171
7.2 Prompt實踐 173
7.2.1 四個經典推理問題 173
7.2.2 大模型原始表現 175
7.3 提示工程 177
7.3.1 提示工程的概念 177
7.3.2 Few-shot 177
7.3.3 通過思維鏈提示法提升模型推理能力 180
7.3.4 Zero-shot-CoT提示方法 181
7.3.5 Few-shot-CoT提示方法 185
7.4 Least-to-Most Prompting(LtM提示方法) 188
7.4.1 Least-to-Most Prompting基本概念 188
7.4.2 Zero-shot-LtM提示過程 189
7.4.3 效果驗證 191
7.5 提示使用技巧 192
7.5.1 B.R.O.K.E提示框架 193
7.5.2 C.O.A.S.T提示框架 195
7.5.3 R.O.S.E.S提示框架 196
7.6 本章小結 197
第8章 大模型與中間件 198
8.1 AI Agent 198
8.1.1 從AGI到Agent 198
8.1.2 Agent概念 199
8.1.3 AI Agent應用領域 200
8.2 大模型對話模式 201
8.2.1 模型分類 201
8.2.2 多角色對話模式 203
8.3 多角色對話模式實戰 204
8.3.1 messages參數結構及功能解釋 204
8.3.2 messages參數中的角色劃分 205
8.4 Function Calling功能 207
8.4.1 發展歷史 208
8.4.2 簡單案例 209
8.5 實現多函數 214
8.5.1 定義多個工具函數 214
8.5.2 測試結果 217
8.6 Bing搜索嵌入LLM 217
8.6.1 曇花一現的Browsing with Bing 217
8.6.2 需求分析 218
8.6.3 Google搜索API的獲取和使用 220
8.6.4 構建自動搜索問答機器人 223
8.7 本章小結 225
第9章 LangChain理論與實戰 226
9.1 整體介紹 226
9.1.1 什麽是LangChain 226
9.1.2 意義 227
9.1.3 架構 228
9.2 Model I/O 229
9.2.1 架構 229
9.2.2 LLM 230
9.2.3 ChatModel 233
9.2.4 Prompt Template 234
9.2.5 實戰:LangChain接入本地GLM 237
9.2.6 Parser 239
9.3 Chain 240
9.3.1 基礎概念 240
9.3.2 常用的Chain 241
9.4 Memory 249
9.4.1 基礎概念 249
9.4.2 流程解讀 250
9.4.3 常用Memory 251
9.5 Agents 257
9.5.1 理論 257
9.5.2 快速入門 259
9.5.3 架構 262
9.6 LangChain實現Function Calling 266
9.6.1 工具定義 266
9.6.2 OutputParser 267
9.6.3 使用 268
9.7 本章小結 269
第10章 實戰:垂直領域大模型 270
10.1 QLoRA微調GLM-4 270
10.1.1 定義全局變量和參數 270
10.1.2 紅十字會數據準備 271
10.1.3 訓練模型 283
10.2 大模型接入數據庫 291
10.2.1 大模型挑戰 291
10.2.2 數據集準備 292
10.2.3 SQLite3 293
10.2.4 獲取數據庫信息 294
10.2.5 構建tools信息 297
10.2.6 模型選擇 298
10.2.7 效果測試 299
10.3 LangChain重寫查詢 300
10.3.1 環境配置 300
10.3.2 工具使用 301
10.4 RAG檢索增強 302
10.4.1 自動化數據生成 303
10.4.2 RAG搭建 303
10.5 本章小結 307
參考文獻 308