LLM最強重武裝:RAG開發應用優化現場直擊
活動訊息
內容簡介
https://youtu.be/HpGOF5EbIk0
►全面掌握 RAG 技術原理與應用實戰
►從零開始構建文件檢索與回應生成系統
►涵蓋 LangChain、LlamaIndex 等主流框架
►逐步實作查詢引擎、對話引擎與 Data Agent
►實現多模態與 SQL 查詢、多階段檢索流程
►進階解析 Self-RAG、C-RAG 與 RAPTOR 新范式
►提供完整開發環境、部署策略與效能優化指南
►針對企業級應用設計 API 模組與前後端整合
►詳細講解 RAG 系統的評估標準與測試流程
►實例導向,完整涵蓋從理論到專案實作全流程
本書系統化解析 RAG(Retrieval-Augmented Generation)的技術核心、開發流程與工程實踐,從初學者能立即上手的簡易範例,到企業級部署場景中的最佳化策略與創新范式應用,涵蓋最完整的知識脈絡。使用 LlamaIndex、LangChain 等熱門框架,實作查詢引擎、對話引擎與多模態處理流程。針對開發者與實務導向需求,書中詳細講解資料載入、索引、檢索與回應生成等各階段設計重點,並引導讀者透過可追蹤、可自訂的模組打造高彈性 RAG 解決方案。進階章節聚焦於 C-RAG、Self-RAG、RAPTOR 等新型架構,並提供完整評估機制與部署架構,協助技術團隊有效實作生產環境,是不可或缺的現代生成式 AI 系統開發指南。
►全面掌握 RAG 技術原理與應用實戰
►從零開始構建文件檢索與回應生成系統
►涵蓋 LangChain、LlamaIndex 等主流框架
►逐步實作查詢引擎、對話引擎與 Data Agent
►實現多模態與 SQL 查詢、多階段檢索流程
►進階解析 Self-RAG、C-RAG 與 RAPTOR 新范式
►提供完整開發環境、部署策略與效能優化指南
►針對企業級應用設計 API 模組與前後端整合
►詳細講解 RAG 系統的評估標準與測試流程
►實例導向,完整涵蓋從理論到專案實作全流程
本書系統化解析 RAG(Retrieval-Augmented Generation)的技術核心、開發流程與工程實踐,從初學者能立即上手的簡易範例,到企業級部署場景中的最佳化策略與創新范式應用,涵蓋最完整的知識脈絡。使用 LlamaIndex、LangChain 等熱門框架,實作查詢引擎、對話引擎與多模態處理流程。針對開發者與實務導向需求,書中詳細講解資料載入、索引、檢索與回應生成等各階段設計重點,並引導讀者透過可追蹤、可自訂的模組打造高彈性 RAG 解決方案。進階章節聚焦於 C-RAG、Self-RAG、RAPTOR 等新型架構,並提供完整評估機制與部署架構,協助技術團隊有效實作生產環境,是不可或缺的現代生成式 AI 系統開發指南。
目錄
▌預備篇
►第1章 了解大模型與 RAG
1.1 初識大模型
1.1.1 大模型時代:生成式AI 應用的爆發
1.1.2 大模型應用的持續進化
1.1.3 大模型是無所不能的嗎
1.2 了解RAG
1.2.1 為什麼需要RAG
1.2.2 一個簡單的RAG 場景
1.3 RAG 應用的技術架構
1.3.1 RAG 應用的經典架構與流程
1.3.2 RAG 應用面臨的挑戰
1.3.3 RAG 應用架構的演進
1.4 關於RAG 的兩個話題
1.4.1 RAG 與微調的選擇
1.4.2 RAG 與具有理解超長上下文能力的大模型
►第2章 RAG 應用程式開發環境架設
2.1 開發RAG 應用的兩種方式
2.1.1 使用低程式開發平臺
2.1.2 使用大模型應用程式開發框架
2.2 RAG 應用程式開發環境準備
2.2.1 硬體環境建議
2.2.2 基礎大模型
2.2.3 嵌入模型
2.2.4 Python 虛擬執行環境
2.2.5 Python IDE 與開發外掛程式
2.2.6 向量庫
2.2.7 LlamaIndex 框架
2.3 關於本書開發環境的約定
【預備篇小結】
▌基礎篇
►第3章 初識 RAG 應用程式開發
3.1 開發一個最簡單的RAG 應用
3.1.1 使用原生程式開發
3.1.2 使用LlamaIndex 框架開發
3.1.3 使用LangChain 框架開發
3.2 如何追蹤與偵錯RAG 應用
3.2.1 借助LlamaDebugHandler
3.2.2 借助第三方的追蹤與偵錯平臺
3.3 準備:基於LlamaIndex 框架的RAG 應用程式開發核心組件
►第4章 模型與 Prompt
4.1 大模型
4.1.1 大模型在RAG 應用中的作用
4.1.2 大模型元件的統一介面
4.1.3 大模型元件的單獨使用
4.1.4 大模型元件的整合使用
4.1.5 了解與設置大模型的參數
4.1.6 自訂大模型元件
4.1.7 使用LangChain 框架中的大模型元件
4.2 Prompt
4.2.1 使用Prompt 範本
4.2.2 更改預設的Prompt 範本
4.2.3 更改Prompt 範本的變數
4.3 嵌入模型
4.3.1 嵌入模型在RAG 應用中的作用
4.3.2 嵌入模型元件的介面
4.3.3 嵌入模型元件的單獨使用
4.3.4 嵌入模型元件的整合使用
4.3.5 了解與設置嵌入模型的參數
4.3.6 自訂嵌入模型元件
►第5章 資料載入與分割
5.1 理解兩個概念:Document 與Node
5.1.1 什麼是Document 與Node
5.1.2 深入理解Document 與Node
5.1.3 深入理解Node 物件的中繼資料
5.1.4 生成Document 物件
5.1.5 生成Node 物件
5.1.6 中繼資料的生成與取出
5.1.7 初步了解IndexNode 類型
5.2 資料載入
5.2.1 從本地目錄中載入
5.2.2 從網路中載入資料
5.3 資料分割
5.3.1 如何使用資料分割器
5.3.2 常見的資料分割器
5.4 資料攝取管道
5.4.1 什麼是資料攝取管道
5.4.2 用於資料攝取管道的轉換器
5.4.3 自訂轉換器
5.4.4 使用資料攝取管道
5.5 完整認識資料載入階段
►第6章 資料嵌入與索引
6.1 理解嵌入與向量
6.1.1 直接用模型生成向量
6.1.2 借助轉換器生成向量
6.2 向量儲存
6.2.1 簡單向量儲存
6.2.2 第三方向量儲存
6.3 向量儲存索引
6.3.1 用向量儲存建構向量儲存索引物件
6.3.2 用Node 清單建構向量儲存索引物件
6.3.3 用文件直接建構向量儲存索引物件
6.3.4 深入理解向量儲存索引物件
6.4 更多索引類型
6.4.1 文件摘要索引
6.4.2 物件索引
6.4.3 知識圖譜索引
6.4.4 樹索引
6.4.5 關鍵字表索引
►第7章 檢索、回應生成與 RAG 引擎
7.1 檢索器
7.1.1 快速建構檢索器
7.1.2 理解檢索模式與檢索參數
7.1.3 初步認識遞迴檢索
7.2 回應生成器
7.2.1 建構回應生成器
7.2.2 回應生成模式
7.2.3 回應生成器的參數
7.2.4 實現自訂的回應生成器
7.3 RAG 引擎:查詢引擎
7.3.1 建構內建類型的查詢引擎的兩種方法
7.3.2 深入理解查詢引擎的內部結構和執行原理
7.3.3 自訂查詢引擎
7.4 RAG 引擎:對話引擎
7.4.1 對話引擎的兩種建構方法
7.4.2 深入理解對話引擎的內部結構和執行原理
7.4.3 理解不同的對話模式
7.5 結構化輸出
7.5.1 使用output_cls 參數
7.5.2 使用輸出解析器
【基礎篇小結】
▌高級篇
►第8章 RAG 引擎高級開發
8.1 檢索前查詢轉換
8.1.1 簡單查詢轉換
8.1.2 HyDE 查詢轉換
8.1.3 多步查詢轉換
8.1.4 子問題查詢轉換
8.2 檢索後處理器
8.2.1 使用節點後處理器
8.2.2 實現自訂的節點後處理器
8.2.3 常見的預先定義的節點後處理器
8.2.4 Rerank 節點後處理器
8.3 語義路由
8.3.1 了解語義路由
8.3.2 帶有路由功能的查詢引擎
8.3.3 帶有路由功能的檢索器
8.3.4 使用獨立的選擇器
8.3.5 可多選的路由查詢引擎
8.4 SQL 查詢引擎
8.4.1 使用NLSQLTableQueryEngine 元件
8.4.2 基於即時資料表檢索的查詢引擎
8.4.3 使用SQL 檢索器
8.5 多模態文件處理
8.5.1 多模態文件處理架構
8.5.2 使用LlamaParse 解析文件
8.5.3 多模態文件中的表格處理
8.5.4 多模態大模型的基礎應用
8.5.5 多模態文件中的圖片處理
8.6 查詢管道:編排基於Graph 的RAG 工作流
8.6.1 理解查詢管道
8.6.2 查詢管道支援的兩種使用方式
8.6.3 深入理解查詢管道的內部原理
8.6.4 實現並插入自訂的查詢組件
►第9章 開發 Data Agent
9.1 初步認識Data Agent
9.2 建構與使用Agent 的工具
9.2.1 深入了解工具類型
9.2.2 函數工具
9.2.3 查詢引擎工具
9.2.4 檢索工具
9.2.5 查詢計畫工具
9.2.6 隨選載入工具
9.3 基於函數呼叫功能直接開發Agent
9.4 用框架元件開發Agent
9.4.1 使用OpenAIAgent
9.4.2 使用ReActAgent
9.4.3 使用底層API 開發Agent
9.4.4 開發帶有工具檢索功能的Agent
9.4.5 開發帶有上下文檢索功能的Agent
9.5 更細粒度地控制Agent 的執行
9.5.1 分步可控地執行Agent
9.5.2 在Agent 執行中增加人類互動
►第10章 評估 RAG 應用
10.1 為什麼RAG 應用需要評估
10.2 RAG 應用的評估依據與指標
10.3 RAG 應用的評估流程與方法
10.4 評估檢索品質
10.4.1 生成檢索評估資料集
10.4.2 執行評估檢索過程的程式
10.5 評估回應品質
10.5.1 生成回應評估資料集
10.5.2 單次回應評估
10.5.3 批次回應評估
10.6 基於自訂標準的評估
►第11章 企業級 RAG 應用的常見最佳化策略
11.1 選擇合適的知識塊大小
11.1.1 為什麼知識塊大小很重要
11.1.2 評估知識塊大小
11.2 分離檢索階段的知識塊與生成階段的知識塊
11.2.1 為什麼需要分離
11.2.2 常見的分離策略及實現
11.3 最佳化對大文件集知識庫的檢索
11.3.1 中繼資料過濾 + 向量檢索
11.3.2 摘要檢索+ 內容檢索
11.3.3 多文件Agentic RAG
11.4 使用高級檢索方法
11.4.1 融合檢索
11.4.2 遞迴檢索
►第12章 建構點對點的企業級 RAG 應用
12.1 對生產型RAG 應用的主要考量
12.2 點對點的企業級RAG 應用架構
12.2.1 資料儲存層
12.2.2 AI 模型層
12.2.3 RAG 工作流與API 模組
12.2.4 前端應用模組
12.2.5 背景管理模組
12.3 點對點的全端RAG 應用案例
12.3.1 簡單的全端RAG 查詢應用
12.3.2 基於多文件Agent 的點對點對話應用
►第13章 新型 RAG 範式原理與實現
13.1 自校正RAG:C-RAG
13.1.1 C-RAG 誕生的動機
13.1.2 C-RAG 的原理
13.1.3 C-RAG 的實現
13.2 自省式RAG:Self-RAG
13.2.1 Self-RAG 誕生的動機
13.2.2 Self-RAG 的原理
13.2.3 Self-RAG 的實現
13.2.4 Self-RAG 的最佳化
13.3 檢索樹RAG:RAPTOR
13.3.1 RAPTOR 誕生的動機
13.3.2 RAPTOR 的原理
13.3.3 RAPTOR 的實現
【高級篇小結】
►第1章 了解大模型與 RAG
1.1 初識大模型
1.1.1 大模型時代:生成式AI 應用的爆發
1.1.2 大模型應用的持續進化
1.1.3 大模型是無所不能的嗎
1.2 了解RAG
1.2.1 為什麼需要RAG
1.2.2 一個簡單的RAG 場景
1.3 RAG 應用的技術架構
1.3.1 RAG 應用的經典架構與流程
1.3.2 RAG 應用面臨的挑戰
1.3.3 RAG 應用架構的演進
1.4 關於RAG 的兩個話題
1.4.1 RAG 與微調的選擇
1.4.2 RAG 與具有理解超長上下文能力的大模型
►第2章 RAG 應用程式開發環境架設
2.1 開發RAG 應用的兩種方式
2.1.1 使用低程式開發平臺
2.1.2 使用大模型應用程式開發框架
2.2 RAG 應用程式開發環境準備
2.2.1 硬體環境建議
2.2.2 基礎大模型
2.2.3 嵌入模型
2.2.4 Python 虛擬執行環境
2.2.5 Python IDE 與開發外掛程式
2.2.6 向量庫
2.2.7 LlamaIndex 框架
2.3 關於本書開發環境的約定
【預備篇小結】
▌基礎篇
►第3章 初識 RAG 應用程式開發
3.1 開發一個最簡單的RAG 應用
3.1.1 使用原生程式開發
3.1.2 使用LlamaIndex 框架開發
3.1.3 使用LangChain 框架開發
3.2 如何追蹤與偵錯RAG 應用
3.2.1 借助LlamaDebugHandler
3.2.2 借助第三方的追蹤與偵錯平臺
3.3 準備:基於LlamaIndex 框架的RAG 應用程式開發核心組件
►第4章 模型與 Prompt
4.1 大模型
4.1.1 大模型在RAG 應用中的作用
4.1.2 大模型元件的統一介面
4.1.3 大模型元件的單獨使用
4.1.4 大模型元件的整合使用
4.1.5 了解與設置大模型的參數
4.1.6 自訂大模型元件
4.1.7 使用LangChain 框架中的大模型元件
4.2 Prompt
4.2.1 使用Prompt 範本
4.2.2 更改預設的Prompt 範本
4.2.3 更改Prompt 範本的變數
4.3 嵌入模型
4.3.1 嵌入模型在RAG 應用中的作用
4.3.2 嵌入模型元件的介面
4.3.3 嵌入模型元件的單獨使用
4.3.4 嵌入模型元件的整合使用
4.3.5 了解與設置嵌入模型的參數
4.3.6 自訂嵌入模型元件
►第5章 資料載入與分割
5.1 理解兩個概念:Document 與Node
5.1.1 什麼是Document 與Node
5.1.2 深入理解Document 與Node
5.1.3 深入理解Node 物件的中繼資料
5.1.4 生成Document 物件
5.1.5 生成Node 物件
5.1.6 中繼資料的生成與取出
5.1.7 初步了解IndexNode 類型
5.2 資料載入
5.2.1 從本地目錄中載入
5.2.2 從網路中載入資料
5.3 資料分割
5.3.1 如何使用資料分割器
5.3.2 常見的資料分割器
5.4 資料攝取管道
5.4.1 什麼是資料攝取管道
5.4.2 用於資料攝取管道的轉換器
5.4.3 自訂轉換器
5.4.4 使用資料攝取管道
5.5 完整認識資料載入階段
►第6章 資料嵌入與索引
6.1 理解嵌入與向量
6.1.1 直接用模型生成向量
6.1.2 借助轉換器生成向量
6.2 向量儲存
6.2.1 簡單向量儲存
6.2.2 第三方向量儲存
6.3 向量儲存索引
6.3.1 用向量儲存建構向量儲存索引物件
6.3.2 用Node 清單建構向量儲存索引物件
6.3.3 用文件直接建構向量儲存索引物件
6.3.4 深入理解向量儲存索引物件
6.4 更多索引類型
6.4.1 文件摘要索引
6.4.2 物件索引
6.4.3 知識圖譜索引
6.4.4 樹索引
6.4.5 關鍵字表索引
►第7章 檢索、回應生成與 RAG 引擎
7.1 檢索器
7.1.1 快速建構檢索器
7.1.2 理解檢索模式與檢索參數
7.1.3 初步認識遞迴檢索
7.2 回應生成器
7.2.1 建構回應生成器
7.2.2 回應生成模式
7.2.3 回應生成器的參數
7.2.4 實現自訂的回應生成器
7.3 RAG 引擎:查詢引擎
7.3.1 建構內建類型的查詢引擎的兩種方法
7.3.2 深入理解查詢引擎的內部結構和執行原理
7.3.3 自訂查詢引擎
7.4 RAG 引擎:對話引擎
7.4.1 對話引擎的兩種建構方法
7.4.2 深入理解對話引擎的內部結構和執行原理
7.4.3 理解不同的對話模式
7.5 結構化輸出
7.5.1 使用output_cls 參數
7.5.2 使用輸出解析器
【基礎篇小結】
▌高級篇
►第8章 RAG 引擎高級開發
8.1 檢索前查詢轉換
8.1.1 簡單查詢轉換
8.1.2 HyDE 查詢轉換
8.1.3 多步查詢轉換
8.1.4 子問題查詢轉換
8.2 檢索後處理器
8.2.1 使用節點後處理器
8.2.2 實現自訂的節點後處理器
8.2.3 常見的預先定義的節點後處理器
8.2.4 Rerank 節點後處理器
8.3 語義路由
8.3.1 了解語義路由
8.3.2 帶有路由功能的查詢引擎
8.3.3 帶有路由功能的檢索器
8.3.4 使用獨立的選擇器
8.3.5 可多選的路由查詢引擎
8.4 SQL 查詢引擎
8.4.1 使用NLSQLTableQueryEngine 元件
8.4.2 基於即時資料表檢索的查詢引擎
8.4.3 使用SQL 檢索器
8.5 多模態文件處理
8.5.1 多模態文件處理架構
8.5.2 使用LlamaParse 解析文件
8.5.3 多模態文件中的表格處理
8.5.4 多模態大模型的基礎應用
8.5.5 多模態文件中的圖片處理
8.6 查詢管道:編排基於Graph 的RAG 工作流
8.6.1 理解查詢管道
8.6.2 查詢管道支援的兩種使用方式
8.6.3 深入理解查詢管道的內部原理
8.6.4 實現並插入自訂的查詢組件
►第9章 開發 Data Agent
9.1 初步認識Data Agent
9.2 建構與使用Agent 的工具
9.2.1 深入了解工具類型
9.2.2 函數工具
9.2.3 查詢引擎工具
9.2.4 檢索工具
9.2.5 查詢計畫工具
9.2.6 隨選載入工具
9.3 基於函數呼叫功能直接開發Agent
9.4 用框架元件開發Agent
9.4.1 使用OpenAIAgent
9.4.2 使用ReActAgent
9.4.3 使用底層API 開發Agent
9.4.4 開發帶有工具檢索功能的Agent
9.4.5 開發帶有上下文檢索功能的Agent
9.5 更細粒度地控制Agent 的執行
9.5.1 分步可控地執行Agent
9.5.2 在Agent 執行中增加人類互動
►第10章 評估 RAG 應用
10.1 為什麼RAG 應用需要評估
10.2 RAG 應用的評估依據與指標
10.3 RAG 應用的評估流程與方法
10.4 評估檢索品質
10.4.1 生成檢索評估資料集
10.4.2 執行評估檢索過程的程式
10.5 評估回應品質
10.5.1 生成回應評估資料集
10.5.2 單次回應評估
10.5.3 批次回應評估
10.6 基於自訂標準的評估
►第11章 企業級 RAG 應用的常見最佳化策略
11.1 選擇合適的知識塊大小
11.1.1 為什麼知識塊大小很重要
11.1.2 評估知識塊大小
11.2 分離檢索階段的知識塊與生成階段的知識塊
11.2.1 為什麼需要分離
11.2.2 常見的分離策略及實現
11.3 最佳化對大文件集知識庫的檢索
11.3.1 中繼資料過濾 + 向量檢索
11.3.2 摘要檢索+ 內容檢索
11.3.3 多文件Agentic RAG
11.4 使用高級檢索方法
11.4.1 融合檢索
11.4.2 遞迴檢索
►第12章 建構點對點的企業級 RAG 應用
12.1 對生產型RAG 應用的主要考量
12.2 點對點的企業級RAG 應用架構
12.2.1 資料儲存層
12.2.2 AI 模型層
12.2.3 RAG 工作流與API 模組
12.2.4 前端應用模組
12.2.5 背景管理模組
12.3 點對點的全端RAG 應用案例
12.3.1 簡單的全端RAG 查詢應用
12.3.2 基於多文件Agent 的點對點對話應用
►第13章 新型 RAG 範式原理與實現
13.1 自校正RAG:C-RAG
13.1.1 C-RAG 誕生的動機
13.1.2 C-RAG 的原理
13.1.3 C-RAG 的實現
13.2 自省式RAG:Self-RAG
13.2.1 Self-RAG 誕生的動機
13.2.2 Self-RAG 的原理
13.2.3 Self-RAG 的實現
13.2.4 Self-RAG 的最佳化
13.3 檢索樹RAG:RAPTOR
13.3.1 RAPTOR 誕生的動機
13.3.2 RAPTOR 的原理
13.3.3 RAPTOR 的實現
【高級篇小結】
序/導讀
前言
大語言模型(Large Language Model,LLM,也稱為大模型)以卓越的自然語言處理能力,正引領著人工智慧(Artificial Intelligence,AI)技術變革的新浪潮。作為大模型應用的重要分支與形態,檢索增強生成(Retrieval-Augmented Generation,RAG)在智慧搜尋、智慧問答、智慧客服、資料分析及AI 智慧體等多個領域展現出了巨大的應用前景。
RAG 可以很簡單。RAG 的基礎技術原理可以用幾句話簡單進行描述。你可以使用低程式開發平臺或成熟的大模型應用程式開發框架在幾分鐘之內開發出一個可以演示的原型應用。RAG 也可以很複雜。當把一個RAG 應用真正投入生產,特別是在企業級應用環境中業務需求與資料複雜性都有了數量級的提升,面臨著更高的準確性與可用性等工程化要求時,你可能會發現原型應用與生產應用之間有巨大的鴻溝,會面臨諸如資料形態多樣、檢索不夠準確、模型輸出時好時壞、使用者提問千奇百怪、點對點回應性能不足等各種在原型應用演示中不會出現的問題。
所以,對於廣大開發者而言,如何高效率地設計、開發、部署並最佳化「生產就緒」的企業級RAG 應用仍然充滿挑戰。因此,我衷心地希望本書為有志於探索大模型應用世界並充滿熱情的開發者抛磚引玉,提供一份較為詳盡的開發 RAG 應用的指南,助力他們在這次技術變革中乘風破浪。
本書的內容基於AI 開發的首選語言Python,並選擇偏重於RAG 領域的主流開發框架LlamaIndex 作為基礎框架。兩者豐富的工具資源和強大的社區支援,為RAG 應用程式開發提供了得天獨厚的條件,大大減少了「重複造輪子」的時間。需要說明的是,儘管我們的開發技術與案例是基於Python 與LlamaIndex 框架介紹的,但書中絕大部分關於RAG 的思想、原理、架構與最佳化方法都是通用的,你完全可以使用其他語言與框架實現相同的功能。
當然,隨著技術的不斷進步和應用的深入拓展,新理論、新方法、新技術層出不窮。我衷心希望本書能夠作為一個起點,激發你對大模型應用程式開發技術的興趣與探索欲,也期待未來能夠有更多的學者、專家從事這一領域的研究,共同推動大模型應用的發展與進化,為人工智慧的未來貢獻更多的智慧與力量。
嚴燦平
繁體中文版出版說明
本書原作者為中國大陸人士,書中許多服務,網站,使用中國大陸之服務,為保持全書完整性,本書部分範例圖片維持簡體中文介面,特此說明。
大語言模型(Large Language Model,LLM,也稱為大模型)以卓越的自然語言處理能力,正引領著人工智慧(Artificial Intelligence,AI)技術變革的新浪潮。作為大模型應用的重要分支與形態,檢索增強生成(Retrieval-Augmented Generation,RAG)在智慧搜尋、智慧問答、智慧客服、資料分析及AI 智慧體等多個領域展現出了巨大的應用前景。
RAG 可以很簡單。RAG 的基礎技術原理可以用幾句話簡單進行描述。你可以使用低程式開發平臺或成熟的大模型應用程式開發框架在幾分鐘之內開發出一個可以演示的原型應用。RAG 也可以很複雜。當把一個RAG 應用真正投入生產,特別是在企業級應用環境中業務需求與資料複雜性都有了數量級的提升,面臨著更高的準確性與可用性等工程化要求時,你可能會發現原型應用與生產應用之間有巨大的鴻溝,會面臨諸如資料形態多樣、檢索不夠準確、模型輸出時好時壞、使用者提問千奇百怪、點對點回應性能不足等各種在原型應用演示中不會出現的問題。
所以,對於廣大開發者而言,如何高效率地設計、開發、部署並最佳化「生產就緒」的企業級RAG 應用仍然充滿挑戰。因此,我衷心地希望本書為有志於探索大模型應用世界並充滿熱情的開發者抛磚引玉,提供一份較為詳盡的開發 RAG 應用的指南,助力他們在這次技術變革中乘風破浪。
本書的內容基於AI 開發的首選語言Python,並選擇偏重於RAG 領域的主流開發框架LlamaIndex 作為基礎框架。兩者豐富的工具資源和強大的社區支援,為RAG 應用程式開發提供了得天獨厚的條件,大大減少了「重複造輪子」的時間。需要說明的是,儘管我們的開發技術與案例是基於Python 與LlamaIndex 框架介紹的,但書中絕大部分關於RAG 的思想、原理、架構與最佳化方法都是通用的,你完全可以使用其他語言與框架實現相同的功能。
當然,隨著技術的不斷進步和應用的深入拓展,新理論、新方法、新技術層出不窮。我衷心希望本書能夠作為一個起點,激發你對大模型應用程式開發技術的興趣與探索欲,也期待未來能夠有更多的學者、專家從事這一領域的研究,共同推動大模型應用的發展與進化,為人工智慧的未來貢獻更多的智慧與力量。
嚴燦平
繁體中文版出版說明
本書原作者為中國大陸人士,書中許多服務,網站,使用中國大陸之服務,為保持全書完整性,本書部分範例圖片維持簡體中文介面,特此說明。
配送方式
-
台灣
- 國內宅配:本島、離島
-
到店取貨:
不限金額免運費
-
海外
- 國際快遞:全球
-
港澳店取:
訂購/退換貨須知
退換貨須知:
**提醒您,鑑賞期不等於試用期,退回商品須為全新狀態**
-
依據「消費者保護法」第19條及行政院消費者保護處公告之「通訊交易解除權合理例外情事適用準則」,以下商品購買後,除商品本身有瑕疵外,將不提供7天的猶豫期:
- 易於腐敗、保存期限較短或解約時即將逾期。(如:生鮮食品)
- 依消費者要求所為之客製化給付。(客製化商品)
- 報紙、期刊或雜誌。(含MOOK、外文雜誌)
- 經消費者拆封之影音商品或電腦軟體。
- 非以有形媒介提供之數位內容或一經提供即為完成之線上服務,經消費者事先同意始提供。(如:電子書、電子雜誌、下載版軟體、虛擬商品…等)
- 已拆封之個人衛生用品。(如:內衣褲、刮鬍刀、除毛刀…等)
- 若非上列種類商品,均享有到貨7天的猶豫期(含例假日)。
- 辦理退換貨時,商品(組合商品恕無法接受單獨退貨)必須是您收到商品時的原始狀態(包含商品本體、配件、贈品、保證書、所有附隨資料文件及原廠內外包裝…等),請勿直接使用原廠包裝寄送,或於原廠包裝上黏貼紙張或書寫文字。
- 退回商品若無法回復原狀,將請您負擔回復原狀所需費用,嚴重時將影響您的退貨權益。
商品評價