AI Infra Guide
更新日期:2026-05-13

AI Infra 学习指南:从预训练到后训练,再到推理上线

这份教程按真实工程链路组织:数据治理、tokenizer、预训练、SFT、偏好优化、评估、压缩、推理服务、观测和 MLOps。目标不是背名词,而是建立能落地的系统图谱。

Data采集、去重、过滤、治理、版本化
Pretrainnext-token loss、分布式训练、checkpoint
Post-trainSFT、LoRA、DPO、RLHF、安全对齐
ServeKV cache、批处理、路由、观测、回滚
3核心阶段:预训练、后训练、推理
60+工具与工程概念索引
1完整 tiny LLM Colab 实验

1. AI Infra 全景图

AI infra 的本质是把“模型研发”变成可复现、可扩展、可评估、可上线、可回滚的工程系统。一个成熟团队通常不会只做训练脚本,而会维护从数据到线上服务的全链路能力。

1数据系统数据采集、清洗、去重、过滤、标注、合成、版本管理、审计。
2训练系统tokenizer、模型结构、分布式并行、checkpoint、容错、吞吐优化。
3对齐系统SFT、偏好数据、DPO/PPO/GRPO、安全策略、红队评估。
4评估系统公开 benchmark、私有任务集、线上 A/B、回归集、成本和延迟评估。
5推理平台推理引擎、批处理、路由、限流、观测、灰度、回滚。
学习顺序建议:先能跑通一个小模型端到端,再补分布式训练和推理系统。直接从 Megatron 或 TensorRT-LLM 开始容易被配置细节淹没,看不到完整生命周期。

核心角色分工

数据工程

负责数据接入、清洗、去重、质量分、PII/版权过滤、数据版本和 lineage。预训练质量上限很大程度由这层决定。

训练平台

负责 GPU/TPU 集群、调度、容器镜像、分布式训练、checkpoint、故障恢复、吞吐和成本。

模型算法

负责 tokenizer、结构、训练 recipe、后训练方法、合成数据、评估和误差分析。

评估安全

负责 benchmark、私有任务集、红队、政策集、人工评审、自动回归和上线门禁。

推理平台

负责 serving engine、调度、批处理、KV cache、GPU 利用率、API、SLA、观测和回滚。

产品集成

负责 prompt、RAG、工具调用、权限、审计、用户反馈和业务指标闭环。

2. 预训练:从语料到 base model

预训练的目标通常是 next-token prediction。模型通过大规模语料学习语言结构、事实、代码模式、推理痕迹和世界知识。工程重点是数据质量、训练稳定性、吞吐效率和可恢复性。

2.1 数据管线

步骤要做什么常用工具关键风险
采集网页、书籍、代码、论文、问答、日志、合成数据、授权商业数据。Scrapy、Common Crawl、Spark、Ray Data、DataTrove、对象存储。版权、隐私、低质量来源、重复内容。
解析HTML/PDF/Markdown/code 解析,保留结构,去除导航、广告、模板文本。Trafilatura、BeautifulSoup、Apache Tika、Unstructured。正文抽取失败、表格丢失、代码块破坏。
质量过滤语言识别、困惑度过滤、长度过滤、垃圾文本分类、毒性过滤、PII 删除。fastText、KenLM、Presidio、Detoxify、自研分类器。过度过滤导致领域损失,过滤不足导致模型污染。
去重文档级、段落级、near-duplicate、MinHash、SimHash、embedding 去重。Spark/Ray、datasketch、Dedupe pipelines。重复会浪费 token 预算并造成记忆化。
污染检查从训练语料中移除 benchmark、私有测试集、线上评估集相似样本。n-gram match、MinHash、embedding search。评估分数虚高,误判模型能力。
混合配比根据语言、领域、代码、数学、指令数据设置采样权重。YAML recipe、data loader sampling、dataset manifest。某类数据过多导致能力偏科或安全问题。
版本化记录 manifest、hash、过滤版本、采样权重、许可证和审计说明。DVC、lakeFS、Delta/Iceberg、HF Datasets、MLflow artifacts。无法复现实验,无法审计数据来源。

2.2 Tokenizer 与 chat template

Tokenizer 是模型的输入协议。它影响序列长度、成本、多语言能力、代码能力和特殊结构表达。常见方法包括 BPE、Unigram、WordPiece、SentencePiece、byte-level BPE 和 tiktoken 风格 tokenizer。

2.3 模型结构与训练 recipe

模型结构

主流 LLM 以 decoder-only Transformer 为主,常见组件包括 RoPE、RMSNorm、SwiGLU、Grouped Query Attention、Mixture-of-Experts、长上下文 attention 和多模态 adapter。

训练 recipe

关键参数包括 batch size、sequence length、learning rate、warmup、weight decay、gradient clipping、precision、optimizer、activation checkpointing、数据采样权重和 checkpoint 间隔。

2.4 分布式训练并行

并行方式解决的问题典型工具什么时候用
Data Parallel每张卡复制模型,切分 batch,梯度 all-reduce。PyTorch DDP、Accelerate。模型能放进单卡,想提高吞吐。
FSDP / ZeRO切分参数、梯度、optimizer state,降低显存。PyTorch FSDP、DeepSpeed ZeRO。单卡放不下完整训练状态。
Tensor Parallel把单层矩阵计算切到多卡。Megatron-LM、TensorRT-LLM、vLLM TP。单层参数或激活太大。
Pipeline Parallel把模型层切到不同 GPU。Megatron-LM、DeepSpeed pipeline。层数多,模型整体太大。
Sequence / Context Parallel切分长序列的 attention 和激活。Megatron Core、RingAttention、DeepSpeed-Ulysses。超长上下文训练。
Expert ParallelMoE 专家分布在多卡。Megatron Core、DeepSpeed MoE、Tutel。训练 MoE 模型。

2.5 训练观测与故障恢复

2.6 预训练最小命令形态

# PyTorch/FSDP 风格
torchrun --nproc_per_node=8 train.py \
  --config configs/pretrain_1b.yaml \
  --data_manifest s3://bucket/manifests/v12.jsonl \
  --checkpoint_dir s3://bucket/checkpoints/run_042

# DeepSpeed ZeRO 风格
deepspeed train.py \
  --deepspeed configs/ds_zero3.json \
  --model_config configs/model_1b.json \
  --dataset_config configs/data_mix.yaml

# Megatron-LM 风格
torchrun --nproc_per_node=8 pretrain_gpt.py \
  --tensor-model-parallel-size 2 \
  --pipeline-model-parallel-size 2 \
  --seq-length 4096 \
  --micro-batch-size 1 \
  --global-batch-size 512

3. 后训练:把 base model 变成可用助手

后训练不是单一算法,而是一组让模型“更听话、更有用、更安全、更符合业务偏好”的流程。常见顺序是 SFT -> preference tuning -> safety tuning -> evaluation -> model merging/export。

3.1 SFT:监督指令微调

SFT 使用 prompt-response 样本训练模型输出目标回答。关键是样本质量、格式一致性、assistant-only loss、去重和验证集。数据越少越要精,混入低质量长回答会快速破坏模型风格。

主题实践建议常用工具
数据格式统一为 messages 或 prompt/completion,记录 system prompt 和工具调用结构。Hugging Face Datasets、ShareGPT、OpenAI messages、JSONL。
训练方式小预算用 LoRA/QLoRA,大预算或核心模型用全量微调。PEFT、TRL SFTTrainer、Axolotl、LLaMA-Factory、torchtune、Unsloth。
损失 mask通常只训练 assistant 输出,避免让模型学习复述用户输入。TRL `assistant_only_loss`、自定义 data collator。
质量控制去除模板化、幻觉、过长、低信息密度、政策冲突、重复样本。规则过滤、LLM judge、人审、embedding 聚类。

3.2 PEFT、LoRA、QLoRA 与全量微调

LoRA

低成本适配

只训练低秩 adapter,显存和存储成本低,适合快速迭代、多租户、多风格、多任务场景。

QLoRA

量化底座

以 4-bit/8-bit 加载 base model,同时训练 LoRA adapter,适合单卡或小集群微调。

Full FT

深度改变模型

全量更新参数,可能获得更强能力变化,但需要更高算力、更严格评估和灾难性遗忘控制。

3.3 偏好优化与 RLHF

偏好优化使用 chosen/rejected 或 reward 信号,让模型更偏好高质量回答。2026 年的常见路线包括 DPO、IPO、KTO、ORPO、PPO、RLOO、GRPO、rejection sampling 和 distillation。选择时先问:你是否有稳定偏好数据,是否需要在线采样,是否能承受 RL 系统复杂度。

方法输入数据优点注意事项
DPOprompt、chosen、rejected。不需要单独训练 reward model,工程简单,适合偏好对齐。依赖偏好数据质量,过强会损伤多样性。
Reward Model + PPO偏好数据训练 reward,再在线采样优化 policy。灵活,可处理复杂奖励和多轮任务。系统复杂,容易 reward hacking,需要 KL 控制和稳定评估。
GRPO/RLOO同一 prompt 多个采样,按组内相对奖励优化。常用于推理/数学/代码类强化学习实验。采样成本高,奖励设计决定上限。
Distillation教师模型生成的答案、推理轨迹或偏好。可以把大模型能力迁移到小模型,常用于降低成本。会继承教师模型偏差和错误,必须做过滤。

3.4 安全与策略训练

3.5 后训练命令形态

# TRL SFT
python train_sft.py \
  --model Qwen/Qwen3-0.6B \
  --dataset ./data/sft.jsonl \
  --assistant_only_loss true \
  --output_dir ./runs/sft-qwen-small

# PEFT/LoRA
python train_lora.py \
  --model meta-llama/Llama-3.2-1B \
  --lora_r 16 --lora_alpha 32 \
  --target_modules q_proj,k_proj,v_proj,o_proj

# DPO
python train_dpo.py \
  --model ./runs/sft-qwen-small \
  --preference_dataset ./data/prefs.jsonl \
  --beta 0.1

4. 评估:AI infra 的上线门禁

评估是模型工程里最容易被低估的部分。没有评估,训练只是昂贵的猜测。真正可用的 eval 系统要能持续阻止回归,解释失败,并和线上指标闭环。

离线评估

公开 benchmark 用于横向比较,私有 eval 用于业务决策。建议每个产品能力都有固定回归集,并把失败案例沉淀成 hard set。

线上评估

监控延迟、错误率、成本、满意度、人工接管率、重试率、投诉率、拒答率和质量漂移。线上数据要定期回流到训练和评估。

评估层示例推荐工具
基础能力知识、数学、代码、阅读理解、多语言。lm-evaluation-harness、HELM、自定义 benchmark。
业务能力客服、检索问答、代码修复、数据分析、报告生成。OpenAI Evals、DeepEval、W&B Weave、MLflow、内部 eval runner。
RAG检索召回、答案 groundedness、faithfulness、引用准确率。Ragas、DeepEval、TruLens、Weave。
安全越狱、政策绕过、PII 泄露、有害建议、偏见。Safety classifiers、red-team suites、人工审核。
系统p50/p95/p99、tokens/sec、GPU 利用率、OOM、队列时间。Prometheus、Grafana、OpenTelemetry、vLLM metrics、TGI metrics。

5. 推理:把模型变成稳定产品能力

LLM 推理不是简单调用 `model.generate()`。生产系统要解决 GPU 利用率、KV cache、批处理、长上下文、路由、限流、观测、安全和多租户成本。

5.1 请求生命周期

1入口认证、限流、租户、日志脱敏、prompt 模板。
2Tokenize检查长度、特殊 token、工具 schema、截断策略。
3Prefill处理 prompt,建立 KV cache,首 token 延迟关键阶段。
4Decode逐 token 生成,依赖批处理、KV cache 和采样策略。
5返回流式输出、内容安全、结构校验、计费、trace。

5.2 推理优化手段

手段解决什么典型工具代价
Continuous batching动态合并请求,提高吞吐。vLLM、TGI、SGLang、TensorRT-LLM。调度复杂,p99 需要细调。
Paged KV cache减少 KV cache 碎片,提高并发。vLLM PagedAttention。依赖引擎支持。
Quantization降低显存和成本。bitsandbytes、AWQ、GPTQ、GGUF、FP8、TensorRT-LLM。可能损伤质量,需要逐任务评估。
Speculative decoding用小 draft model 加速大模型生成。vLLM、TensorRT-LLM、自研。需要 draft 模型与接受率调优。
Prefix cache复用相同系统提示或长上下文前缀。vLLM、SGLang、部分托管平台。缓存一致性和隔离要谨慎。
Routing不同请求分配给不同模型或集群。LiteLLM、自研 router、Ray Serve、Gateway。需要质量、成本和 SLA 策略。
Disaggregated serving把 prefill 和 decode 分离,提高集群利用率。vLLM/llm-d/TensorRT-LLM 生态。部署和网络复杂度更高。

5.3 推理服务命令形态

# vLLM OpenAI-compatible API
vllm serve Qwen/Qwen3-0.6B \
  --host 0.0.0.0 \
  --port 8000 \
  --tensor-parallel-size 1 \
  --max-model-len 8192

# Hugging Face TGI
docker run --gpus all -p 8080:80 \
  -e MODEL_ID=Qwen/Qwen3-0.6B \
  ghcr.io/huggingface/text-generation-inference:latest

# llama.cpp / GGUF local serving
llama-server -m ./model.gguf \
  --host 0.0.0.0 \
  --port 8080 \
  -c 8192
重要:TGI 官方文档已说明该项目处于维护模式,并推荐关注 vLLM、SGLang、llama.cpp/MLX 等下游推理引擎。选型时要看模型兼容性、吞吐、延迟、观测、团队熟悉度和部署环境。

6. 主流工具矩阵

下面按生命周期列出常见工具。不要为了“全都用”而堆工具,先用最小闭环跑通:数据版本、训练、评估、服务、观测、回滚。

阶段主流工具适合场景学习重点
数据处理Hugging Face Datasets、Spark、Ray Data、DataTrove、DVC、lakeFS、Delta/Iceberg、MinIO/S3/GCS。从小数据实验到大规模数据湖。Parquet/Arrow、数据 manifest、去重、质量过滤、lineage。
TokenizerHugging Face Tokenizers、SentencePiece、tiktoken、Transformers chat templates。中英文、代码、多模态、工具调用协议。BPE/Unigram、special tokens、模板一致性。
单机训练PyTorch、Transformers Trainer、Lightning、Accelerate、torchtune。原型、SFT、小模型、教学。训练循环、mask、AMP、梯度累积、日志。
分布式训练PyTorch DDP/FSDP、DeepSpeed ZeRO、Megatron-LM/Core、NeMo、Ray Train、JAX/MaxText。大模型预训练、多节点、多卡训练。并行策略、通信、checkpoint、调度、容错。
高效微调PEFT、TRL、Axolotl、LLaMA-Factory、Unsloth、torchtune。LoRA/QLoRA、SFT、DPO、快速实验。数据格式、adapter、merge、验证集、显存估算。
RLHF/RLTRL、OpenRLHF、NeMo-Aligner/Gym、Ray、vLLM generation workers。DPO、PPO、GRPO、agentic RL、推理能力强化。reward、KL、采样成本、稳定性、reward hacking。
评估lm-evaluation-harness、OpenAI Evals、DeepEval、Ragas、W&B Weave、MLflow。公开 benchmark、私有 eval、RAG eval、LLM judge。评估集版本、污染、阈值、人工一致性、回归门禁。
压缩导出bitsandbytes、GPTQ、AWQ、GGUF/llama.cpp、ONNX、TensorRT-LLM、Safetensors。降显存、边缘部署、高吞吐服务。质量回归、校准集、格式转换、模型卡。
推理引擎vLLM、SGLang、TensorRT-LLM、TGI、llama.cpp、Ollama、MLX。OpenAI-compatible API、本地推理、GPU 集群。KV cache、批处理、量化、路由、长上下文。
服务平台Kubernetes、KServe、Triton、Ray Serve、BentoML、Knative、API Gateway。多模型、多租户、自动扩缩、生产 SLA。部署声明、健康检查、autoscaling、灰度、回滚。
观测与实验MLflow、W&B、Prometheus、Grafana、OpenTelemetry、Arize Phoenix、LangSmith。训练追踪、线上 trace、成本和质量监控。指标设计、日志脱敏、trace 采样、告警。
调度与集群Slurm、Kubernetes、Ray、Volcano、Kubeflow Pipelines、Airflow、Argo Workflows。GPU 集群、流水线、批任务、训练作业。资源隔离、队列、公平调度、失败重试、镜像管理。

7. Google Colab 完整实践

我已配套制作一个标准 `.ipynb` notebook:不依赖大模型下载,用 tiny Transformer 从零跑通数据、tokenizer、预训练、SFT、DPO 风格偏好优化、评估、推理、量化、FastAPI 测试和工件导出。

导入方式

  1. 点击下载:ai-infra-colab-demo.ipynb
  2. 打开 Google Colab
  3. 选择 `File -> Upload notebook`,上传刚下载的 `.ipynb`。
  4. 可选:`Runtime -> Change runtime type -> T4 GPU`。
  5. 从上到下运行,观察每个阶段的 loss、偏好准确率和生成结果。

Notebook 包含

  • Byte-level BPE tokenizer 训练。
  • 2 层 TinyGPT 模型定义。
  • 预训练 next-token loss。
  • assistant-only SFT loss mask。
  • 手写 DPO 风格偏好优化。
  • loss 曲线、perplexity、偏好准确率。
  • temperature/top-k 推理生成。
  • 动态量化和 FastAPI 测试。
  • 模型、tokenizer、config、model card 导出。

Notebook 的学习目标

阶段你会看到什么生产对应
数据小型 pretrain corpus、SFT 样本、preference pairs。数据湖、标注平台、合成数据、审计。
Tokenizer训练 BPE、编码/解码、special tokens。HF Tokenizers、SentencePiece、chat template。
预训练next-token prediction 的最小训练循环。Megatron/FSDP/DeepSpeed 大规模训练。
SFT只对 assistant tokens 计算 loss。TRL/Axolotl/LLaMA-Factory/Unsloth。
DPOchosen/rejected logprob 比较。TRL DPOTrainer、OpenRLHF、NeMo。
推理采样生成、量化、API 测试。vLLM/SGLang/TensorRT-LLM/KServe。

8. 12 周学习路线

这条路线适合有 Python 和基础深度学习背景的人。每天 1 到 2 小时,重点是做实验和写复盘。

第 1 周:Transformer 与 PyTorch 基础
手写 tiny causal LM,理解 embedding、attention、MLP、LayerNorm、causal mask、cross entropy。
第 2 周:数据与 tokenizer
练习 JSONL、Parquet、HF Datasets、tokenizer 训练、chat template、数据去重和质量过滤。
第 3 周:预训练循环
实现 next-token training、梯度累积、warmup、checkpoint、resume、loss 曲线和 perplexity。
第 4 周:分布式训练入门
跑 DDP、Accelerate、FSDP 或 DeepSpeed ZeRO,小规模理解显存拆分和通信。
第 5 周:SFT 与 PEFT
用 TRL/PEFT 或 Axolotl 做 LoRA/QLoRA,学习 assistant-only loss、adapter merge、验证集。
第 6 周:偏好优化
做 DPO/ORPO/KTO 实验,理解 chosen/rejected、reference model、beta、KL 和过拟合。
第 7 周:评估系统
建立私有 eval JSONL,接入 lm-eval-harness、DeepEval 或 OpenAI Evals,设置上线阈值。
第 8 周:RAG 与工具调用
实现检索、rerank、groundedness eval、引用检查、工具 schema 和失败回放。
第 9 周:推理引擎
部署 vLLM/SGLang/llama.cpp,压测 p50/p95、吞吐、并发、max context、显存。
第 10 周:量化与压缩
比较 BF16、FP8、AWQ、GPTQ、GGUF、bitsandbytes,评估质量和速度变化。
第 11 周:MLOps 与 Kubernetes
用 MLflow/W&B 追踪实验,用 KServe/Ray Serve/BentoML 发布服务,接入 Prometheus/Grafana。
第 12 周:端到端项目
选一个真实领域,完成数据、SFT、DPO、eval、推理服务、监控和回滚文档。

9. 上线检查清单

10. 高频概念速查

概念解释为什么重要
MFUModel FLOPs Utilization,衡量训练计算利用率。判断集群是否被通信、IO 或低效 kernel 拖慢。
KV cacheTransformer decode 时缓存历史 key/value。决定长上下文和高并发推理显存成本。
Prefill处理 prompt 的阶段。影响首 token 延迟,长 prompt 成本高。
Decode逐 token 生成阶段。影响输出速度和总延迟。
Adapter插入或附加到 base model 的小参数模块。降低微调和多场景部署成本。
Eval leakage训练数据包含评估题或近似样本。会让评估分数失真。
Reward hacking模型钻奖励函数漏洞。RLHF/RL 训练中常见,需要人工和多指标约束。
Autoscaling按流量自动扩缩推理副本。控制成本和 SLA,但 GPU 冷启动和模型加载要重点优化。

11. 官方资料与延伸阅读

我优先引用官方文档和项目主页,避免用过时博客作为主依据。具体版本会变化,实际落地前应以项目当前 release notes 为准。

  1. PyTorch FSDP 文档
  2. Hugging Face Datasets 文档
  3. Hugging Face Tokenizers 文档
  4. Transformers Trainer 文档
  5. PEFT LoRA 文档
  6. TRL SFTTrainer 文档
  7. DeepSpeed Getting Started
  8. DeepSpeed ZeRO++ 教程
  9. NVIDIA Megatron-LM
  10. NVIDIA NeMo 文档
  11. Axolotl 文档
  12. Unsloth 文档
  13. torchtune 文档
  14. OpenRLHF
  15. vLLM 项目主页
  16. Hugging Face TGI 文档
  17. NVIDIA TensorRT-LLM 文档
  18. SGLang 文档
  19. Ray Train 文档
  20. Kubeflow Pipelines 文档
  21. MLflow Tracking 文档
  22. W&B Weave 文档
  23. EleutherAI lm-evaluation-harness
  24. OpenAI Evals
  25. DeepEval 文档
  26. KServe 文档
  27. BentoML 文档