# llm_book
**Repository Path**: RunAtWorld/llm_book
## Basic Information
- **Project Name**: llm_book
- **Description**: 大语言模型 成长之路
- **Primary Language**: Python
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2024-11-27
- **Last Updated**: 2026-10-26
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# LLM 大模型 学习之旅
> 一份围绕大语言模型(LLM)系统工程的学习路径指导,持续完善中。
>
> LLM 三大核心要素:**数据、算法、算力**。本仓库按"算力硬件 → 数据工程 → 模型开发(结构/训练/评测/推理)→ 应用生态"的顺序组织,力求一眼看清 LLM 系统工程全貌。
---
## 知识库全景图
> 一张图看清仓库脉络:以"算力硬件 → 数据工程 → 模型开发 → 应用生态"为主线,算子开发 / 工具 / 论文 / 专项为横向支柱。
```mermaid
graph TD
Root[LLM 系统工程知识库] --> HW[算力硬件
NPU / CANN / 集群]
Root --> Data[数据工程]
Root --> Model[模型开发]
Root --> App[应用开发]
Root --> Op[算子开发
CANN / AscendC]
Root --> Tool[工具]
Root --> Paper[论文]
Model --> B[基础知识
RoPE / KV / ZeRO ...]
Model --> S[模型结构
LLaMA / DeepSeek / Kimi ...]
Model --> T[模型训练
MindSpeed / RL]
Model --> E[模型评测]
Model --> I[模型推理
量化 / 框架 / 部署]
```
---
## 一、算力硬件
LLM 一切能力的物质基础。本仓库聚焦国产昇腾 NPU,兼顾 GPU 对比。
| 主题 | 文档 | 说明 |
| --- | --- | --- |
| NPU 总览 | [昇腾 NPU](03算力硬件/01_npu/README.md) | 镜像制作、容器启动、常见命令、环境变量 |
| 硬件架构 | [昇腾硬件架构](03算力硬件/01_npu/昇腾硬件架构.md) | 达芬奇架构、AI Core、HBM/Cache 层级 |
| CANN | [CANN 知识](03算力硬件/01_npu/cann/CANN知识.md) / [hccn_tool](03算力硬件/01_npu/cann/hccn_tool.md) | 镜像、集合通信 |
| 驱动安装 | [openEuler](03算力硬件/01_npu/driver/install_driver_openEuler.md) / [910A Ubuntu](03算力硬件/01_npu/install_910A_ubuntu20.04.md) | 驱动安装流程 |
| Docker | [NPU 上构建 Docker](03算力硬件/01_npu/create_docker_on_npu.md) | 容器制作 |
| GPU | [GPU 硬件管控](03算力硬件/02_gpu/GPU硬件管控.md) / [硬件对比](03算力硬件/02_gpu/01硬件对比.md) | H20/H200/Blackwell 定位 |
**TODO**:昇腾 910B/910C 与 H100/H200 算力对比 · 集群网络(RoCE/IB/HCCN) · 国产算力横向对比 · 存储与 IO 瓶颈
---
## 二、数据工程
"数据决定上限,算法逼近上限"。目前内容较少,是重点补全方向。
| 主题 | 文档 | 说明 |
| --- | --- | --- |
| numpy | [transpose 与 permute](01数据工程/numpy/transpose和permute.md) | PyTorch 转置函数 |
**TODO**:数据采集与清洗(去重/过滤/脱敏) · 分词器(BPE/SentencePiece/WordPiece) · 数据配比与课程学习 · SFT/RLHF 数据构造 · 多模态数据对齐 · 数据质量评测
---
## 三、模型开发
### 1. 基础知识
LLM 的理论地基,重点在 Transformer 与注意力机制。
| 主题 | 文档 | 说明 |
| --- | --- | --- |
| Transformer | [模型详解](02模型开发/00基础知识/Transformer模型详解.md) / [Attention Is All You Need](02模型开发/00基础知识/Attention%20Is%20All%20You%20Need.md) / [transfomer](02模型开发/00基础知识/transfomer.md) | Encoder/Decoder、整体结构 |
| Flash Attention | [flash_attention](02模型开发/00基础知识/flash_attention.md) | IO-Aware、分块计算、HBM/SRAM |
| Norm | [Norm](02模型开发/00基础知识/Norm.md) | Layer Norm / RMS Norm / Deep Norm、Pre/Post-Norm |
| 优化器 | [优化器](02模型开发/00基础知识/优化器.md) / [权重衰减](02模型开发/00基础知识/ml基础/weight_deacy.md) | Adam、warmup |
| 上下文长度 | [LLM 中的上下文长度](02模型开发/00基础知识/LLM中的上下文长度.md) | 长上下文挑战 |
| 计算公式 | [MFU 计算公式](02模型开发/00基础知识/大模型%20MFU%20计算公式.md) / [线性度公式](02模型开发/00基础知识/线性度公式.md) | GPT/LLaMA/MoE 计算量、集群扩展性 |
**✅ 已补全**:位置编码 [RoPE/ALiBi](02模型开发/00基础知识/位置编码%20RoPE与ALiBi.md) · 激活函数 [GELU/SwiGLU](02模型开发/00基础知识/激活函数%20GELU与SwiGLU.md) · [KV Cache 与 PagedAttention](02模型开发/00基础知识/KV%20Cache与PagedAttention.md) · [混合精度 FP16/BF16/FP8](02模型开发/00基础知识/混合精度训练%20FP16%20BF16%20FP8.md) · [ZeRO 与优化器切分](02模型开发/00基础知识/ZeRO与优化器状态切分.md) · [序列并行与长上下文](02模型开发/00基础知识/序列并行与长上下文训练.md)(梯度累加已含于 ZeRO 章节)
### 2. 模型结构
主流 LLM 架构解读。
| 模型 | 文档 | 说明 |
| --- | --- | --- |
| DeepSeek V3 | [deepseek_v3](02模型开发/01模型结构/01LLM模型/deepseek/deepseek_v3.md) | MoE、MLA、无辅助损失负载均衡 |
| Qwen3 | [qwen3](02模型开发/01模型结构/01LLM模型/qwen/qwen3/qwen3.md) | — |
**✅ 已补全**:[LLaMA 系列架构演进](02模型开发/01模型结构/01LLM模型/llama/LLaMA系列架构演进.md) · [Mistral / Mixtral MoE](02模型开发/01模型结构/01LLM模型/mistral/Mistral与Mixtral%20MoE.md) · [多模态模型结构(LLaVA、Qwen-VL、InternVL)](02模型开发/01模型结构/01LLM模型/multimodal/多模态模型结构%20LLaVA%20Qwen-VL%20InternVL.md) · [Embedding 模型(BGE、M3)](02模型开发/01模型结构/01LLM模型/embedding/BGE与M3%20Embedding模型.md)(另见 [DeepSeek V3.1 与 R1](02模型开发/01模型结构/01LLM模型/deepseek/DeepSeek%20V3.1与R1%20推理模型.md)、[Kimi K2](02模型开发/01模型结构/01LLM模型/kimi/Kimi%20K2%20MoE.md))
### 3. 模型训练
预训练、微调、强化学习的工程实践,以昇腾 MindSpeed 体系为主线。
**训练基础**
| 主题 | 文档 | 说明 |
| --- | --- | --- |
| 并行策略 | [模型并行知识](02模型开发/02模型训练/训练并行/模型并行知识.md) | DP/TP/PP/CP 关系 |
| 内存计算 | [内存计算](02模型开发/02模型训练/内存计算.md) | A100 算力、静态/动态内存 |
| 确定性计算 | [固定随机性和确定性计算](02模型开发/02模型训练/固定随机性和确定性计算.md) / [具身模型](02模型开发/02模型训练/具身模型固定确定性计算.assets/) | 固定随机性、排查 loss 差异 |
| 数据加载 | [数据 shuffle](02模型开发/02模型训练/数据shuffle.md) | shuffle 对训练的影响 |
| FAQ | [FAQ](02模型开发/02模型训练/FAQ.md) | 训练速度、IB/RoCE、K/V 矩阵 |
**MindSpeed 体系**
| 子库 | 文档 | 说明 |
| --- | --- | --- |
| 总览 | [MindSpeed](02模型开发/02模型训练/mindspeed/README.md) | 与 Megatron/DeepSpeed 对比 |
| MindSpeed-LLM | [2.0.0](02模型开发/02模型训练/mindspeed/mindspeed-llm/2.0.0/mindspeed-llm-2.0.0.md) / [Docker](02模型开发/02模型训练/mindspeed/mindspeed-llm/2.0.0/docker_guide.md) / [Qwen2.5-7B](02模型开发/02模型训练/mindspeed/mindspeed-llm/2.0.0/qwen2.5-7B.md) / [Qwen3-14B](02模型开发/02模型训练/mindspeed/mindspeed-llm/2.1.0/qwen3-14B.md) / [开源数据集](02模型开发/02模型训练/mindspeed/mindspeed-llm/2.1.0/qwen3-14B-开源数据集.md) / [精度对齐](02模型开发/02模型训练/mindspeed/mindspeed-llm/2.1.0/qwen3-14B精度对齐.md) / [问题排查](02模型开发/02模型训练/mindspeed/mindspeed-llm/2.1.0/qwen3-14B问题.md) | LLM 预训练实践 |
| MindSpeed-MM | [多模态](02模型开发/02模型训练/mindspeed/mindspeed-mm/mindspeed-mm.md) | 多模态训练 |
| MindSpeed-RL | [安装](02模型开发/02模型训练/mindspeed/mindspeed-rl/install_guide.md) / [实践](02模型开发/02模型训练/mindspeed/mindspeed-rl/mindspeed-rl_practice.md) / [GRPO 算法](02模型开发/02模型训练/mindspeed/mindspeed-rl/algorithms/grpo.md) / [GRPO YAML](02模型开发/02模型训练/mindspeed/mindspeed-rl/features/grpo_yaml.md) / [R1-Zero 7B](02模型开发/02模型训练/mindspeed/mindspeed-rl/solutions/r1_zero_qwen25_7b.md) / [R1-Zero 32B](02模型开发/02模型训练/mindspeed/mindspeed-rl/solutions/r1_zero_qwen25_32b.md) / [数据模块](02模型开发/02模型训练/mindspeed/mindspeed-rl/features/data_module_design.md) / [worker](02模型开发/02模型训练/mindspeed/mindspeed-rl/features/integrated_worker.md) / [profiler](02模型开发/02模型训练/mindspeed/mindspeed-rl/features/profiler.md) / [msprobe](02模型开发/02模型训练/mindspeed/mindspeed-rl/features/msprobe.md) / [wandb](02模型开发/02模型训练/mindspeed/mindspeed-rl/features/logging_wandb_tensorboard.md) | 强化学习 |
| 辅助工具 | [PTA](02模型开发/02模型训练/mindspeed/pta/pta.md) / [Apex](02模型开发/02模型训练/mindspeed/pta/apex.md) / [模型迁移](02模型开发/02模型训练/mindspeed/模型迁移.md) / [精度对齐](02模型开发/02模型训练/mindspeed/精度对齐.md) | 迁移与对齐 |
| MindSpore | [接入 MindSpeed](02模型开发/02模型训练/mindspore/MindSpore接入MindSpeed.md) / [并行](02模型开发/02模型训练/mindspore/ms_并行.md) | MindSpore 生态 |
| 算法 | [GRPO 原理](02模型开发/00基础知识/grpo.md) | 从 PPO 到 GRPO |
**TODO**:预训练全流程(数据配比/loss/checkpoint) · 微调方法(LoRA/QLoRA/Adapter/Prefix Tuning) · RLHF 全链路(SFT→RM→PPO/DPO) · 分布式通信(NCCL/HCCL、AllReduce 代价) · 断点续训与容错 · 训练性能调优
### 4. 模型评测
| 主题 | 文档 | 说明 |
| --- | --- | --- |
| 目录 | [模型评测](02模型开发/03模型评测/RAEDME.md) | 待完善 |
**TODO**:评测基准(MMLU/CMMLU/C-Eval/HumanEval/GSM8K) · 评测框架(OpenCompass/lm-eval-harness) · 评测指标(困惑度/准确率/pass@k) · 人类对齐评测
### 5. 模型推理
核心命题:"存得下" + "跑得快"。以昇腾 MindIE 为主线。
| 主题 | 文档 | 说明 |
| --- | --- | --- |
| 推理总览 | [模型推理](02模型开发/04模型推理/RAEDME.md) | MindIE 代码/镜像/文档 |
| MindIE | [安装](02模型开发/04模型推理/01推理框架/MindIE/README.md) / [推理接口](02模型开发/04模型推理/01推理框架/MindIE/MindIE推理接口.md) / [性能调优](02模型开发/04模型推理/01推理框架/MindIE/性能调优.md) | MindIE 全流程 |
| BGE | [BGE 模型部署](02模型开发/04模型推理/BGE.md) | Embedding 模型 |
| QWQ | [ATB-MindIE 版](02模型开发/04模型推理/QWQ-ATB_MindIE版.md) / [MindSpore-MindIE 版](02模型开发/04模型推理/QWQ-MindSpore_MindIE版.md) | QWQ 推理 |
| 多模态 | [Qwen2-7B-Audio](02模型开发/04模型推理/Qwen2-7B-Audio_ATB-MindIE.md) / [Qwen2.5-vl-7B](02模型开发/04模型推理/Qwen2.5-vl-7B-MindIE.md) | 音频/视觉模型推理 |
**✅ 已补全**:[量化推理 GPTQ/AWQ/SmoothQuant/FP8](02模型开发/04模型推理/量化推理%20GPTQ%20AWQ%20SmoothQuant%20FP8.md) · [解码策略与投机解码](02模型开发/04模型推理/解码策略与投机解码.md) · [推理框架对比 vLLM/SGLang/TensorRT-LLM/MindIE](02模型开发/04模型推理/推理框架对比%20vLLM%20SGLang%20TensorRT-LLM%20MindIE.md) · [服务化部署 Continuous Batching](02模型开发/04模型推理/服务化部署%20Continuous%20Batching.md) · [性能指标 TTFT/TPOT/Throughput](02模型开发/04模型推理/推理性能指标%20TTFT%20TPOT%20Throughput.md)
---
## 四、应用生态
本仓库已沉淀较多实践内容(详见 [04应用开发](04应用开发/README.md))。
| 主题 | 文档 | 说明 |
| --- | --- | --- |
| RAG | [RAG](04应用开发/01AI_Agent/01RAG/RAEDME.md) | 检索增强生成 |
| Agent | [Manus](04应用开发/01AI_Agent/Manus.md) | 通用智能体实践 |
| 应用编排 | [Dify](04应用开发/02应用编排/dify.md) | 低代码编排 |
| 提示词工程 | [Google 提示工程白皮书](04应用开发/03提示词工程/Google提示工程白皮书.md) | 官方最佳实践 |
| Skill 编写 | [如何写好 Skill](04应用开发/04skill/如何写好-Skill:一份终极实战经验手册.md) | Agent 技能工程 |
| Harness 工程 | [README](04应用开发/05Harness工程/README.md) | 评测 / 训练 Harness |
| 部署工具 | [ollama](04应用开发/08相关工具/03部署工具/ollama.md) | 本地推理 |
| 前端集成 | [Open WebUI](04应用开发/08相关工具/04前端集成/open-webui.md) | 聊天界面 |
| 周边工具 | [AI 工具](04应用开发/09周边工具/AI工具.md) / [jinja2](04应用开发/09周边工具/jinja2.md) | 生态工具 |
**TODO**:LangChain / LlamaIndex · 多智能体协作(AutoGen / CrewAI)· 工作流编排(LangGraph)· Function Calling / Tool Use 系统性梳理
---
## 五、算子开发
基于 CANN / AscendC 的自定义算子开发,是昇腾性能调优的关键抓手。
| 主题 | 文档 | 说明 |
| --- | --- | --- |
| 概览 | [CANN 算子开发](10算子开发/02_CANN算子开发/README.md) | 开发流程总览 |
| 环境安装 | [CANN 安装](10算子开发/01_环境安装/install_cann_step_by_step.md) | 逐步安装 |
| AscendC | [算子开发](10算子开发/02_CANN算子开发/AscendC算子开发.md) / [最佳实践](10算子开发/02_CANN算子开发/AscendC最佳实践.md) / [自定义算子](10算子开发/02_CANN算子开发/自定义算子开发.md) | 编程模型 |
| 首个算子 | [Sinh 体验](10算子开发/02_CANN算子开发/01_第一个算子开发体验Sinh.md) | 上手示例 |
| 性能调优 | [性能调优](10算子开发/02_CANN算子开发/性能调优.md) / [算子支持列表](10算子开发/02_CANN算子开发/算子支持列表.md) | 调优与覆盖 |
| 基础 | [HCCL 通信原语](10算子开发/00_基础知识/HCCL通信/通信原语操作.md) / [数据格式与精度](10算子开发/00_基础知识/数据格式与精度.md) | 通信与精度 |
## 六、论文
- [顶会跟踪](31论文/顶会.md):LLM / 系统 / 算力相关顶会论文速览
## 七、工具
- [HuggingFace](41工具/HuggingFace.md) · [pdb](41工具/pdb.md) · [学习路径](41工具/学习路径.md) · [开发工具安装配置](41工具/开发工具安装配置.md)
## 八、专项
- [超节点概述](51专项/511超节点/超节点概述.md) / [昇腾 950](51专项/511超节点/昇腾950/README.md):超节点架构与新一代硬件
---
## 九、参考资源
| 类型 | 资源 |
| --- | --- |
| 论文 | [Attention Is All You Need](https://arxiv.org/abs/1706.03762) · [FlashAttention](https://arxiv.org/abs/2205.14135) · [DeepSeekMath (GRPO)](https://arxiv.org/pdf/2402.03300) · [DeepSeek V3](https://arxiv.org/abs/2412.19437) · [GLM](https://arxiv.org/pdf/2103.10360.pdf) |
| 课程 | [清华 NLP 公开课](https://www.bilibili.com/video/BV1UG411p7zv) · [ChatGLM3 教程](https://www.bilibili.com/video/BV1Hc411q76k) · [大模型微调实战](https://www.bilibili.com/video/BV1dN4y167vX) |
| 仓库 | [llm-action](https://github.com/liguodongiot/llm-action) · [MindIE-LLM](https://gitee.com/ascend/MindIE-LLM.git) · [MindSpeed](https://www.hiascend.com/software/mindspeed) |
---
## 全貌速览
```
LLM 系统工程
├── 算力硬件 NPU(GPU) 架构 / 驱动 / CANN / 集群网络
├── 数据工程 采集 / 清洗 / 分词 / 配比 / 标注 ← 重点补全
├── 模型开发
│ ├── 基础知识 Transformer / Attention / Norm / 优化器 / 上下文长度
│ ├── 模型结构 DeepSeek / Qwen / LLaMA / MoE / 多模态
│ ├── 模型训练 预训练 / 微调 / RLHF / 并行策略 / MindSpeed
│ ├── 模型评测 基准 / 框架 / 指标 ← 待建设
│ └── 模型推理 MindIE / 量化 / 解码 / 服务化
├── 算子开发 CANN / AscendC / 自定义算子 / 性能调优
├── 应用生态 RAG / Agent / 编排 / 提示词 / 部署工具
├── 论文 顶会跟踪
├── 工具 HuggingFace / pdb / 学习路径
└── 专项 超节点 / 昇腾 950
```
---
> 如果觉得还不错,关注 【飞见AI】 公众号获得更多优质文章和免费资料。
>
> 