ChatGPT原理與實戰(zhàn):大型語言模型的算法、技術(shù)和私有化
定 價:99 元
叢書名:智能系統(tǒng)與技術(shù)叢書
這是一本系統(tǒng)梳理并深入解析ChatGPT核心技術(shù)、算法實現(xiàn)、工作原理、訓(xùn)練方法的著作,也是一本能指導(dǎo)你搭建專屬ChatGPT和實現(xiàn)大模型遷移及私有化的著作。本書得到了MOSS系統(tǒng)負(fù)責(zé)人邱錫鵬等多位專家的高度評價和鼎力推薦。具體地,通過本書你能了解或掌握以下知識:?ChatGPT的工作流程和技術(shù)棧?ChatGPT的工作原理和算法實現(xiàn)?基于Transformer架構(gòu)的一系列預(yù)訓(xùn)練語言模型的原理?強(qiáng)化學(xué)習(xí)的基礎(chǔ)知識?提示學(xué)習(xí)與大模型涌現(xiàn)出的上下文學(xué)習(xí)、思維鏈?大模型的訓(xùn)練方法及常見的分布式訓(xùn)練框架?基于人工反饋的強(qiáng)化學(xué)習(xí)整體框架?從零搭建類ChatGPT模型,模擬完整的ChatGPT訓(xùn)練過程本書集理論、實戰(zhàn)和產(chǎn)業(yè)應(yīng)用于一體,提供大量經(jīng)詳細(xì)注釋的代碼,方便讀者理解和實操?傊,不管里是想深入研究ChatGPT本身,還是正在研發(fā)或使用其他大模型,本書都應(yīng)該能給你頗具價值的技術(shù)啟發(fā)與思考,讓你在大模型的路上快速前行,少走彎路。
(1)作者經(jīng)驗豐富:作者來自BAT等知名科技公司,是NLP和AI領(lǐng)域的資深專家,大模型領(lǐng)域的先驅(qū)者,實戰(zhàn)經(jīng)驗豐富。(2)深度解析ChatGPT:系統(tǒng)梳理并深入解析ChatGPT的核心技術(shù)、算法實現(xiàn)、工作原理、訓(xùn)練方法,提供大量代碼及注解。(3)搭建專屬ChatGPT:不僅教你如何實現(xiàn)大模型的遷移和私有化,而且手把手教你零基礎(chǔ)搭建自己專屬的ChatGPT。(4)行業(yè)優(yōu)選:MOSS系統(tǒng)負(fù)責(zé)人邱錫鵬、ChatGLM技術(shù)團(tuán)隊成員劉瀟等多位大模型技術(shù)專家高度評價并推薦。
Preface前 言為什么要寫本書2022年11月30日,ChatGPT模型問世并立刻在全球范圍內(nèi)引起了軒然大波。無論AI從業(yè)者還是非從業(yè)者,都在熱議ChatGPT極具沖擊力的交互體驗和驚人的生成內(nèi)容。這使得人們對人工智能的潛力和價值有了更深入的認(rèn)識。對于AI從業(yè)者來說,ChatGPT模型成為一種思路的擴(kuò)充,大型語言模型不再是刷榜的玩具,所有人都認(rèn)識到高質(zhì)量數(shù)據(jù)的重要性,并堅信有多少人工,就會有多少智能。ChatGPT模型效果過于優(yōu)秀,在許多任務(wù)上,即使是零樣本或少量樣本數(shù)據(jù)也可以達(dá)到SOTA(Stafe Of The Art,優(yōu)選水準(zhǔn))效果,因而很多人轉(zhuǎn)向大型語言模型的研究。不僅Google提出了對標(biāo)ChatGPT的Bard模型,國內(nèi)也涌現(xiàn)出了許多中文大型語言模型,如百度的文心一言、阿里巴巴的通義千問、昆侖萬維的天工3.5、商湯的日日新、知乎的知海圖AI、清華智譜的ChatGLM、復(fù)旦的MOSS等等。斯坦福大學(xué)的Alpaca模型問世之后,證明了70億參數(shù)量的模型雖然達(dá)不到ChatGPT的效果,但已經(jīng)極大地降低了大型語言模型的算力成本,使得普通用戶和一般企業(yè)也可以使用大型語言模型。之前一直強(qiáng)調(diào)的數(shù)據(jù)獲取問題,可以通過GPT-3.5或GPT-4接口來解決,并且數(shù)據(jù)質(zhì)量相當(dāng)高。如果只需要基本的效果模型,數(shù)據(jù)是否再次精標(biāo)已經(jīng)不是那么重要了(當(dāng)然,要獲得更好的效果,則需要更精準(zhǔn)的數(shù)據(jù))。在此期間,涌現(xiàn)出了大量相關(guān)的博客、論文和開源項目。筆者的感覺是每天都要學(xué)習(xí)太多東西,但所學(xué)的內(nèi)容都太零散了。經(jīng)過一番思考和準(zhǔn)備之后,筆者決定系統(tǒng)地梳理目前ChatGPT所涉及的相關(guān)技術(shù),以幫助讀者進(jìn)行深入的學(xué)習(xí)。本書主要強(qiáng)調(diào)知識的系統(tǒng)性和完整性,這是網(wǎng)絡(luò)學(xué)習(xí)所無法替代的。技術(shù)書可以彌補(bǔ)新媒體碎片化教育的短板,閱讀圖書更便于查漏補(bǔ)缺。正規(guī)的技術(shù)書在內(nèi)容嚴(yán)謹(jǐn)性方面做得相對較好,對內(nèi)容的正確性和規(guī)范性要求極高,更適合從業(yè)人員進(jìn)行學(xué)習(xí)和日常檢索。當(dāng)然,學(xué)習(xí)的道路并不是非此即彼,只有利用各種方式,多渠道學(xué)習(xí),才能真正實現(xiàn)全方位高效學(xué)習(xí)。技術(shù)的變化是飛速的,在撰寫本書初期,還沒有出現(xiàn)LLaMa、GPT-4、ChatGLM等模型,當(dāng)它們出現(xiàn)之后我們隨之修改了相關(guān)內(nèi)容,以期本書介紹ChatGPT相關(guān)技術(shù)時更具前沿性。技術(shù)會持續(xù)更新?lián)Q代,書中提到的很多技術(shù)也許在不遠(yuǎn)的將來便會被更為強(qiáng)大的技術(shù)所取代,但這并不影響我們學(xué)習(xí)這些技術(shù)的原理,因為學(xué)習(xí)這些技術(shù)本身會引發(fā)更深層次的思考。讀者對象本書適合以下讀者閱讀:AIGC(AI Generated Content,人工智能生成內(nèi)容)相關(guān)領(lǐng)域的研究人員或技術(shù)人員。初入AI行業(yè)且基礎(chǔ)不深的從業(yè)人員。對ChatGPT感興趣的非從業(yè)人員。本書特色本書是一本集理論、實戰(zhàn)和落地于一體的ChatGPT力作,具備以下特點。理論聯(lián)系實際:本書不僅全面介紹了自然語言處理與強(qiáng)化學(xué)習(xí)的相關(guān)理論知識,還通過案例講解使這些理論更易于理解和掌握,幫助讀者在實踐過程中更深入地了解這些領(lǐng)域的基礎(chǔ)和前沿動態(tài)。實戰(zhàn)應(yīng)用落地:本書詳細(xì)介紹了如何從零開始,逐步構(gòu)建一個獨立且具有個性化特點的大型語言模型。通過分析代碼和實際案例,幫助讀者更好地理解和掌握相關(guān)技術(shù),從而實現(xiàn)自己的創(chuàng)新應(yīng)用。擴(kuò)展AIGC視野:本書針對AIGC領(lǐng)域進(jìn)行全方位的剖析,而非僅關(guān)注ChatGPT本身。這使得讀者能夠全面了解AIGC的發(fā)展歷程、技術(shù)原理、應(yīng)用場景和未來趨勢,為自己的研究和實踐提供更廣闊的視野。洞悉行業(yè)發(fā)展:本書作者具有豐富的AI從業(yè)經(jīng)驗,對AI領(lǐng)域的發(fā)展動態(tài)、技術(shù)挑戰(zhàn)和應(yīng)用前景有深刻的認(rèn)識。因此,本書不僅提供了嚴(yán)謹(jǐn)?shù)募夹g(shù)分析,還融入了作者的專業(yè)洞察,幫助讀者在理論與實踐之間找到很好的平衡點。如何閱讀本書本書從邏輯上分三部分。第一部分(第1和2章)從宏觀角度帶領(lǐng)讀者了解ChatGPT。第1章介紹ChatGPT的由來、發(fā)展史以及用例。第2章對ChatGPT進(jìn)行解構(gòu),基于AIGC相關(guān)背景知識逐步展開ChatGPT所應(yīng)用的技術(shù)棧,讓讀者對ChatGPT有更加完整的認(rèn)知。第二部分(第3~9章)介紹ChatGPT的核心技術(shù)。本書強(qiáng)調(diào)理論與實戰(zhàn)并行,在介紹相關(guān)技術(shù)的同時,針對相應(yīng)核心算法展開實戰(zhàn),在真實中文數(shù)據(jù)集下驗證算法性能,讓讀者從更深層次了解相關(guān)算法。第3章介紹基于Transformer結(jié)構(gòu)的預(yù)訓(xùn)練語言模型。第4章介紹強(qiáng)化學(xué)習(xí)的基礎(chǔ)知識。第5章介紹從提示學(xué)習(xí)與大型語言模型涌現(xiàn)出來的上下文學(xué)習(xí)、思維鏈等能力。第6章介紹大型語言模型的訓(xùn)練方法及常見的分布式訓(xùn)練框架。第7章重點對GPT系列模型進(jìn)行分析。第8章介紹PPO強(qiáng)化學(xué)習(xí)算法以及基于人工反饋的強(qiáng)化學(xué)習(xí)整體框架的設(shè)計。第9章進(jìn)行類ChatGPT的實戰(zhàn),通過文檔生成問題任務(wù)模擬完整的ChatGPT訓(xùn)練過程。第三部分(第10章)對ChatGPT的未來發(fā)展進(jìn)行展望。從AIGC未來發(fā)展方向出發(fā),探索云邊協(xié)同、工具應(yīng)用、可控生成、輔助決策四方面內(nèi)容,分別從C端場景和B端場景探索ChatGPT與實際應(yīng)用場景的結(jié)合點,并給出從事AIGC行業(yè)的參考建議。勘誤和支持由于作者水平有限,書中難免存在一些遺漏或者不夠準(zhǔn)確的地方,懇請讀者批評指正。如果你發(fā)現(xiàn)了書中的錯誤或遇到任何問題,可以將其提交到 https://github.co
CONTENTS目 錄贊譽(yù)前言第1章 了解ChatGPT11.1 ChatGPT的由來11.1.1 什么是ChatGPT21.1.2 ChatGPT的發(fā)展歷史21.2 ChatGPT的工作流程31.3 ChatGPT用例31.3.1 日常任務(wù)41.3.2 編寫代碼51.3.3 文本生成61.3.4 辦公自動化91.4 本章小結(jié)10第2章 ChatGPT原理解構(gòu)112.1 背景知識112.1.1 自然語言處理的發(fā)展歷程122.1.2 大型語言模型的發(fā)展歷程142.2 ChatGPT同類產(chǎn)品182.2.1 BlenderBot 3.0182.2.2 LaMDA202.2.3 Sparrow232.3 ChatGPT的工作原理252.3.1 預(yù)訓(xùn)練與提示學(xué)習(xí)階段262.3.2 結(jié)果評價與獎勵建模階段282.3.3 強(qiáng)化學(xué)習(xí)與自我進(jìn)化階段282.4 算法細(xì)節(jié)292.4.1 標(biāo)注數(shù)據(jù)292.4.2 建模思路302.4.3 存在的問題302.5 關(guān)于ChatGPT的思考312.6 本章小結(jié)32第3章 預(yù)訓(xùn)練語言模型333.1 Transformer結(jié)構(gòu)333.2 基于Encoder結(jié)構(gòu)的模型363.2.1 BERT363.2.2 RoBERTa393.2.3 ERNIE403.2.4 SpanBERT423.2.5 MacBERT433.2.6 ALBERT443.2.7 NeZha453.2.8 UniLM463.2.9 GLM473.2.10 ELECTRA483.3 基于Decoder結(jié)構(gòu)的模型493.3.1 GPT493.3.2 CPM513.3.3 PaLM513.3.4 OPT523.3.5 Bloom533.3.6 LLaMA543.4 基于Encoder-Decoder結(jié)構(gòu)的模型553.4.1 MASS553.4.2 BART563.4.3 T5573.5 基于夸夸閑聊數(shù)據(jù)的UniLM 模型實戰(zhàn)593.5.1 項目簡介593.5.2 數(shù)據(jù)預(yù)處理模塊593.5.3 UniLM模型模塊633.5.4 模型訓(xùn)練模塊653.5.5 模型推理模塊723.6 本章小結(jié)76第4章 強(qiáng)化學(xué)習(xí)基礎(chǔ)774.1 機(jī)器學(xué)習(xí)的分類774.1.1 有監(jiān)督學(xué)習(xí)784.1.2 無監(jiān)督學(xué)習(xí)784.1.3 強(qiáng)化學(xué)習(xí)794.2 OpenAI Gym824.2.1 OpenAI Gym API簡介834.2.2 環(huán)境簡介844.3 強(qiáng)化學(xué)習(xí)算法854.3.1 Q-learning算法854.3.2 SARSA算法874.3.3 DQN算法894.3.4 Policy Gradient算法934.3.5 Actor-Critic算法954.4 本章小結(jié)98第5章 提示學(xué)習(xí)與大型語言 模型的涌現(xiàn)995.1 提示學(xué)習(xí)995.1.1 什么是提示學(xué)習(xí)1005.1.2 提示模板設(shè)計1005.1.3 答案空間映射設(shè)計1025.1.4 多提示學(xué)習(xí)方法1035.2 上下文學(xué)習(xí)1045.2.1 什么是上下文學(xué)習(xí)1045.2.2 預(yù)訓(xùn)練階段提升上下文 學(xué)習(xí)能力1055.2.3 推理階段優(yōu)化上下文 學(xué)習(xí)的效果1075.3 思維鏈1085.4 基于提示的文本情感分析實戰(zhàn)1135.4.1 項目簡介1135.4.2 數(shù)據(jù)預(yù)處理模塊1145.4.3 BERT模型模塊1155.4.4 模型訓(xùn)練模塊1185.4.5 模型推理模塊1285.5 本章小結(jié)131第6章 大型語言模型預(yù)訓(xùn)練1326.1 大型預(yù)訓(xùn)練模型簡介1326.2 預(yù)訓(xùn)練模型中的分詞器1336.2.1 BPE1336.2.2 WordPiece1356.2.3 Unigram1366.2.4 SentencePiece1376.3 分布式深度學(xué)習(xí)框架1386.3.1 并行范式簡介1396.3.2 Megatron-LM1456.3.3 DeepSpeed1476.3.4 Colossal-AI1496.3.5 FairScale1526.3.6 ParallelFormers1536.3.7 OneFlow1536.4 基于大型語言模型的預(yù)訓(xùn)練實戰(zhàn)1556.4.1 項目簡介1556.4.2 數(shù)據(jù)預(yù)處理模塊1566.4.3 執(zhí)行模型訓(xùn)練1596.5 基于大型語言模型的信息 抽取實戰(zhàn)1686.5.1 項目簡介1686.5.2 數(shù)據(jù)預(yù)處理模塊1696.5.3 Freeze微調(diào)模塊1726.5.4 LoRA微調(diào)模塊1766.5.5 P-Tuning v2微調(diào)模塊1816.6 本章小結(jié)186第7章 GPT系列模型分析1877.1 GPT-1~GPT-4系列模型分析1877.1.1 GPT-1和GPT-2模型1877.1.2 GPT-3模型1897.1.3 GPT-3的衍生模型: Code-X1927.1.4 GPT-4模型1937.2 InstructGPT模型分析1947.2.1 模型簡介1947.2.2 數(shù)據(jù)收集1957.2.3 模型原理1987.2.4 模型討論1997.3 基于GPT-2模型的文本摘要實戰(zhàn)2007.3.1 項目簡介2007.3.2 數(shù)據(jù)預(yù)處理模塊2007.3.3 GPT-2模型模塊2027.3.4 模型訓(xùn)練模塊2047.3.5 模型推理模塊2137.4 本章小結(jié)219第8章 PPO算法與RLHF理論實戰(zhàn)2208.1 PPO算法簡介2208.1.1 策略梯度算法回顧2208.1.2 PPO算法原理剖析2228.1.3 PPO算法對比與評價2248.2 RLHF框架簡介2268.2.1 RLHF內(nèi)部剖析2268.2.2 RLHF價值分析2288.2.3 RLHF問題分析2298.3 基于PPO的正向情感傾向性 生成項目實戰(zhàn)2308.3.1 項目任務(wù)與數(shù)據(jù)集分析2308.3.2 數(shù)據(jù)預(yù)處理模塊2308.3.3 模型訓(xùn)練模塊2328.3.4 模型生成模塊2348.3.5 模型評估模塊2358.4 問題與思考2378.5 本章小結(jié)238第9章 類ChatGPT實戰(zhàn)2399.1 任務(wù)設(shè)計2399.2 數(shù)據(jù)準(zhǔn)備2409.3 基于文檔生成問題任務(wù)的類 ChatGPT實戰(zhàn)2419.3.1 SFT階段2419.3.2 RM階段2499.3.3 RL階段2599.4 本章小結(jié)270第10章 ChatGPT發(fā)展趨勢27110.1 AIGC的發(fā)展趨勢27110.1.1 AI云邊協(xié)同27210.1.2 AI工具應(yīng)用27310.1.3 AI可控生成27410.1.4 AI輔助決策27510.2 ChatGPT 2C應(yīng)用場景27610.2.1