這本書針對對自然語言處理技術感興趣的讀者,提供了系統化的LLM應用程式開發指南。
全書分為11章,從LLM基礎知識開始,透過LangChain這個開放原始碼框架為讀者解讀整個LLM應用程式開發流程。
第1~2章概述LLM技術的發展背景和LangChain框架的設計理念。
從第3章開始,分章深入介紹LangChain的6大模組,包括模型I/O、資料增強、鏈、記憶等,透過大量程式範例讓讀者了解其原理和用法。
第9章透過建構PDF問答程式,幫助讀者將之前學習的知識應用於實踐。
第10章則介紹整合,可拓寬LangChain的用途。
第11章為初學者簡要解析LLM的基礎理論,如Transformer模型等。
本書以LangChain這個讓人熟悉的框架為主線,引導讀者一步一步掌握LLM應用程式開發流程,適合對大語言模型感興趣的開發者、AI應用程式開發者閱讀。
【本書看點】
●吳恩達親自教學的LangChain套件詳解
●市面第一本中文書操控LLM
●模型I/O模組,RAG模組,鏈的概念
●Chat對應的重心 - 記憶模組
●實際執行鏈的角色 – Agent模組
●回呼處理器
●PDF、TXT、WIKI、網頁、OFFICE各種文件載入
●向量資料庫的概念
作者簡介:
李特麗
LangChain中文網聯合創始人,優秀的軟體工程師。曾翻譯LangChain、OpenAi、Milvus等AI開發三件套的中文文檔,幫助中國開發者快速上手AI開發。
康軼文
LangChain中文網創始人,2005年從個人站長做起,成為第一代SEO「大神」;2012年轉型移動互聯網營銷,成為中國Apple Ads代理商,獲得蘋果千萬美元授信;2022年轉型月付制AI數位員工全托管服務,是一位經驗豐富的數位員工和人工智慧應用專家。
作者序
2023 年,LLM(大語言模型)爆發,尤其是GPT-4 問世,一石激起千層浪,影響了整個人工智慧領域,每個開發者都進入了LLM 應用程式開發時代。在這樣的大背景下,LangChain 這個以LLM 為核心的開發框架應運而生,進一步推動了這一領域的創新和發展。LangChain 不僅可以用於開發聊天機器人,還能建構智慧問答系統等多種應用,這馬上引起了廣大技術同好和開發者的關注。不同於其他傳統的工具或庫,LangChain 提供了一個完整的生態系統,為開發者帶來了一系列強大的功能和工具,從而簡化了 LLM 開發的複雜性。值得一提的是,LangChain 的社區正在迅速壯大。隨著越來越多的開發者和組織選擇使用LangChain 進行專案開發,一個活躍的社區生態將逐漸形成。
正是在這一波LLM 開發熱潮的推動下,越來越多的人對如何有效利用這些先進的技術產生了濃厚的興趣。因此,本書的出現恰逢其時。本書旨在為讀者提供全面且深入的LLM 開發指南,特別是在LangChain 框架的應用和實踐方面。全書共分11 章,內容涵蓋從LLM 基礎知識到高級應用技巧的各方面。
第1 章:為讀者介紹LLM 開發的整體背景,同時詳細探討LangChain 在LLM 領域的獨特定位和關鍵作用。
第2 章:深入介紹LangChain 的基礎知識,包括其背後的設計動機、核心概念,以及可能的應用場景。
第3 章至第8 章:這幾章是本書的核心,詳細解讀了LangChain 的6 大模 組。從模型I/O、資料增強,到鏈、記憶、Agent 的定義及應用,再到如何有效使用回呼處理器,都為讀者提供了豐富的實踐技巧和指導。
第9 章:展示如何利用LangChain 建構真實的應用程式,例如PDF 問答程 式,幫助讀者將理論知識轉化為實際應用。
第10章:探索如何將LangChain與其他外部工具和生態系統進行整合,為開發者提供更廣泛的應用場景和解決方案。
第11章:簡單解釋LLM的基礎知識,包括Transformer模型、語義搜尋、NLP與機器學習基礎。
同時,本書是為那些對LLM應用程式開發充滿熱情的讀者而寫的,特別是那些初探LLM應用程式開發領域的初級程式設計師,以及對LangChain抱有濃厚興趣的技術同好。為了確保你能夠順利地跟隨本書的內容,建議你至少具備基礎的Python程式設計知識。但即使你對Python不太熟悉,也完全沒有關係。得益於GPT-4的強大能力,你可以在學習的過程中即時程式設計和練習。
LangChain 目前有兩個語言版本——Python和JavaScript,這無疑利好前端開發工程師,不會Python也能快速上手LLM應用程式開發。當然,在GPT-4的加持下,即使不會Python和JavaScrip,依然可以學會LangChain。本書中的所有範例程式都基於Python版本。
需要特別指出的是,本書中的所有範例程式都是基於OpenAI平臺的模型撰寫的,而不涉及模型的實際訓練。因此,你無須擁有高性能的電腦就可以輕鬆運行這些程式。為了方便讀者學習和實踐,我們已經將所有的範例程式上傳到了 GitHub 倉庫,你可以隨時下載並在自己的電腦上運行。為了更加高效率地運行和偵錯程式,建議你使用VSCode這樣的程式編輯器,並確保你的電腦上已經安裝了Python運行環境。如果你更喜歡互動式的程式設計環境,Jupyter Notebook 也是一個很好的選擇,它特別適合進行LangChain學習。
技術的進步往往不是一蹴而就的,技術的進步在於一點一滴的累積。這個過程更像一滴滴水珠匯聚成河流,最終匯入大海。這本書雖然只是LLM開發領域的微小部分,但它代表了我們對這個領域的熱情和對知識的追求。
LangChain框架目前仍處在向V.1.0穩步前進的過程中。7000多個issue反映出它的不完美,但同時也展現出了一個充滿活力、持續進化的生態。這些都在見證這顆小樹苗如何茁壯成長。
最後,希望這本書能為你在LLM應用領域的學習帶來一些幫助,讓你在LLM開發的道路上走得更穩、更遠。
2023 年,LLM(大語言模型)爆發,尤其是GPT-4 問世,一石激起千層浪,影響了整個人工智慧領域,每個開發者都進入了LLM 應用程式開發時代。在這樣的大背景下,LangChain 這個以LLM 為核心的開發框架應運而生,進一步推動了這一領域的創新和發展。LangChain 不僅可以用於開發聊天機器人,還能建構智慧問答系統等多種應用,這馬上引起了廣大技術同好和開發者的關注。不同於其他傳統的工具或庫,LangChain 提供了一個完整的生態系統,為開發者帶來了一系列強大的功能和工具,從而簡化了 LLM 開發的複雜性。值得一提的是,LangChain 的社區正在...
目錄
1 LangChain:開啟大型語言模型時代的鑰匙
1.1 大型語言模型概述
1.2 LangChain 與大型語言模型
2 LangChain 入門指南
2.1 初識LangChain
2.2 LangChain 的開發流程
2.3 LangChain 運算式
3 模型I/O
3.1 什麼是模型I/O
3.2 模型I/O功能之模型包裝器
3.3 模型I/O功能之提示詞範本
3.4 模型I/O功能之輸出解析器
4 資料增強模組
4.1 資料增強模組的相關概念
4.2 載入器
4.3 嵌入模型包裝器
4.4 文件轉換器
4.5 向量儲存庫
4.6 檢索器
5 鏈
5.1 為什麼叫鏈
5.2 細說基礎鏈
5.3 四大合併文件鏈
5.4 揭秘鏈的複雜性
6 記憶模組
6.1 記憶模組概述
6.2 記憶增強檢索能力的實踐
6.3 記憶增強Agent能力的實踐
6.4 內建記憶元件的對比
7 Agent模組
7.1 Agent模組概述
7.2 Agent元件的應用
7.3 工具元件和工具套件元件
7.4 Agent元件的功能增強
8 回呼處理器
8.1 什麼是回呼處理器
8.2 內建回呼處理器
8.3 自訂回呼處理器
9 使用LangChain建構應用程式
9.1 PDF問答程式
9.2 對話式表單
9.3 使用LangChain實現BabyAGI
10 整合
10.1 整合的背景與LLM整合
10.2 LLM整合指南
10.3 聊天模型整合指南
10.4 向量資料庫整合指南
10.5 嵌入模型整合指南
10.6 Agent toolkits 整合指南
10.7 Retrievers整合指南
11 LLM應用程式開發必學知識
11.1 LLM的核心知識
11.2 Transformer模型
11.3 語義搜尋
11.4 NLP與機器學習基礎
A LangChain框架中的主要類別
B OpenAI平臺和模型介紹
C Claude 2模型介紹
D Cohere 模型介紹
E PaLM 2 模型介紹
F Pinecone 向量資料庫介紹
G Milvus 向量資料庫介紹
1 LangChain:開啟大型語言模型時代的鑰匙
1.1 大型語言模型概述
1.2 LangChain 與大型語言模型
2 LangChain 入門指南
2.1 初識LangChain
2.2 LangChain 的開發流程
2.3 LangChain 運算式
3 模型I/O
3.1 什麼是模型I/O
3.2 模型I/O功能之模型包裝器
3.3 模型I/O功能之提示詞範本
3.4 模型I/O功能之輸出解析器
4 資料增強模組
4.1 資料增強模組的相關概念
4.2 載入器
4.3 嵌入模型包裝器
4.4 文件轉換器
4.5 向量儲存庫
4.6 檢索器
5 鏈
5.1 為什麼叫鏈
5.2 細說基礎鏈
5.3 四大合併文件鏈
5.4...