ARTICLE DETAIL

资讯详情

深耕商务建站与企业官网运营的一线实战洞察。

happy-llm 从零构建大模型完整指南:手把手跑通预训练到微调全流程

happy-llm 从零构建大模型完整指南:手把手跑通预训练到微调全流程 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),仅供参考
返回列表
PREV
查看更多资讯
NEXT
返回资讯列表