从零到就业,每个阶段需要掌握的具体技术/工具/框架
🗺️ 全局路线图
flowchart TB
subgraph P1["阶段一:基础筑基(4-6周)"]
P1A["Python 工程能力"] --> P1B["ML/DL 基础"]
P1B --> P1C["NLP 基础"]
end
subgraph P2["阶段二:LLM 核心(6-8周)"]
P2A["Transformer 原理"] --> P2B["模型生态"]
P2B --> P2C["Prompt 工程"]
end
subgraph P3["阶段三:应用开发(8-10周)"]
P3A["RAG 系统"] --> P3B["Agent 开发"]
P3B --> P3C["模型微调"]
P3C --> P3D["多模态"]
end
subgraph P4["阶段四:工程落地(6-8周)"]
P4A["推理部署"] --> P4B["系统架构"]
P4B --> P4C["评估监控"]
P4C --> P4D["安全合规"]
end
subgraph P5["阶段五:进阶(持续)"]
P5A["前沿追踪"] --> P5B["项目实战"]
end
P1 --> P2 --> P3 --> P4 --> P5
阶段一:基础筑基(4-6 周)
目标
具备 Python 工程能力、ML/DL 基础、NLP 入门,为 LLM 学习打地基。
1.1 Python 工程能力(1-2 周)
flowchart LR
subgraph 语言核心
Py1["异步 asyncio/aiohttp"]
Py2["类型提示 typing"]
Py3["数据校验 Pydantic v2"]
Py4["装饰器/上下文管理器"]
end
subgraph Web框架
FW1["FastAPI ★首选"]
FW2["Flask"]
end
subgraph 数据处理
DP1["pandas"]
DP2["numpy"]
DP3["json/jsonlines"]
end
subgraph 工具链
TL1["Git + GitHub"]
TL2["Docker 基础"]
TL3["Linux 命令行"]
TL4["uv / pip 包管理"]
end
| 必学技术 |
说明 |
优先级 |
| FastAPI |
LLM 应用首选 Web 框架,支持 async、流式、WebSocket |
⭐⭐⭐⭐⭐ |
| Pydantic v2 |
数据验证和 Schema 定义,LangChain/LlamaIndex 底层依赖 |
⭐⭐⭐⭐⭐ |
| asyncio / aiohttp |
异步编程,LLM API 并发调用必备 |
⭐⭐⭐⭐ |
| typing |
类型提示,提升代码可维护性 |
⭐⭐⭐⭐ |
| Git |
版本控制,代码/Prompt/配置管理 |
⭐⭐⭐⭐⭐ |
| Docker |
容器化部署,LLM 服务标准交付方式 |
⭐⭐⭐⭐ |
| Linux 命令行 |
服务器操作必备 |
⭐⭐⭐⭐ |
| pandas / numpy |
数据处理和分析 |
⭐⭐⭐ |
| httpx |
异步 HTTP 客户端,调 LLM API 用 |
⭐⭐⭐⭐ |
| rich / loguru |
终端美化 / 日志,开发体验提升 |
⭐⭐⭐ |
学习清单:
- [ ] FastAPI:路由、中间件、WebSocket、流式响应(SSE)
- [ ] Pydantic v2:BaseModel、Field、Validator
- [ ] asyncio:async/await、Task、Semaphore 控制并发
- [ ] Docker:Dockerfile 编写、docker-compose
- [ ] Git:分支管理、PR 流程、.gitignore
- [ ] Linux:文件操作、进程管理、网络调试
1.2 机器学习基础(1 周)
| 必学技术 |
说明 |
优先级 |
| Scikit-learn |
传统 ML 算法,理解评估指标 |
⭐⭐⭐ |
| 评估指标 |
准确率/精确率/召回率/F1/AUC |
⭐⭐⭐⭐ |
学习清单:
- [ ] 监督学习:分类、回归基本概念
- [ ] 常见算法原理(不用手写,理解思想即可)
- [ ] 模型评估指标和交叉验证
- [ ] 过拟合/欠拟合的理解
1.3 深度学习基础(1-2 周)
| 必学技术 |
说明 |
优先级 |
| PyTorch ★必学 |
LLM 生态的事实标准,HuggingFace 底层 |
⭐⭐⭐⭐⭐ |
| HuggingFace Transformers |
预训练模型库,LLM 开发核心工具 |
⭐⭐⭐⭐⭐ |
| HuggingFace Tokenizers |
分词器,理解 BPE/WordPiece |
⭐⭐⭐⭐ |
| CUDA 基础 |
GPU 计算概念、device 管理 |
⭐⭐⭐ |
PyTorch 必学清单:
- [ ] Tensor 操作:创建、索引、变形、广播
- [ ] 自动微分:autograd、backward
- [ ] nn.Module:自定义模型、参数管理
- [ ] 训练循环:DataLoader、Optimizer、Loss
- [ ] GPU 管理:.to(device)、cuda()、混合精度
- [ ] 模型保存/加载:state_dict、torch.save
Transformers 必学清单:
- [ ] pipeline:快速推理
- [ ] AutoModel / AutoTokenizer:加载模型和分词器
- [ ] Trainer API:训练流程
- [ ] 模型配置:AutoConfig
- [ ] 生成配置:GenerationConfig
1.4 NLP 基础(1 周)
| 必学技术 |
说明 |
优先级 |
| 分词 |
jieba(中文)、Tokenizers(子词) |
⭐⭐⭐ |
| Embedding |
Word2Vec、Sentence-BERT |
⭐⭐⭐⭐ |
| HuggingFace Datasets |
数据集加载和处理 |
⭐⭐⭐⭐ |
学习清单:
- [ ] 中文分词:jieba
- [ ] 子词分词:BPE 算法原理
- [ ] 词向量:Word2Vec → Sentence Embedding
- [ ] Seq2Seq 和 Attention 机制入门
阶段二:LLM 核心知识(6-8 周)
目标
深入理解 Transformer、预训练/后训练、Prompt Engineering,熟悉主流模型和 API。
flowchart TB
subgraph 核心组件
SA["Self-Attention<br/>Q/K/V 计算"]
MHA["Multi-Head Attention"]
FFN["FFN + SwiGLU"]
PE["位置编码<br/>RoPE / ALiBi"]
LN["LayerNorm / RMSNorm"]
RC["残差连接"]
end
subgraph 架构变体
Dec["Decoder-only (GPT/LLaMA)"]
Enc["Encoder-only (BERT)"]
ED["Enc-Dec (T5/BART)"]
end
subgraph 关键机制
KV["KV Cache"]
GQA["GQA / MQA"]
FA["Flash Attention"]
MOE["MoE 混合专家"]
end
必须掌握的概念(能画图 + 能推导 + 能讲清楚):
- [ ] Self-Attention 完整计算流程(Q/K/V、缩放、Softmax)
- [ ] Multi-Head Attention 的作用和实现
- [ ] 位置编码:正弦 → RoPE → ALiBi 的演进
- [ ] Decoder-only 的 Causal Mask 机制
- [ ] KV Cache 原理和内存计算
- [ ] GQA vs MHA vs MQA 的区别和取舍
- [ ] FFN 层的作用(知识存储)
- [ ] Pre-Norm vs Post-Norm
- [ ] 残差连接和 LayerNorm/RMSNorm
- [ ] Flash Attention 的 IO 感知优化思想
- [ ] MoE 混合专家的路由机制
- [ ] Transformer 参数量计算(12Ld² 近似公式)
动手实践:
- [ ] 用 PyTorch 手写一个 MiniGPT(2-4 层,小规模)
- [ ] 实现 Self-Attention(不用 nn.MultiheadAttention)
- [ ] 实现 KV Cache 的推理逻辑
- [ ] 用 Transformers 加载 LLaMA,观察模型结构
2.2 预训练与后训练(2 周)
| 必学概念 |
说明 |
优先级 |
| CLM(因果语言模型) |
GPT 系列的训练目标 |
⭐⭐⭐⭐⭐ |
| Scaling Laws |
参数量/数据量/计算量的幂律关系 |
⭐⭐⭐⭐ |
| SFT 监督微调 |
指令微调的核心流程 |
⭐⭐⭐⭐⭐ |
| RLHF |
奖励模型 + PPO 优化 |
⭐⭐⭐⭐ |
| DPO |
直接偏好优化,绕过 RM |
⭐⭐⭐⭐⭐ |
| Tokenization |
BPE / SentencePiece |
⭐⭐⭐⭐ |
学习清单:
- [ ] 预训练目标:CLM(GPT)、MLM(BERT)、Span Corruption(T5)
- [ ] Scaling Laws:理解 loss 与 N/D/C 的关系
- [ ] Chinchilla 最优比例:tokens ≈ 20 × 参数量
- [ ] SFT 流程:数据格式、只计算 response 的 loss
- [ ] RLHF 三阶段:SFT → RM 训练 → PPO 优化
- [ ] DPO 原理:Bradley-Terry 模型、偏好数据
- [ ] BPE 分词算法:迭代合并最高频字符对
- [ ] SentencePiece:语言无关的分词
必读论文:
- Attention Is All You Need (2017)
- Scaling Laws for Neural Language Models (2020)
- Training language models to follow instructions with human feedback (2022)
- Direct Preference Optimization (2023)
- LLaMA: Open and Efficient Foundation Language Models (2023)
2.3 Prompt Engineering(2 周)
flowchart LR
subgraph 基础技巧
PE1["Zero-Shot"]
PE2["Few-Shot"]
PE3["角色设定 Role"]
PE4["输出格式 JSON/Markdown"]
end
subgraph 推理增强
RE1["Chain-of-Thought ★"]
RE2["Self-Consistency"]
RE3["Tree of Thoughts"]
RE4["Least-to-Most"]
end
subgraph Agent模式
AM1["ReAct ★"]
AM2["Function Calling ★"]
AM3["Plan-and-Execute"]
end
subgraph 安全防护
SP1["Prompt Injection 防御"]
SP2["输出验证"]
SP3["Guardrails"]
end
| 必学技术 |
说明 |
优先级 |
| OpenAI API |
Chat Completions、Function Calling、流式 |
⭐⭐⭐⭐⭐ |
| Anthropic API |
Claude API、Tool Use |
⭐⭐⭐⭐ |
| CoT 推理 |
一步步思考,提升推理能力 |
⭐⭐⭐⭐⭐ |
| Function Calling |
工具调用的标准接口 |
⭐⭐⭐⭐⭐ |
| JSON Mode / Structured Output |
结构化输出 |
⭐⭐⭐⭐ |
| Prompt Injection 防御 |
安全必修 |
⭐⭐⭐⭐ |
学习清单:
- [ ] OpenAI Python SDK(openai 库):Chat Completions、Streaming、Function Calling
- [ ] Anthropic Python SDK(anthropic 库)
- [ ] 通用 LLM 调用模式:httpx 直接调 API
- [ ] Prompt 模板设计:角色、任务、约束、格式、示例
- [ ] CoT / Zero-Shot CoT / Few-Shot CoT
- [ ] Self-Consistency(多次采样投票)
- [ ] ReAct 框架的 Prompt 设计
- [ ] Function Calling 的参数定义和调用流程
- [ ] JSON Mode 和 Structured Output
- [ ] Prompt Injection 的攻击方式和防御策略
- [ ] Prompt 版本管理(Git / Prompt Registry)
2.4 主流模型生态(1 周)
flowchart TB
subgraph 闭源API
OAI["OpenAI<br/>GPT-4o / o1 / o3"]
ANT["Anthropic<br/>Claude 3.5/4"]
GEM["Google<br/>Gemini 2.0"]
end
subgraph 开源模型
LLAMA["Meta LLaMA 3/4"]
QWEN["阿里 Qwen 2.5/3"]
DS["DeepSeek V3/R1"]
MISTRAL["Mistral / Mixtral"]
end
subgraph 中国模型
ZHIPU["智谱 GLM-4"]
BAIDU["百度 文心"]
MINIMAX["MiniMax"]
MOON["月之暗面 Kimi"]
end
必学清单:
- [ ] 各模型的 API 调用方式和参数差异
- [ ] 各模型的能力对比(推理、代码、多语言、多模态)
- [ ] 各模型的定价模型(按 token、按请求)
- [ ] 各模型的上下文长度(4K/32K/128K/1M)
- [ ] 开源模型的本地部署方式(Ollama/vLLM)
- [ ] 模型选型决策树:任务类型 → 能力需求 → 成本约束
阶段三:应用开发实战(8-10 周)
目标
掌握 RAG、Agent、微调、多模态四大方向,能独立开发完整的 LLM 应用。
3.1 RAG 系统开发(3 周)
flowchart TB
subgraph 文档处理层
DL["文档加载<br/>LangChain DocumentLoader"]
TS["文档切分<br/>RecursiveCharacterTextSplitter"]
OCR["OCR 识别<br/>PaddleOCR / Tesseract"]
end
subgraph 索引层
EM["Embedding 模型<br/>BGE-M3 / GTE-Qwen / OpenAI"]
VDB["向量数据库<br/>Milvus / Qdrant / Chroma / FAISS"]
BM25["关键词索引<br/>BM25 / Elasticsearch"]
end
subgraph 检索层
VS["向量搜索"]
KS["关键词搜索"]
HY["混合搜索 + RRF"]
RR["Rerank 重排序<br/>BGE-Reranker / Cohere"]
end
subgraph 生成层
QT["Query 改写 / HyDE"]
PC["Prompt 构建"]
LLM["LLM 生成"]
CIT["引用标注"]
end
subgraph 评估层
RAGAS["RAGAS 评估"]
TRU["TruLens"]
LS["LangSmith 追踪"]
end
必学框架
| 框架/工具 |
用途 |
优先级 |
说明 |
| LangChain |
RAG Pipeline 编排 |
⭐⭐⭐⭐⭐ |
生态最大,组件最多 |
| LlamaIndex |
RAG 专用框架 |
⭐⭐⭐⭐⭐ |
RAG 更深入,Query Engine 更强 |
| LangSmith |
追踪和评估 |
⭐⭐⭐⭐ |
LangChain 官方,调试必备 |
| RAGAS |
RAG 评估框架 |
⭐⭐⭐⭐ |
Faithfulness/Relevancy 等指标 |
必学组件——文档处理
| 技术 |
说明 |
优先级 |
| LangChain DocumentLoader |
PDF/Word/网页/Markdown 加载 |
⭐⭐⭐⭐⭐ |
| Unstructured |
复杂文档解析(PDF/图片/表格) |
⭐⭐⭐⭐ |
| PaddleOCR / Tesseract |
OCR 文字识别 |
⭐⭐⭐⭐ |
| PyMuPDF / PDFPlumber |
PDF 文本提取 |
⭐⭐⭐⭐ |
| Trafilatura / BeautifulSoup |
网页正文提取 |
⭐⭐⭐ |
| python-docx |
Word 文档解析 |
⭐⭐⭐ |
| python-pptx |
PPT 解析 |
⭐⭐ |
文档切分:
| 切分器 |
说明 |
优先级 |
| RecursiveCharacterTextSplitter |
LangChain 默认,递归按段落→句子→字符 |
⭐⭐⭐⭐⭐ |
| MarkdownHeaderTextSplitter |
按 Markdown 标题层级切分 |
⭐⭐⭐⭐ |
| TokenTextSplitter |
按 token 数切分 |
⭐⭐⭐ |
| SemanticChunker |
按语义相似度变化点切分 |
⭐⭐⭐⭐ |
| LateChunking |
先 Embedding 再切分,保留上下文 |
⭐⭐⭐ |
必学组件——Embedding 模型
| 模型 |
维度 |
中文 |
说明 |
优先级 |
| BGE-M3 |
1024 |
✓✓ |
多语言,多功能,开源首选 |
⭐⭐⭐⭐⭐ |
| GTE-Qwen2 |
1536 |
✓✓ |
效果顶级 |
⭐⭐⭐⭐⭐ |
| OpenAI text-embedding-3 |
3072 |
✓ |
API 调用,效果好 |
⭐⭐⭐⭐ |
| Jina-embeddings-v3 |
1024 |
✓ |
多语言,速度快 |
⭐⭐⭐ |
| nomic-embed-text |
768 |
△ |
轻量,本地部署 |
⭐⭐⭐ |
必学组件——向量数据库
| 数据库 |
类型 |
适用场景 |
优先级 |
| Chroma |
嵌入式 |
原型开发、本地实验 |
⭐⭐⭐⭐ |
| Milvus |
分布式 |
生产环境、大规模 |
⭐⭐⭐⭐⭐ |
| Qdrant |
独立服务 |
生产环境、高性能 |
⭐⭐⭐⭐ |
| FAISS |
库 |
纯内存、高性能 |
⭐⭐⭐⭐ |
| Weaviate |
独立服务 |
内置混合搜索 |
⭐⭐⭐ |
| pgvector |
PG 扩展 |
已有 PG 基础设施 |
⭐⭐⭐ |
| Pinecone |
云服务 |
全托管、省运维 |
⭐⭐⭐ |
必学组件——检索优化
| 技术 |
说明 |
优先级 |
| 向量搜索 |
余弦相似度 / 内积 / 欧氏距离 |
⭐⭐⭐⭐⭐ |
| BM25 |
关键词精确匹配 |
⭐⭐⭐⭐ |
| 混合搜索 + RRF |
向量 + BM25 结果融合 |
⭐⭐⭐⭐⭐ |
| Rerank |
Cross-Encoder 精排(BGE-Reranker、Cohere Rerank) |
⭐⭐⭐⭐⭐ |
| HyDE |
用 LLM 生成假设答案再检索 |
⭐⭐⭐⭐ |
| Query 改写 |
同义改写 / 子问题分解 / Step-back |
⭐⭐⭐⭐ |
| Parent-Child Chunking |
小 Chunk 检索,大 Chunk 送 LLM |
⭐⭐⭐⭐ |
| Contextual Retrieval |
Chunk 前加上下文说明(Anthropic) |
⭐⭐⭐ |
必学组件——评估
| 工具 |
说明 |
优先级 |
| RAGAS |
RAG 评估框架(Faithfulness/Relevancy/Precision/Recall) |
⭐⭐⭐⭐⭐ |
| TruLens |
RAG 可观测和评估 |
⭐⭐⭐⭐ |
| LangSmith |
LangChain 追踪、调试、评估 |
⭐⭐⭐⭐⭐ |
| Phoenix (Arize) |
LLM 可观测性 |
⭐⭐⭐ |
RAG 学习清单
第1周:基础 RAG
- [ ] LangChain 安装和基本使用
- [ ] DocumentLoader:加载 PDF、Markdown、网页
- [ ] TextSplitter:RecursiveCharacterTextSplitter 使用和调参
- [ ] Embedding:用 OpenAI / BGE-M3 生成向量
- [ ] Chroma:本地向量数据库的增删改查
- [ ] 构建最基础的 RAG Chain:加载 → 切分 → 索引 → 检索 → 生成
第2周:进阶 RAG
- [ ] 混合搜索:向量 + BM25 + RRF
- [ ] Rerank:BGE-Reranker / Cohere Rerank 集成
- [ ] Query 改写:让 LLM 改写查询 / HyDE
- [ ] Parent-Child Chunking:小块检索 + 大块送入
- [ ] RAGAS 评估:搭建评估 Pipeline
- [ ] LangSmith 追踪:查看每一步的输入输出
第3周:生产级 RAG
- [ ] 权限控制:元数据过滤实现文档级权限
- [ ] 增量索引:新文档追加,不全量重建
- [ ] 多模态 RAG:图片+文本的检索和生成
- [ ] Graph RAG:知识图谱辅助检索
- [ ] 性能优化:缓存、批量处理、异步
- [ ] 部署:FastAPI + Docker 打包 RAG 服务
RAG 实战项目
| 项目 |
技术栈 |
说明 |
| 个人知识库问答 |
LangChain + Chroma + OpenAI |
入门级 |
| 企业文档问答 |
LlamaIndex + Milvus + BGE-M3 + BGE-Reranker |
生产级 |
| 多模态文档问答 |
Unstructured + Qwen-VL + Qdrant |
进阶级 |
| 网页知识库 |
Trafilatura + FAISS + Rerank |
实用级 |
3.2 Agent 智能体开发(3 周)
flowchart TB
subgraph 工具层
FC["Function Calling"]
TOOL["@tool 装饰器"]
MCP["MCP 协议"]
end
subgraph 框架层
LC["LangChain Agent"]
LG["LangGraph ★"]
CA["CrewAI"]
OA["OpenAI Assistants API"]
end
subgraph 能力层
REACT["ReAct 推理"]
PLAN["Plan-and-Execute"]
MEM["记忆系统"]
MULTI["Multi-Agent"]
end
subgraph 工具集成
SEARCH["搜索 API<br/>Tavily/Bing/Google"]
CODE["代码执行<br/>E2B/沙箱"]
DB["数据库<br/>SQL/NoSQL"]
API["外部 API<br/>天气/邮件/日历"]
FILE["文件系统<br/>读写/管理"]
end
subgraph 生产层
HITL["Human-in-the-Loop"]
SAFE["安全边界"]
EVAL["Agent 评估"]
end
必学框架
| 框架/工具 |
用途 |
优先级 |
说明 |
| LangChain Agent |
Agent 基础框架 |
⭐⭐⭐⭐ |
入门用 |
| LangGraph ★核心 |
图编排框架,支持循环/分支/状态 |
⭐⭐⭐⭐⭐ |
生产首选 |
| CrewAI |
Multi-Agent 协作框架 |
⭐⭐⭐⭐ |
多 Agent 场景 |
| OpenAI Assistants API |
官方 Agent API |
⭐⭐⭐⭐ |
快速原型 |
| AutoGen (微软) |
Multi-Agent 对话框架 |
⭐⭐⭐ |
多 Agent 研究 |
| MCP (Anthropic) |
模型上下文协议,标准化工具连接 |
⭐⭐⭐⭐⭐ |
新标准,必学 |
| Toolhouse |
工具市场,开箱即用的工具 |
⭐⭐⭐ |
快速集成 |
必学组件——工具调用
| 技术 |
说明 |
优先级 |
| OpenAI Function Calling |
工具调用的事实标准 |
⭐⭐⭐⭐⭐ |
| Anthropic Tool Use |
Claude 的工具调用 |
⭐⭐⭐⭐ |
| LangChain @tool |
工具定义装饰器 |
⭐⭐⭐⭐⭐ |
| MCP Server/Client |
标准化工具协议 |
⭐⭐⭐⭐⭐ |
| MCP 工具生态 |
文件系统、数据库、搜索等 MCP Server |
⭐⭐⭐⭐ |
必学组件——工具集成
| 工具类型 |
具体技术 |
优先级 |
| 搜索 |
Tavily API、Bing Search API、SerpAPI、DuckDuckGo |
⭐⭐⭐⭐⭐ |
| 代码执行 |
E2B、Jupyter Kernel、Docker 沙箱 |
⭐⭐⭐⭐ |
| 数据库 |
SQLDatabase (LangChain)、Text-to-SQL |
⭐⭐⭐⭐ |
| 文件系统 |
LangChain DirectoryLoader、MCP Filesystem |
⭐⭐⭐⭐ |
| API 调用 |
requests/httpx、LangChain RequestsTool |
⭐⭐⭐⭐ |
| 网页浏览 |
Playwright、Selenium、Browser Use |
⭐⭐⭐⭐ |
| 邮件/日历 |
Gmail API、Google Calendar API |
⭐⭐⭐ |
必学组件——记忆系统
| 技术 |
说明 |
优先级 |
| ConversationBufferMemory |
完整对话历史 |
⭐⭐⭐⭐ |
| ConversationSummaryMemory |
对话摘要压缩 |
⭐⭐⭐⭐ |
| 向量记忆 |
历史对话存入向量库检索 |
⭐⭐⭐⭐ |
| LangGraph State |
图状态管理 |
⭐⭐⭐⭐⭐ |
必学组件——多 Agent
| 框架 |
模式 |
优先级 |
| LangGraph |
图编排,Supervisor/Handoff |
⭐⭐⭐⭐⭐ |
| CrewAI |
角色分工,顺序/并行/层级 |
⭐⭐⭐⭐ |
| AutoGen |
多 Agent 对话 |
⭐⭐⭐ |
Agent 学习清单
第1周:基础 Agent
- [ ] OpenAI Function Calling:定义工具、解析调用、返回结果
- [ ] LangChain Tool:@tool 装饰器、StructuredTool
- [ ] LangChain Agent:create_react_agent、AgentExecutor
- [ ] ReAct 模式:Thought → Action → Observation 循环
- [ ] 常用工具集成:搜索(Tavily)、计算器、文件操作
- [ ] 构建第一个 Agent:能搜索 + 能计算 + 能回答
第2周:进阶 Agent
- [ ] LangGraph 核心概念:State、Node、Edge、Conditional Edge
- [ ] LangGraph 构建 ReAct Agent(手动实现,不用内置)
- [ ] LangGraph 的 Human-in-the-Loop:interrupt_before / interrupt_after
- [ ] LangGraph 的持久化:Checkpointer、线程管理
- [ ] Multi-Agent:Supervisor 模式、Handoff 模式
- [ ] 记忆系统:短期(State)+ 长期(向量库)
- [ ] MCP 协议:理解 Server/Client 架构,使用现有 MCP Server
第3周:生产 Agent
- [ ] Agent 安全:工具权限控制、沙箱执行
- [ ] Agent 评估:任务完成率、步骤效率、工具调用准确率
- [ ] 错误处理:重试、降级、超时、最大步骤限制
- [ ] 流式输出:Agent 思考过程的流式展示
- [ ] Agent 可观测性:LangSmith 追踪每一步
- [ ] 部署:FastAPI 封装 Agent API
Agent 实战项目
| 项目 |
技术栈 |
说明 |
| 搜索问答 Agent |
LangChain + Tavily + OpenAI |
入门级 |
| 数据分析 Agent |
LangGraph + SQL + Matplotlib |
进阶级 |
| 研究助手 Agent |
CrewAI + 搜索 + RAG |
多 Agent |
| 自动化运维 Agent |
LangGraph + Shell + 监控 API |
生产级 |
| 浏览器 Agent |
Playwright + Vision + Function Calling |
前沿级 |
3.3 模型微调(2 周)
flowchart TB
subgraph 数据准备
FMT["数据格式<br/>Alpaca/ShareGPT/JSONL"]
CLEAN["数据清洗<br/>去重/去噪/修正"]
AUG["数据增强<br/>Evol-Instruct/Self-Instruct"]
end
subgraph 微调方法
FULL["全参数微调<br/>Full Fine-tuning"]
LORA["LoRA ★最常用"]
QLORA["QLoRA<br/>4-bit + LoRA"]
DORA["DoRA<br/>方向+幅度分解"]
end
subgraph 工具框架
LLF["LLaMA-Factory ★一站式"]
UNS["Unsloth ★高性能"]
AXO["Axolotl ★灵活"]
HFTRL["HuggingFace TRL"]
PEFT["PEFT (LoRA库)"]
end
subgraph 对齐训练
SFT["SFT 监督微调"]
DPO["DPO 偏好对齐"]
ORPO["ORPO 单阶段对齐"]
KTO["KTO 单标签对齐"]
end
subgraph 评估部署
EVAL["评估<br/>MMLU/HumanEval/人工"]
MERGE["模型合并<br/>mergekit"]
DEPLOY["部署<br/>vLLM/Ollama"]
end
必学框架
| 框架/工具 |
用途 |
优先级 |
说明 |
| LLaMA-Factory ★ |
一站式微调平台 |
⭐⭐⭐⭐⭐ |
Web UI,支持 100+ 模型,最易上手 |
| Unsloth |
高性能微调 |
⭐⭐⭐⭐⭐ |
速度 2x,内存 -60% |
| HuggingFace TRL |
训练 RLHF/DPO |
⭐⭐⭐⭐ |
SFT/RLHF/DPO 训练器 |
| PEFT |
LoRA/QLoRA 实现 |
⭐⭐⭐⭐⭐ |
HuggingFace 官方 LoRA 库 |
| Axolotl |
灵活微调框架 |
⭐⭐⭐⭐ |
配置驱动,支持多种方法 |
| DeepSpeed |
分布式训练 |
⭐⭐⭐⭐ |
ZeRO 1/2/3,大模型必备 |
| mergekit |
模型合并工具 |
⭐⭐⭐ |
SLERP/TIES/DARE 合并 |
必学组件——数据准备
| 技术 |
说明 |
优先级 |
| Alpaca 格式 |
instruction/input/output |
⭐⭐⭐⭐⭐ |
| ShareGPT 格式 |
conversations 多轮对话 |
⭐⭐⭐⭐⭐ |
| JSONL 格式 |
逐行 JSON,通用格式 |
⭐⭐⭐⭐⭐ |
| Evol-Instruct |
迭代增加指令复杂度 |
⭐⭐⭐⭐ |
| Self-Instruct |
用 LLM 生成训练数据 |
⭐⭐⭐⭐ |
| 数据清洗 |
去重、去低质量、格式修正 |
⭐⭐⭐⭐⭐ |
| 数据配比 |
领域:通用 = 8:2 或 9:1 |
⭐⭐⭐⭐ |
必学组件——LoRA 系列
| 方法 |
说明 |
优先级 |
| LoRA |
低秩分解 ΔW = AB |
⭐⭐⭐⭐⭐ |
| QLoRA |
4-bit NF4 量化 + LoRA |
⭐⭐⭐⭐⭐ |
| DoRA |
方向+幅度分解 |
⭐⭐⭐⭐ |
| AdaLoRA |
自适应分配各层 rank |
⭐⭐⭐ |
| LoRA+ |
A/B 不同学习率 |
⭐⭐⭐ |
| rsLoRA |
缩放因子 α/√r |
⭐⭐⭐ |
必学组件——对齐训练
| 方法 |
说明 |
优先级 |
| SFT |
监督微调,基础 |
⭐⭐⭐⭐⭐ |
| DPO |
直接偏好优化,主流 |
⭐⭐⭐⭐⭐ |
| ORPO |
SFT+对齐单阶段 |
⭐⭐⭐⭐ |
| KTO |
单标签优化 |
⭐⭐⭐ |
| RLHF (PPO) |
强化学习,复杂但强大 |
⭐⭐⭐⭐ |
微调学习清单
第1周:SFT 微调
- [ ] LLaMA-Factory 安装和使用(Web UI)
- [ ] 数据格式:Alpaca 格式和 ShareGPT 格式
- [ ] 数据准备:清洗、格式化、划分
- [ ] LoRA 配置:rank、alpha、target_modules 选择
- [ ] QLoRA:4-bit 量化 + LoRA 在单卡上微调 7B
- [ ] 训练监控:loss 曲线、学习率调度
- [ ] Unsloth 使用:加速训练
- [ ] 评估:用 lm-evaluation-harness 测试
第2周:对齐训练 + 实战
- [ ] DPO 数据格式:chosen/rejected 对
- [ ] DPO 训练:用 TRL 的 DPOTrainer
- [ ] ORPO 训练:单阶段对齐
- [ ] 模型合并:mergekit 的 SLERP/TIES
- [ ] 数据合成:用强模型生成微调数据
- [ ] Evol-Instruct:迭代增加数据复杂度
- [ ] 部署微调模型:vLLM / Ollama
微调实战项目
| 项目 |
技术栈 |
说明 |
| 客服领域微调 |
LLaMA-Factory + Qwen-7B + Alpaca 格式 |
入门级 |
| 代码助手微调 |
Unsloth + DeepSeek-Coder + QLoRA |
进阶级 |
| 对齐训练 |
TRL + DPO + 自构造偏好数据 |
进阶级 |
| 多任务微调 |
Axolotl + DeepSpeed + 多数据源 |
生产级 |
3.4 多模态应用(1-2 周)
flowchart TB
subgraph 模型
QV["Qwen-VL / Qwen2.5-VL ★"]
LV["LLaVA / LLaVA-NeXT"]
GPT4V["GPT-4o / GPT-4V"]
INTERN["InternVL"]
end
subgraph 视觉编码
CLIP["CLIP / SigLIP"]
VIT["ViT 视觉 Transformer"]
end
subgraph 应用
OCR["OCR 文字识别"]
VQA["视觉问答"]
DOC["文档理解"]
VID["视频分析"]
end
subgraph 语音
WHISPER["Whisper 语音识别"]
TTS["TTS 语音合成"]
end
| 必学技术 |
说明 |
优先级 |
| Qwen-VL / Qwen2.5-VL |
中文最强多模态模型 |
⭐⭐⭐⭐⭐ |
| GPT-4o API |
最强闭源多模态 |
⭐⭐⭐⭐⭐ |
| LLaVA |
开源多模态经典 |
⭐⭐⭐⭐ |
| CLIP |
图文对齐基础模型 |
⭐⭐⭐⭐ |
| Whisper |
OpenAI 语音识别 |
⭐⭐⭐⭐ |
| PaddleOCR / Tesseract |
OCR 文字识别 |
⭐⭐⭐⭐ |
| Unstructured |
多模态文档解析 |
⭐⭐⭐⭐ |
阶段四:工程落地(6-8 周)
目标
掌握推理部署、系统架构、评估监控和安全合规,能将应用推向生产。
4.1 推理部署(2 周)
flowchart TB
subgraph 量化工具
GPTQ["GPTQ<br/>训练后量化"]
AWQ["AWQ<br/>激活感知量化"]
GGUF["GGUF<br/>llama.cpp 格式"]
BNB["BitsAndBytes<br/>训练时量化"]
FP8["FP8<br/>H100 原生"]
end
subgraph 推理引擎
VLLM["vLLM ★首选<br/>PagedAttention"]
TRT["TensorRT-LLM<br/>NVIDIA 优化"]
SGL["SGLang<br/>结构化生成"]
LLACPP["llama.cpp<br/>CPU 推理"]
OLLAMA["Ollama<br/>本地运行"]
end
subgraph 部署工具
DOCKER["Docker"]
K8S["Kubernetes"]
TRITON["Triton Inference Server"]
NGINX["Nginx 负载均衡"]
end
subgraph 优化技术
FA["Flash Attention"]
GQA2["GQA/MQA"]
KVQ["KV Cache 量化"]
SPEC["Speculative Decoding"]
PC["Prefix Caching"]
CB["Continuous Batching"]
end
必学工具
| 工具 |
用途 |
优先级 |
说明 |
| vLLM ★ |
高性能推理引擎 |
⭐⭐⭐⭐⭐ |
PagedAttention,生产首选 |
| Ollama |
本地运行 LLM |
⭐⭐⭐⭐⭐ |
最简单,一键运行 |
| llama.cpp |
CPU 推理 |
⭐⭐⭐⭐ |
消费级设备、边缘部署 |
| TensorRT-LLM |
NVIDIA 优化 |
⭐⭐⭐⭐ |
最快,但绑定 NVIDIA |
| SGLang |
结构化生成优化 |
⭐⭐⭐⭐ |
JSON 输出、Agent 场景 |
| GGUF 格式 |
量化模型格式 |
⭐⭐⭐⭐ |
llama.cpp 使用 |
| GPTQ / AWQ |
量化方法 |
⭐⭐⭐⭐ |
模型压缩 |
| Docker |
容器化部署 |
⭐⭐⭐⭐⭐ |
标准交付方式 |
| Kubernetes |
容器编排 |
⭐⭐⭐⭐ |
大规模部署 |
| Triton |
推理服务器 |
⭐⭐⭐ |
NVIDIA 官方 |
推理部署学习清单
- [ ] Ollama:本地运行 LLaMA/Qwen/DeepSeek
- [ ] vLLM:部署 OpenAI 兼容 API 服务
- [ ] vLLM 配置:TP、PP、GPU 利用率、最大序列长度
- [ ] GGUF 量化:用 llama.cpp 量化模型
- [ ] GPTQ/AWQ:GPU 推理的量化方案
- [ ] Continuous Batching 理解和配置
- [ ] Prefix Caching 配置
- [ ] Docker 打包 LLM 服务
- [ ] Docker Compose 多服务编排
- [ ] 流式输出:SSE 实现
- [ ] 负载均衡:Nginx / Traefik
4.2 系统架构(2 周)
| 必学技术 |
说明 |
优先级 |
| FastAPI |
LLM 服务 API 框架 |
⭐⭐⭐⭐⭐ |
| Redis |
缓存、会话存储 |
⭐⭐⭐⭐ |
| RabbitMQ / Kafka |
消息队列、异步处理 |
⭐⭐⭐⭐ |
| PostgreSQL + pgvector |
结构化数据 + 向量存储 |
⭐⭐⭐⭐ |
| Nginx / Traefik |
反向代理、负载均衡 |
⭐⭐⭐⭐ |
| Prometheus + Grafana |
监控和可视化 |
⭐⭐⭐⭐ |
| LangSmith / Phoenix |
LLM 可观测性 |
⭐⭐⭐⭐⭐ |
| Celery |
异步任务队列 |
⭐⭐⭐ |
4.3 评估与监控(1-2 周)
| 必学技术 |
说明 |
优先级 |
| RAGAS |
RAG 评估 |
⭐⭐⭐⭐⭐ |
| lm-evaluation-harness |
模型评估基准 |
⭐⭐⭐⭐ |
| LangSmith |
追踪、评估、监控 |
⭐⭐⭐⭐⭐ |
| Phoenix (Arize) |
LLM 可观测性 |
⭐⭐⭐⭐ |
| MT-Bench / Arena |
对话评估 |
⭐⭐⭐⭐ |
| LLM-as-Judge |
用 GPT-4 评估 |
⭐⭐⭐⭐ |
4.4 安全与合规(1 周)
| 必学技术 |
说明 |
优先级 |
| NeMo Guardrails (NVIDIA) |
对话安全框架 |
⭐⭐⭐⭐ |
| Guardrails AI |
输出验证框架 |
⭐⭐⭐⭐ |
| Llama Guard |
安全分类模型 |
⭐⭐⭐⭐ |
| Rebuff |
Prompt Injection 检测 |
⭐⭐⭐ |
| Prompt 注入检测 |
关键词 + 分类器 + LLM 判断 |
⭐⭐⭐⭐ |
阶段五:进阶提升(持续)
5.1 前沿技术追踪
| 方向 |
必学内容 |
优先级 |
| 推理模型 |
o1/o3、DeepSeek-R1、Test-Time Compute |
⭐⭐⭐⭐⭐ |
| 高效架构 |
Mamba、RWKV、RetNet、Jamba |
⭐⭐⭐⭐ |
| 长上下文 |
100K-1M tokens,YaRN、LongRoPE |
⭐⭐⭐⭐ |
| MoE 进阶 |
DeepSeek-V3 的 MoE 设计 |
⭐⭐⭐⭐ |
| 多模态原生 |
GPT-4o、Gemini 2.0 原生多模态 |
⭐⭐⭐⭐⭐ |
| Agent 框架 |
MCP 协议生态、Computer Use |
⭐⭐⭐⭐⭐ |
| 合成数据 |
Evol-Instruct、Self-Play |
⭐⭐⭐⭐ |
| 模型合并 |
SLERP、TIES、DARE |
⭐⭐⭐ |
5.2 开源项目参与
| 项目 |
方向 |
推荐参与方式 |
| LangChain / LangGraph |
Agent 框架 |
提 Issue、修 Bug、写文档 |
| LlamaIndex |
RAG 框架 |
贡献组件、写教程 |
| vLLM |
推理引擎 |
性能优化、新特性 |
| LLaMA-Factory |
微调工具 |
支持新模型、新方法 |
| HuggingFace Transformers |
模型库 |
支持新模型 |
| Milvus / Qdrant |
向量数据库 |
性能优化 |
| llama.cpp |
CPU 推理 |
量化优化 |
| OpenCLAW |
Agent 平台 |
工具开发 |
5.3 完整技术栈速查表
flowchart TB
subgraph 编程语言
PY["Python ★核心"]
TS["TypeScript(前端/Node)"]
RS["Rust(高性能组件)"]
end
subgraph LLM调用
OAI_SDK["openai SDK"]
ANT_SDK["anthropic SDK"]
HTTPX["httpx 异步调用"]
end
subgraph 应用框架
LC2["LangChain"]
LI["LlamaIndex"]
LG2["LangGraph ★"]
CREW["CrewAI"]
end
subgraph 数据层
MIL["Milvus"]
QD["Qdrant"]
CH["Chroma"]
PG["PostgreSQL + pgvector"]
REDIS["Redis"]
end
subgraph 模型层
HF["HuggingFace Transformers"]
PEFT2["PEFT (LoRA)"]
TRL["TRL (RLHF/DPO)"]
LLF2["LLaMA-Factory"]
end
subgraph 推理层
VLLM2["vLLM"]
OLL["Ollama"]
LLCPP["llama.cpp"]
end
subgraph 部署层
DOCK["Docker"]
K8S2["Kubernetes"]
NGINX2["Nginx"]
PROM["Prometheus + Grafana"]
end
subgraph 评估层
RAGAS2["RAGAS"]
LS2["LangSmith"]
LME["lm-evaluation-harness"]
end
subgraph 安全层
NEMO["NeMo Guardrails"]
LG3["Llama Guard"]
GA["Guardrails AI"]
end
📋 完整技术栈 Checklist
阶段一 Checklist
- [ ] Python 异步编程(asyncio)
- [ ] FastAPI Web 框架
- [ ] Pydantic 数据验证
- [ ] Docker 基础
- [ ] Git 版本控制
- [ ] PyTorch 基础
- [ ] HuggingFace Transformers
- [ ] Scikit-learn 基础
阶段二 Checklist
- [ ] Transformer 架构(能手写)
- [ ] Attention 机制推导
- [ ] KV Cache / GQA / Flash Attention
- [ ] OpenAI API SDK
- [ ] Anthropic API SDK
- [ ] Prompt Engineering 技巧
- [ ] Function Calling
- [ ] 主流模型能力对比
阶段三 Checklist
- [ ] LangChain(Chain/Agent/Tool/Memory)
- [ ] LlamaIndex(Index/QueryEngine/Retriever)
- [ ] LangGraph(State/Node/Edge/条件路由)
- [ ] 向量数据库(Chroma/Milvus/Qdrant/FAISS)
- [ ] Embedding 模型(BGE-M3/GTE-Qwen)
- [ ] Rerank 模型(BGE-Reranker)
- [ ] RAG 评估(RAGAS)
- [ ] LLaMA-Factory / Unsloth 微调
- [ ] PEFT(LoRA/QLoRA)
- [ ] TRL(DPO/ORPO)
- [ ] MCP 协议
- [ ] 多模态模型(Qwen-VL/GPT-4o)
阶段四 Checklist
- [ ] vLLM 部署
- [ ] Ollama 本地运行
- [ ] llama.cpp / GGUF 量化
- [ ] GPTQ / AWQ 量化
- [ ] Docker 容器化部署
- [ ] Kubernetes 基础
- [ ] Redis 缓存
- [ ] Prometheus + Grafana 监控
- [ ] LangSmith 追踪
- [ ] NeMo Guardrails / Guardrails AI
- [ ] RAGAS / lm-evaluation-harness
阶段五 Checklist
- [ ] 推理模型(o1/R1)
- [ ] Mamba/RWKV 新架构
- [ ] MCP 生态工具
- [ ] 开源项目贡献
- [ ] 2-3 个完整项目作品
- [ ] 技术博客/分享
⏱️ 时间规划
| 阶段 |
时长 |
核心产出 |
| 基础筑基 |
4-6 周 |
能写 Python + 能训简单模型 |
| LLM 核心 |
6-8 周 |
能调 API + 能讲清原理 |
| 应用开发 |
8-10 周 |
能独立开发 RAG/Agent/微调 |
| 工程落地 |
6-8 周 |
能部署上线 + 监控运维 |
| 进阶提升 |
持续 |
能追踪前沿 + 开源贡献 |
有编程基础:3-4 个月可就业
零基础:6-8 个月可就业
🎯 能力模型
xychart-beta
title "大模型应用开发工程师能力对比"
x-axis ["提示词工程", "RAG开发", "Agent开发", "模型微调", "模型评估", "系统架构", "工程部署", "业务理解"]
y-axis "能力评分" 0 --> 100
bar "初级" [60, 70, 50, 30, 20, 20, 20, 30]
bar "中级" [75, 80, 75, 65, 55, 55, 55, 60]
bar "高级" [90, 90, 90, 85, 80, 80, 80, 85]
| 级别 |
技术栈要求 |
薪资参考 |
| 初级 |
LangChain + Chroma + OpenAI API |
15-25K |
| 中级 |
LangGraph + Milvus + vLLM + LoRA 微调 |
25-45K |
| 高级 |
全栈 + 分布式 + 系统设计 + 带队 |
45-80K+ |