123 lines
8.8 KiB
Markdown
123 lines
8.8 KiB
Markdown
# code/ — 练习代码目录
|
||
|
||
> 这个目录是**你跟着 docs/ 学习时写练习代码的地方**。
|
||
> 结构按 docs/ 的八个学习阶段**镜像并细化**:每个阶段一个文件夹;每个「小点」一个子目录;每个阶段的「综合实战」用 `99_capstone_*` 编号放末尾。
|
||
|
||
## 总览
|
||
|
||
- **8 个阶段文件夹**(`001_*` ~ `008_*`)
|
||
- **47 个子目录**:41 个小点 + 7 个综合实战(阶段一没有综合实战;其余每阶段 1 个 `99_capstone_*`)
|
||
- **每个子目录都有一个 `README.md`**:写明学习目的、前置条件、主要内容、对应 docs 链接、建议练习与达成标准——既能占位让空目录入 git,又能当每章的「任务清单」用
|
||
- 所有 Python 文件统一在根目录的 `.venv` 里跑:`uv run python …`
|
||
- `_tools/`:放生成/维护本目录的脚本(如 `generate_readmes.py`),不属于学习内容
|
||
|
||
---
|
||
|
||
## 详细目录索引
|
||
|
||
### 阶段一 · 前置核心基础 → `001_phase1_foundations/`
|
||
|
||
| 编号 | 子目录 | 对应 docs | 主题 |
|
||
|-|-|-|-|
|
||
| 01 | `01_python_advanced_basics/` | `01-Python高级编程之基础巩固.md` | 类型注解 / dataclass / 异常处理 / 上下文管理器 |
|
||
| 02 | `02_python_advanced_syntax/` | `02-Python高级编程之进阶语法.md` | 装饰器 / 生成器 / 描述符 / 元类 |
|
||
| 03 | `03_python_concurrency_async/` | `03-Python高级编程之并发与异步.md` | threading / multiprocessing / asyncio |
|
||
| 04 | `04_python_core_toolkits/` | `04-Python高级编程之核心工具库.md` | pydantic / loguru / tenacity / python-dotenv / pandas |
|
||
| 05 | `05_llm_fundamentals/` | `05-大模型基础原理.md` | LLM / Token / 上下文窗口 / 采样参数 |
|
||
| 06 | `06_llm_api_in_practice/` | `06-主流模型API实战.md` | OpenAI / Claude / DeepSeek / Ollama / 流式 / 错误码 |
|
||
| 07 | `07_prompt_engineering/` | `07-Prompt工程核心.md` | Few-shot / CoT / 指令设计 / ReAct prompt |
|
||
| 08 | `08_software_engineering_basics/` | `08-软件工程与基础设施.md` | Git / FastAPI / SSE / WebSocket / Docker / Redis / PG |
|
||
|
||
### 阶段二 · AI Agent 核心理论与基础范式 → `002_phase2_agent_theory/`
|
||
|
||
| 编号 | 子目录 | 对应 docs | 主题 |
|
||
|-|-|-|-|
|
||
| 01 | `01_agent_basics/` | `01-Agent基础认知.md` | Agent 定义 / 闭环 / 与 Chatbot 区别 |
|
||
| 02 | `02_agent_core_components/` | `02-Agent四大核心组件.md` | 规划 / 记忆 / 工具 / 行动 |
|
||
| 03 | `03_agent_paradigms/` | `03-经典Agent工作范式.md` | ReAct / Plan-and-Execute / Reflexion / ToT |
|
||
| 04 | `04_agent_framework_selection/` | `04-Agent框架选型决策.md` | 手写 vs 框架 / 选型矩阵 |
|
||
| 99 | `99_capstone_handcrafted_agent/` | `05-阶段二综合实战-手写完整Agent.md` | 综合实战:不依赖框架实现 ReAct / Plan-and-Execute / Reflexion |
|
||
|
||
### 阶段三 · 主流 Agent 开发框架 → `003_phase3_frameworks/`
|
||
|
||
| 编号 | 子目录 | 对应 docs | 主题 |
|
||
|-|-|-|-|
|
||
| 01 | `01_langchain_basics/` | `01-LangChain基础.md` | ChatModel / PromptTemplate / LCEL / @tool |
|
||
| 02 | `02_langgraph_core/` | `02-LangGraph核心.md` | StateGraph / Node / Edge / Checkpointer / 多智能体 Supervisor |
|
||
| 03 | `03_llamaindex/` | `03-LlamaIndex.md` | Document / Node / Index / QueryEngine(数据接入与检索) |
|
||
| 04 | `04_crewai/` | `04-CrewAI.md` | 角色化多智能体(了解选型) |
|
||
| 05 | `05_autogen/` | `05-AutoGen.md` | 微软多 Agent 框架(了解选型,已并入 MAF) |
|
||
| 06 | `06_other_frameworks/` | `06-其他主流方案.md` | Semantic Kernel / Assistants API / Dify / MCP 横评 |
|
||
| 99 | `99_capstone_langgraph_agent/` | `07-阶段三综合实战-LangGraph完整Agent.md` | 综合实战:LangGraph + LangChain 端到端 Agent |
|
||
|
||
### 阶段四 · 工具生态与外围组件集成 → `004_phase4_tool_ecosystem/`
|
||
|
||
| 编号 | 子目录 | 对应 docs | 主题 |
|
||
|-|-|-|-|
|
||
| 01 | `01_tool_calling_ecosystem/` | `01-工具调用生态.md` | 工具五要素 / 工具工厂 / 搜索 / 代码沙箱 / PDF |
|
||
| 02 | `02_vector_db_and_memory/` | `02-向量数据库与记忆存储.md` | Embedding / Chroma / FAISS / Qdrant / Milvus / pgvector |
|
||
| 03 | `03_rag_technique/` | `03-RAG技术体系.md` | RAG 流水线 / 查询改写 / Rerank / Agent-RAG / 引用溯源 |
|
||
| 04 | `04_mcp_protocol/` | `05-MCP协议与工具接入.md` | MCP Host/Client/Server / FastMCP / stdio / Streamable HTTP |
|
||
| 99 | `99_capstone_rag_tool_agent/` | `04-阶段四综合实战-RAG工具Agent.md` | 综合实战:RAG 知识库 + 工具工厂 + Agent-RAG |
|
||
|
||
### 阶段五 · 进阶技术 → `005_phase5_advanced/`
|
||
|
||
| 编号 | 子目录 | 对应 docs | 主题 |
|
||
|-|-|-|-|
|
||
| 01 | `01_multi_agent_systems/` | `01-多智能体系统进阶.md` | 流水线 / 分层管控 / 辩论 / 黑板 |
|
||
| 02 | `02_planning_capability/` | `02-规划能力增强.md` | 子目标分解 / 反思 / 任务图 |
|
||
| 03 | `03_memory_system/` | `03-记忆系统优化.md` | 短期 / 工作 / 长期记忆;Redis + 向量库 + PG 三件套 |
|
||
| 04 | `04_agent_evaluation/` | `04-Agent评估与评测.md` | 五大指标 / LLM-as-judge / Ragas / LangSmith / Langfuse / Bad-case 闭环 |
|
||
| 05 | `05_safety_and_alignment/` | `05-安全与对齐.md` | 注入防护 / 工具权限 / 输出审计 / Human-in-the-loop |
|
||
| 99 | `99_capstone_multi_agent_workflow/` | `06-阶段五综合实战-多智能体工作流Agent.md` | 综合实战:多智能体工作流(含评估与注入检测) |
|
||
|
||
### 阶段六 · 垂直领域 Agent 落地实践 → `006_phase6_vertical_apps/`
|
||
|
||
| 编号 | 子目录 | 对应 docs | 主题 |
|
||
|-|-|-|-|
|
||
| 01 | `01_coding_agent/` | `01-代码开发Agent.md` | 仓库级检索 / AST 分块 / 多文件读写 / 沙箱执行 |
|
||
| 02 | `02_data_analysis_agent/` | `02-数据分析Agent.md` | Text-to-SQL / Schema Prompt / 五道防线 / 语义层 |
|
||
| 03 | `03_content_creation_agent/` | `03-内容创作Agent.md` | 多 Agent 写作流水线 / 风格控制 / 人工反馈 |
|
||
| 04 | `04_customer_service_agent/` | `04-智能客服与运维Agent.md` | 工单 / 知识库 / 多轮上下文 / 升级人工 |
|
||
| 05 | `05_office_automation_agent/` | `05-办公自动化Agent.md` | Agent + RPA / 流程编排 / 审批中断 / 幂等防重发 |
|
||
| 99 | `99_capstone_data_analysis_agent/` | `06-阶段六综合实战-数据分析Agent.md` | 综合实战:数据分析 Text-to-SQL Agent |
|
||
|
||
### 阶段七 · 工程化部署与运维 → `007_phase7_engineering/`
|
||
|
||
| 编号 | 子目录 | 对应 docs | 主题 |
|
||
|-|-|-|-|
|
||
| 01 | `01_agent_engineering_best_practices/` | `01-Agent工程化最佳实践.md` | 四层架构 / 状态持久化 / 重试·降级·熔断 / 成本优化 |
|
||
| 02 | `02_deployment_and_scaling/` | `02-部署与伸缩.md` | Docker / Compose / K8s / HPA / 任务队列 / 优雅停机 |
|
||
| 03 | `03_observability_and_ops/` | `03-监控与运维.md` | Logs / Metrics / Traces / 黄金四指标 / 告警分级 |
|
||
| 99 | `99_capstone_monitoring_agent/` | `04-阶段七综合实战-监控与运维Agent.md` | 综合实战:观测台 + 告警 + Bad-case 闭环 Agent |
|
||
|
||
### 阶段八 · 实战项目路线 → `008_phase8_projects/`
|
||
|
||
| 编号 | 子目录 | 对应 docs | 主题 |
|
||
|-|-|-|-|
|
||
| 01 | `01_level1_react_qa_agent/` | `01-Level1-ReAct智能问答Agent.md` | Level 1:单智能体 ReAct 问答(最小可行 Agent) |
|
||
| 02 | `02_level2_rag_knowledge_agent/` | `02-Level2-知识库RAG-Agent.md` | Level 2:知识库 + RAG + 工具调用的企业内问答应 |
|
||
| 03 | `03_level3_multi_role_creator/` | `03-Level3-多角色内容创作团队.md` | Level 3:多角色(策划 / 写作 / 评审 / 校对)协作 |
|
||
| 04 | `04_level4_data_analysis_agent/` | `04-Level4-数据分析Agent.md` | Level 4:自然语言 → SQL → 图表 → 报告 |
|
||
| 05 | `05_level5_enterprise_cs_agent/` | `05-Level5-企业智能客服Agent.md` | Level 5:多租户 / 工单 / 知识库 / 升级人工的全链路客服 |
|
||
| 99 | `99_capstone_project_roadmap/` | `06-阶段八综合实战-五级项目路线导航.md` | 综合实战:五级项目路线导航器 |
|
||
|
||
---
|
||
|
||
## 怎么用
|
||
|
||
1. **进入子目录先读它的 `README.md`**——里面写了本章的学习目的、前置条件、主要内容、对应 docs 路径、建议练习和达成标准。把它当作每章的「任务清单」用,逐项打勾。
|
||
2. **按编号顺序**进入对应子目录,跟 docs 里同名小点同步写练习。
|
||
3. 每个子目录建议最少 2~3 个 `.py` 文件做不同角度的练习(例如「最小实现 / 加日志 / 加单元测试」)。
|
||
4. 跑代码统一用 `uv run`(已经在根目录的 `.venv` 里):
|
||
```bash
|
||
cd code/003_phase3_frameworks/02_langgraph_core
|
||
uv run python my_first_graph.py
|
||
```
|
||
5. **不要把练习代码挪到 docs/**——docs 只放文档,code 才是可执行代码。
|
||
|
||
## 配套参考
|
||
|
||
- `docs/12-Python开发规范.md` —— 本项目目录 / 分层 / 命名 / 接口规范
|
||
- `docs/09-四个月学习计划.md` —— 每周任务节奏(按 16 周规划)
|
||
- `docs/00-专有名词速查表.md` —— 遇到陌生名词随时回查 |