InfraTech README

The project's README from github.com/CalvinXKY/InfraTech. As one markdown file: README.md.

InfraTech

本仓库主要介绍AI Infra领域相关知识,内容涵盖:**训练/推理框架🧩、性能加速🚀、深度学习🧠、基础硬件🔧**等。

相关练习代码采用Python语言,以notebook形式呈现,帮助读者快速了解或掌握相关内容。

内容介绍

🔍主要文件

📜 文件名 📖 知识分类 说明 难度
MLA_diff_mode_mfu_calculation.ipynb Attention 超细图解MLA计算流&吸收矩阵对比分析 ⚡️⚡️⚡️
rope_principle.ipynb Attention 彻底搞懂RoPE计算原理:从1D到3D ⚡️⚡️⚡️
collective_operations.ipynb 分布式基础 分布式训练/推理基础:集合通信原理与实践 ⚡️
chunked_prefill_and_flash_decoding.ipynb 推理基础 ChunkedPrefill&FlashDecoding原理详解 ⚡️⚡️
attention_mla_flops_with_prefix_cache.ipynb 推理基础 prefix cache为何零开销 ⚡️⚡️
parallel_strategies.ipynb 并行推理 大模型推理并行策略(DP/TP/PP/SP/EP)原理简介 ⚡️
ulysses_mha_demo.ipynb 并行推理 推理Ulysses并行优化 ⚡️
LLM_sampling.ipynb 推理基础 LLM推理采样(Sampling) ⚡️
speculative_decoding.ipynb 推理基础 投机推理的原理与常见方案 ⚡️
dflash_dspark_principle.ipynb 推理基础 快速理解并行投机解码(DFlash/DSpark) ⚡️⚡️
zmq_practice.ipynb 推理基础 - ⚡️
nondeterministic_reduction.ipynb 推理基础 推理的非确定性运算 ⚡️
kv_cache_transfer_vs_recomputation.ipynb 推理基础 KV cache用池化的数据会比重算更快吗? ⚡️⚡️
linear_attention_kv_cache_size.ipynb 推理基础 LinearAttention在KV cache的存储上有多大优势? ⚡️
quantization.ipynb 推理基础 大模型推理量化(Quantization)基础速览 ⚡️
nano_vllm.ipynb Nano-vLLM 推理框架极简入门:用Nano-vLLM搭建知识体系 ⚡️
vllm_basic_scheduler.ipynb vLLM 手搓一个基础调度器 ⚡️⚡️
sglang_radix_attention.ipynb SGLang 手撕RadixAttention ⚡️⚡️
sglang_profiling_from_scratch.ipynb SGLang SGLang Profiling数据采集与分析入门 ⚡️
vllm_mem_snapshot.ipynb vLLM vLLM显存可视化与管理详解 ⚡️
switch_role_update_weights.ipynb SGLang/vLLM 降低RL训推共卡开销:SGLang/vLLM的无缝切换实现与分析 ⚡️
cuda_graph.ipynb 扩展知识 vLLM为什么没在prefill阶段支持cuda graph? ⚡️
LoRA_to_Multi_LoRA.ipynb 训推基础 从LoRA到Multi-LoRA ⚡️⚡️
mini_dl_framework.ipynb 训练框架 从零实现MLP训练全流程 ⚡️⚡️
pytorch_vista_deepseekV3.ipynb PyTorch PyTorch结构可视化 ⚡️
torch_process_share_tensor.ipynb PyTorch PyTorch中基于CUDA IPC的进程间Tensor共享简介 ⚡️
training_infer_colocate.ipynb RL基础 RL训推调度与切换(Megatron⇄SGLang)机制解析 ⚡️

🤖 推理基础知识与框架

📚 文章 📖 知识分类 📜 备注
入门知识:大模型推理核心概念与术语总结 推理基础 🔥🔥🔥
入门知识:大模型推理并行策略(DP/TP/PP/SP/EP)原理简介 推理基础 练习
入门知识:LLM推理并行优化的必备知识 推理基础 🔥🔥🔥
入门知识:从LoRA到Multi-LoRA:原理&代码实践 推理基础 练习
入门知识:ChunkedPrefill&FlashDecoding原理详解 推理基础 练习
入门知识:LLM推理采样(Sampling)常见知识概览 推理基础 🔥
入门知识:Speculative Decoding投机推理的原理与常见方案 推理基础 🔥
入门知识:推理的非确定性运算 推理基础 🔥
入门知识:大模型推理量化(Quantization)基础速览 推理基础 练习
Nano-vLLM架构介绍 Nano-vLLM 🔥🔥
推理框架极简入门:用Nano-vLLM搭建知识体系 Nano-vLLM 练习
vLLM(一):vLLM框架快速入门引导 vLLM 🔥🔥🔥🚀
vLLM(二):vLLM Scheduler逻辑难啃?先手搓一个基础调度器 vLLM 练习
SGLang(一):看不懂SGLang?先试试miniSGLang! SGLang 🔥🔥
SGLang(二):手撕SGLang KV Cache核心逻辑:快速理解RadixAttention SGLang 练习
SGLang(三):Profiling数据采集与分析入门 SGLang 练习
vLLM(三):vLLM显存管理详解 vLLM 🔥代码
vLLM(四):核心模块:vLLM V1 KV cache 管理机制剖析 vLLM 🔥🔥
vLLM(五):vLLM V1 Scheduler的调度逻辑&优先级分析 vLLM 🔥
vLLM(六):vLLM框架V1演进分析 vLLM 🔥🔥🔥
vLLM(七):vLLM的prefix cache为何零开销 vLLM 🔥🔥🔥
vLLM(八):vLLM DP特性与演进方案分析 vLLM 🔥
vLLM(九):LLM推理数据并行负载均衡(DPLB)浅析 vLLM 🔥🔥🔥
PD分离(一):vLLM PD分离方案浅析 特性 🔥🔥🔥 🚀
PD分离(二):vLLM PD分离KV cache传递机制详解与演进分析 特性 🔥🔥🔥
AF分离:Attention与FFN分离(AFD)方案解析 特性 🔥🔥
关键特性EPLB:MoE并行负载均衡,EPLB的深度解析与可视化 特性 🔥🔥
关键特性FlashMLA:深度解析FlashMLA,一文读懂大模型加速新利器 特性 🔥🔥
降低RL训推共卡开销:SGLang/vLLM的无缝切换实现与分析 特性 🔥🔥
推理框架适配Kimi/QwenNext线性注意力:方案&公式&代码 扩展知识 🔥
LinearAttention在KV cache的存储上有多大优势? 扩展知识 🔥🔥
如何评价NVIDIA发布的大模型推理PD分离架构Dynamo? 扩展知识 🔥🔥
KV cache用池化的数据会比重算更快吗? 扩展知识 🔥 练习
vLLM为什么没在prefill阶段支持cuda graph? 扩展知识 🔥 代码

🚀 推理提速经验分享

📚 文章 📖 知识分类
推理性能优化:GPU/NPU Profiling阅读引导 基础知识
推理性能优化:分布式推理优化思路 基础知识
1.5x提升:PD分离KV cache传输的实践经验 vLLM
1.3x提升:LLM推理优化:MLA算力均衡实践 vLLM
3.0x提升:推理Ulysses并行优化与DeepSeekV3/V3.2实践 vLLM
1.3x提升:vLLM推理的Swap特性实践 vLLM
PD分离+弹性伸缩/角色切换的实践笔记 vLLM

RL框架

📚 文章 📖 知识分类 📜 备注
vime:融合slime与vLLM的RL框架 vime 🔥🔥
vime×Ascend:共卡模式适配与实践 vime 🔥
MoE-RL训推一致性:R3原理与性能验证 vime 🔥🔥
vime+MemAgent:记忆智能体的RL后训练 vime 🔥
教你训一个会调用工具的Agent:RL τ-bench vime 🔥
[Slime适配vLLM后端的实践笔记](https://zhuanlan.zhihu.com/p/20331323300642

InfraTech (CalvinXKY/InfraTech)

Searching Database…

这是什么?InfraTech 是一套分享 AI Infra 知识的 Jupyter 笔记本和文章合集,涵盖训练/推理框架(PyTorch、vLLM/SGLang、slime/vime)、性能加速、深度学习基础以及 AI 软硬件基础。
这是教程系列,还是开箱即用的框架?它是一个学习型仓库,由按主题(推理、PyTorch、vLLM、SGLang、强化学习)分类的独立 Jupyter 笔记本和文章组成,不是可以安装并导入你自己项目的框架或库。
如何开始学习这些内容?克隆仓库,在 Jupyter 中打开 ./llminfer(推理练习)、./models(模型介绍)或 ./docs(AI Infra 共享资料)等文件夹下的笔记本,然后运行代码单元格。
运行这些笔记本需要安装 PyTorch 和 vLLM/SGLang 吗?需要,练习以 Python 笔记本的形式编写,部分笔记本还会根据主题额外要求 PyTorch、vLLM 或 SGLang(例如 vLLM 内存管理或 SGLang RadixAttention 相关的笔记本)。
内容是循序渐进的课程,还是松散的主题合集?它是按主题组织的松散合集,而不是严格的循序渐进课程;每个笔记本都有自己的难度评级,用闪电图标表示(1 到 3 道闪电)。
它面向哪些人?面向已经掌握一定深度学习知识、想深入了解 LLM 推理内部机制、并行策略以及 vLLM/SGLang 等框架的工程师和研究人员,而不是完全的初学者。
强化学习部分提到的 vime 是什么?vime 是一个结合 slime 与 vLLM 的强化学习框架,本仓库提供了相关笔记本,涵盖昇腾(Ascend)共置部署、MoE-RL 训练一致性(R3),以及用强化学习训练会调用工具的 Agent(tau-bench)。
Nano-vLLM 在这个仓库中用来做什么?Nano-vLLM 作为一个极简的推理框架,用来讲解从零构建 LLM 推理引擎的核心概念,之后再深入完整的 vLLM/SGLang 代码库。
除基础的模型服务(serving)外,它还涵盖哪些推理主题?它涵盖分块预填充(chunked prefill)、闪存解码(flash decoding)、投机解码(speculative decoding)、KV 缓存策略(包括前缀缓存和线性注意力)、量化、PD 反亲和/分离式部署(disaggregation),以及 MoE 专家并行负载均衡(EPLB)。
没有 GPU 能运行这些笔记本吗?文中没有明确说明,但许多笔记本涉及 CUDA 相关主题,例如 CUDA 图、GPU/NPU 性能分析和 vLLM 内存快照,因此要复现实操示例实际上需要 GPU。
Creator
CalvinXKY
Size
186.8 MB
Stars
4.2K
Updated
CommitSep 20
Age
11mo
Commits · 90 Days