AI Infra 学习路径指南
概述
本指南帮助不同背景的读者快速找到适合自己的学习路径,高效掌握 AI 基础设施的核心知识。
读者画像与学习路径
路径一:后端工程师转型 AI Infra
┌─────────────────────────────────────────────────────────────────────────────┐
│ 后端工程师 → AI Infra 工程师 │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ 已有基础: │
│ ✓ Linux / Docker / Kubernetes │
│ ✓ 分布式系统基础 │
│ ✓ Python / Go 编程 │
│ │
│ 需要补充: │
│ • GPU 与 CUDA 基础 │
│ • 深度学习框架 │
│ • 分布式训练原理 │
│ │
│ 学习路径: │
│ ┌─────────────────────────────────────────────────────────────────────┐ │
│ │ │ │
│ │ 第1周: GPU 基础 │ │
│ │ ├── 01-GPU容器化/01-GPU架构基础.md │ │
│ │ ├── 01-GPU容器化/02-NVIDIA容器运行时.md │ │
│ │ └── 动手: 部署一个 GPU 容器,运行 PyTorch │ │
│ │ │ │
│ │ 第2周: K8s GPU 调度 │ │
│ │ ├── 02-Kubernetes-GPU调度/01-Device-Plugin机制.md │ │
│ │ ├── 02-Kubernetes-GPU调度/02-GPU调度器实现.md │ │
│ │ └── 动手: 搭建 GPU K8s 集群,部署 GPU 工作负载 │ │
│ │ │ │
│ │ 第3周: 分布式训练 │ │
│ │ ├── 03-AI训练平台/01-分布式训练框架.md │ │
│ │ ├── 11-通信与网络底层/02-AllReduce算法实现.md │ │
│ │ └── 动手: 运行多 GPU 分布式训练任务 │ │
│ │ │ │
│ │ 第4周: 推理服务 │ │
│ │ ├── 04-推理服务/01-推理引擎原理.md │ │
│ │ ├── 04-推理服务/02-模型服务框架.md │ │
│ │ └── 动手: 部署 vLLM/TGI 推理服务 │ │
│ │ │ │
│ └─────────────────────────────────────────────────────────────────────┘ │
│ │
│ 进阶方向: │
│ • 02-Kubernetes-GPU调度/03-拓扑感知调度.md │
│ • 05-异构计算/ 全部 │
│ • 12-框架源码解析/04-vLLM推理引擎源码解析.md │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
路径二:算法工程师深入 Infra
┌─────────────────────────────────────────────────────────────────────────────┐
│ 算法工程师 → 全栈 AI 工程师 │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ 已有基础: │
│ ✓ 深度学习原理 │
│ ✓ PyTorch / TensorFlow │
│ ✓ 模型训练与调优 │
│ │
│ 需要补充: │
│ • 分布式训练工程实现 │
│ • 性能优化与调优 │
│ • 部署与服务化 │
│ │
│ 学习路径: │
│ ┌─────────────────────────────────────────────────────────────────────┐ │
│ │ │ │
│ │ 第1周: 底层原理 │ │
│ │ ├── 10-CUDA编程与算子开发/01-CUDA编程模型与内存层次.md │ │
│ │ ├── 11-通信与网络底层/01-NCCL源码深度解析.md │ │
│ │ └── 动手: 编写简单 CUDA kernel │ │
│ │ │ │
│ │ 第2周: 框架源码 │ │
│ │ ├── 12-框架源码解析/01-PyTorch分布式源码解析.md │ │
│ │ ├── 12-框架源码解析/02-DeepSpeed源码深度解析.md │ │
│ │ └── 动手: 使用 DeepSpeed ZeRO 训练大模型 │ │
│ │ │ │
│ │ 第3周: 编译优化 │ │
│ │ ├── 13-编译优化与图优化/01-深度学习编译器概述.md │ │
│ │ ├── 13-编译优化与图优化/02-TorchDynamo与torch.compile.md │ │
│ │ └── 动手: 使用 torch.compile 优化模型 │ │
│ │ │ │
│ │ 第4周: 推理优化 │ │
│ │ ├── 04-推理服务/04-推理优化技术.md │ │
│ │ ├── 15-前沿技术/02-Speculative-Decoding.md │ │
│ │ └── 动手: 量化模型并部署 │ │
│ │ │ │
│ └─────────────────────────────────────────────────────────────────────┘ │
│ │
│ 进阶方向: │
│ • 10-CUDA编程与算子开发/03-TensorCore与矩阵运算.md │
│ • 10-CUDA编程与算子开发/05-Triton编程入门.md │
│ • 15-前沿技术/01-MoE架构与训练.md │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
路径三:应届生/转行者
┌─────────────────────────────────────────────────────────────────────────────┐
│ 新手 → AI Infra 入门 │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ 前置要求: │
│ • Python 基础编程能力 │
│ • 了解深度学习基本概念(可边学边补) │
│ • Linux 基础命令 │
│ │
│ 学习路径: │
│ ┌─────────────────────────────────────────────────────────────────────┐ │
│ │ │ │
│ │ 阶段一: 建立基础 (2-3周) │ │
│ │ ├── 00-快速入门/02-前置知识速览.md (本目录) │ │
│ │ ├── 01-GPU容器化/01-GPU架构基础.md │ │
│ │ └── 推荐: 完成一个 PyTorch 训练任务 │ │
│ │ │ │
│ │ 阶段二: 核心技能 (4-6周) │ │
│ │ ├── 02-Kubernetes-GPU调度/ 全部 │ │
│ │ ├── 03-AI训练平台/01-分布式训练框架.md │ │
│ │ ├── 04-推理服务/01-推理引擎原理.md │ │
│ │ └── 04-推理服务/02-模型服务框架.md │ │
│ │ │ │
│ │ 阶段三: 实战练习 (2-4周) │ │
│ │ ├── 16-端到端实战/ 选择一个项目 │ │
│ │ ├── 09-面试专题/01-AI基础设施核心面试题.md │ │
│ │ └── 参与开源项目或实习 │ │
│ │ │ │
│ └─────────────────────────────────────────────────────────────────────┘ │
│ │
│ 推荐资源: │
│ • 《深度学习》花书 (基础概念) │
│ • NVIDIA 官方 CUDA 教程 │
│ • Kubernetes 官方文档 │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
路径四:架构师/Tech Lead
┌─────────────────────────────────────────────────────────────────────────────┐
│ 技术管理者 → AI Infra 架构师 │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ 关注重点: │
│ • 系统架构设计 │
│ • 技术选型决策 │
│ • 成本与性能权衡 │
│ │
│ 推荐阅读顺序: │
│ ┌─────────────────────────────────────────────────────────────────────┐ │
│ │ │ │
│ │ 1. 全局视野 (快速浏览) │ │
│ │ ├── README.md (整体知识图谱) │ │
│ │ ├── 01-GPU容器化/01-GPU架构基础.md │ │
│ │ └── 03-AI训练平台/01-分布式训练框架.md │ │
│ │ │ │
│ │ 2. 关键决策点 (深入阅读) │ │
│ │ ├── 05-异构计算/05-算力池化与弹性调度.md │ │
│ │ ├── 11-通信与网络底层/05-大规模集群网络架构.md │ │
│ │ └── 07-MLOps实践/01-MLOps成熟度模型.md │ │
│ │ │ │
│ │ 3. 系统设计 (参考) │ │
│ │ ├── 09-面试专题/03-系统设计面试题.md │ │
│ │ └── 16-端到端实战/ (架构参考) │ │
│ │ │ │
│ └─────────────────────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
知识图谱
┌─────────────────────────────────────────────────────────────────────────────┐
│ AI Infra 知识图谱 │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ ┌──────────────┐ │
│ │ 应用层 │ │
│ │ LLM应用 │ │
│ │ RAG/Agent │ │
│ └──────┬───────┘ │
│ │ │
│ ┌──────────────────────┼──────────────────────┐ │
│ │ │ │ │
│ ▼ ▼ ▼ │
│ ┌────────────────┐ ┌────────────────┐ ┌────────────────┐ │
│ │ 训练平台 │ │ 推理服务 │ │ MLOps │ │
│ │ 分布式训练 │ │ 模型服务化 │ │ 实验管理 │ │
│ │ 任务调度 │ │ 推理优化 │ │ 模型注册 │ │
│ └───────┬────────┘ └───────┬────────┘ └───────┬────────┘ │
│ │ │ │ │
│ └──────────────────┬──┴─────────────────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────────────────┐ │
│ │ 调度与编排层 │ │
│ │ Kubernetes GPU调度 │ │
│ │ 拓扑感知/弹性调度 │ │
│ └───────────┬─────────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────────────────┐ │
│ │ 运行时层 │ │
│ │ 容器运行时/GPU隔离 │ │
│ │ CUDA/Driver │ │
│ └───────────┬─────────────┘ │
│ │ │
│ ┌──────────────────────┼──────────────────────┐ │
│ │ │ │ │
│ ▼ ▼ ▼ │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ GPU硬件 │ │ 网络 │ │ 存储 │ │
│ │ CUDA Core │ │ NCCL/IB │ │ 分布式FS │ │
│ │ Tensor Core│ │ RDMA │ │ 对象存储 │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
技能依赖关系:
GPU容器化 ──────────────▶ K8s GPU调度 ──────────────▶ 训练平台
│ │ │
│ │ │
▼ ▼ ▼
CUDA编程 ◀──────────── 拓扑感知调度 ────────────▶ 分布式训练
│ │ │
│ │ │
▼ ▼ ▼
算子开发 ────────────▶ 通信优化 ◀──────────── 框架源码
│ │ │
└────────────────┬─────────┴────────────────┬────────┘
│ │
▼ ▼
编译优化/图优化 推理优化/量化
│ │
└────────────┬─────────────┘
│
▼
LLM应用/Agent
学习建议
1. 理论与实践结合
每学完一个章节:
1. 阅读核心概念 (30%)
2. 理解代码实现 (30%)
3. 动手实践验证 (40%)
实践环境准备:
• 本地: 1张消费级 GPU (RTX 3090/4090)
• 云端: AWS/阿里云 GPU 实例
• 免费: Google Colab / Kaggle
2. 循序渐进
入门阶段 (1-2月):
• 不要急于看源码
• 先理解宏观架构
• 跑通基础 Demo
进阶阶段 (3-6月):
• 深入特定方向
• 阅读核心源码
• 参与开源项目
专家阶段 (6月+):
• 解决复杂问题
• 贡献开源项目
• 输出技术文章
3. 保持关注前沿
推荐关注:
• NVIDIA 官方博客和 GTC 会议
• Hugging Face 博客
• AI Infra 相关开源项目
- vLLM, TGI, DeepSpeed, Megatron-LM
- NCCL, Triton, FlashAttention
论文阅读:
• 每月至少阅读 2-3 篇相关论文
• 重点关注系统优化类论文
常见问题
Q: 需要多少 GPU 资源才能学习?
单卡 GPU 足够学习大部分内容。分布式训练可以使用多个小 GPU 或云服务。很多概念可以通过阅读和小规模实验理解。
Q: 不懂 CUDA 能学 AI Infra 吗?
可以。CUDA 不是入门必须,但深入发展需要。建议先理解宏观架构,再逐步深入底层。
Q: 应该专精一个方向还是广泛学习?
建议 T 型发展:先广泛了解各个模块,再选择 1-2 个方向深入。常见专精方向:
- 训练优化(分布式训练、通信优化)
- 推理优化(模型服务、量化加速)
- 平台开发(调度系统、MLOps)
Q: 面试重点是什么?
参考 09-面试专题/ 目录。核心考察点:
- 分布式训练原理(数据并行、模型并行、流水线并行)
- GPU 调度与资源管理
- 推理优化技术
- 系统设计能力
下一步
根据你的背景选择学习路径,从以下章节开始:
- 后端工程师 → 01-GPU架构基础
- 算法工程师 → 01-CUDA编程模型与内存层次
- 新手入门 → 02-前置知识速览
- 架构师 → 01-分布式训练框架