LLMs-from-scratch:從零構建大模型
“LLMs-from-scratch” 是一個開源項目,由 Sebastian Raschka 創建,目的是幫助開發者從零開始實現一個類似 ChatGPT 的大型語言模型。這個項目是與他的書籍《Build a Large Language Model (From Scratch)》配套的官方代碼倉庫。
項目目標
從零開始構建 LLM:通過逐步編碼的方式,幫助讀者深入理解 LLM 的內部機制。
預訓練和微調:提供完整的代碼示例,用于在未標記數據上進行預訓練,以及針對特定任務進行微調。
教育目的:通過構建小型但功能完備的模型,幫助讀者理解大型模型的開發過程。
主要功能結構
第 2 章:處理文本數據
實現從零開始的字節對編碼(BPE)分詞器。
提供數據加載器的實現和總結。
第 3 章:實現注意力機制
實現多頭注意力機制。
第 4 章:從零開始實現 GPT 模型
提供完整的 GPT 模型代碼。
第 5 章:在未標記數據上進行預訓練
提供預訓練代碼和生成器代碼。
第 6 章:針對文本分類進行微調
提供針對文本分類任務的微調代碼。
第 7 章:針對指令跟隨進行微調
提供指令微調代碼和評估代碼。
LLMs-from-scratch適合對自然語言處理和深度學習感興趣的學習者,尤其是希望從零開始構建大型語言模型的開發者。
英文原版地址:https://github.com/rasbt/LLMs-from-scratch
中文資源地址:https://github.com/MLNLP-World/LLMs-from-scratch-CN