
happy-llm 從零構建大模型完整指南手把手跑通預訓練到微調全流程【免費下載鏈接】happy-llm 從零開始構建大模型項目地址: https://gitcode.com/GitHub_Trending/ha/happy-llmhappy-llm 是 Datawhale 出品的「從零開始構建大模型」開源教程不止講原理而是帶你親手搭建 LLaMA2、預訓練一個 215M 小模型再用 Transformers 走通微調與 RAG/Agent 實戰。本文按拉環境 → 分章實踐 → 查坑的順序帶你走一遍全部內容讀完后你手上會有一個自己的小模型和一套可復用的訓練流程。快速上手五步拉通 happy-llm 學習環境先別急著讀章節把環境拉起來你才知道卡在哪。按下面五步走克隆倉庫到本地git clone https://gitcode.com/GitHub_Trending/ha/happy-llm.git cd happy-llm為當前要復現的章節單獨建虛擬環境各章依賴差異大混裝極易沖突python -m venv .venv source .venv/bin/activate pip install --upgrade pip pip install -r ./docs/chapter6/code/requirements.txt # 換成你當前章節的 requirements下載基座模型和訓練數據第六章提供現成腳本download_model.py與download_dataset.py。先用小樣本調試pretrain.py/finetune.py確認 loss 正常下降。調試通過后再跑 pretrain.sh 等啟動腳本做完整訓練。具體每章需要什么依賴、什么硬件直接翻 學習與環境準備有一張分章對照表別自己猜。核心功能拆解四條學習主線怎么走環境就緒后happy-llm 的內容可以拆成四條主線你按興趣挑一條深入即可。從 Transformer 原理到 LLM 架構第一~四章場景你能寫 Python但一打開大模型資料就分不清 Decoder-only 和 Encoder-Decoder 誰是誰。做法按 第一章 NLP 基礎概念 起步重點啃 第二章 Transformer 架構——這一章附帶一份可直接運行的手寫 Transformer 代碼 docs/chapter2/code/transformer.py注意力機制、多頭、殘差連接逐個模塊過一遍第三、四章再補齊預訓練語言模型PLM即拿大量文本先學語言的模型和 LLM 訓練策略。效果建立完整概念地圖后面看第五章手寫模型時每一行代碼都知道在干什么而不是對著RMSNorm發呆。手寫 LLaMA2 并預訓練你的 215M 小模型第五章場景光調 API 不踏實想知道一個大模型拆開到底長什么樣。做法第五章是全項目最硬核的一章配套代碼在 docs/chapter5/code/。路徑很清晰先用k_model.py逐個搭出RMSNorm、GQA 注意力分組查詢注意力省顯存的注意力變體、MLP 和 Decoder Layer再用train_tokenizer.py訓練一個自己的分詞器把文本切成模型能吃的數字 ID 的部件最后ddp_pretrain.py走預訓練、ddp_sft_full.py走有監督微調SFT即拿問答樣本教模型按指令說話。效果一個 215M 參數的模型完整跑通數據 → 預訓練 → 微調 → 生成文本閉環。下面是預訓練數據切分后的 token 分布微調階段用的 SFT 數據則是指令 回答的問答對切分后形態如下用 Transformers DeepSpeed 跑工業級訓練第六章場景手寫實現能跑通但換成 1.5B 真實模型、想用多卡時手寫代碼就不好使了。做法第六章切到 Transformers 生態Hugging Face 的模型訓練框架。初始化模型兩行搞定AutoConfig.from_pretrained()讀配置、AutoModelForCausalLM.from_pretrained()加載權重。多卡分布式不用手寫改 ds_config_zero2.json 里的 ZeRO 階段和bf16開關即可啟動腳本 finetune.sh 已把deepspeed參數配好。6.3 節再補上 LoRA/QLoRA 高效微調——只訓練少量低秩rank參數矩陣單卡也能微調大模型。效果從能跑升級到跑得快、跑得省完整流程參考 第六章正文搭建 RAG 與 Agent 應用第七章場景模型訓完了想讓它真的幫你查資料、調工具。做法RAG檢索增強生成讓模型先查外部文檔再回答部分直接跑 docs/chapter7/RAG/demo.py目錄里Embeddings.py、VectorBase.py把向量化和向量庫封裝好了Agent 部分看 docs/chapter7/Agent/core.py實現了工具調用循環web_demo.py能直接起一個網頁版交互界面。效果拿到一個能接外部知識庫、能調工具的完整應用補全模型 → 產品這最后一段路高頻坑點速查訓練前先把這些看完跑之前先花兩分鐘掃一遍這里能省你半天查 issue 的時間。Q為什么根目錄沒有統一的依賴文件A項目覆蓋原理實現到訓練框架各章依賴差異大特意按章節拆分。記住一章一個 venv第六章裝 docs/chapter6/code/requirements.txt 就夠了。Q顯存爆掉OOM怎么救A?? 按順序試減batch_size→ 縮短序列長度 → 開 DeepSpeed ZeRO-2 bf16→ 開梯度檢查點用計算時間換顯存。Q模型和數據下載慢怎么辦A設環境變量HF_ENDPOINThttps://hf-mirror.com走鏡像huggingface-cli加--resume-download斷點續傳訓練好的 215M 模型也可從 ModelScope 直接拉。Q拼接多模態或微調后 Loss 不降怎么查A先打印 1~2 條樣本確認數據格式和 loss mask再看訓練曲線里grad_norm是否收斂別急著懷疑模型結構。Q沒有多卡 GPU 能學第六章嗎A能。先小樣本、單卡調通數據處理與訓練腳本整體思路不受影響文檔明確支持這種姿勢。Qsh 腳本里的路徑跑不起來A?? 腳本里的autodl-tmp路徑和顯卡編號都是示例配置跑之前必須替換成你本地的真實路徑。用 SwanLabreport_toswanlab盯著 loss 和grad_norm曲線異常時截圖對比一下健康曲線定位快很多進階與資源主線跑完接著看這三處四條主線跑完還有余力推薦按順序往下走多模態實戰Extra-Chapter/vlm-concatenation-finetune/README.md把 SmolVLM2 視覺模塊拼進 Qwen3 的拼接微調完整記錄含沐曦國產 GPU 環境踩坑。后訓練進階6.4 偏好對齊RLHF、DPO、獎勵模型的整體學習路線。貢獻入口看完有自己心得按 Extra-Chapter 的 PR 規范 提交你的博客筆記項目歡迎合入。? 到這里環境、四條主線、坑點清單都齊了。跑完第五到第七章你手上會多一個自己訓出來的 215M 模型和一套可復用的訓練流程。卡住的地方隨時翻 docs/ 正文或 issue 區Datawhale 社區都在那兒。【免費下載鏈接】happy-llm 從零開始構建大模型項目地址: https://gitcode.com/GitHub_Trending/ha/happy-llm創作聲明:本文部分內容由AI輔助生成(AIGC),僅供參考