增加每章节 README 文件
This commit is contained in:
@@ -0,0 +1,54 @@
|
||||
# LangChain 基础
|
||||
|
||||
> 所属:阶段三 · 主流 Agent 开发框架
|
||||
> 目标:掌握 LangChain 的 ChatModel / PromptTemplate / LCEL / @tool 四件套。
|
||||
|
||||
---
|
||||
|
||||
## 📌 学习目的
|
||||
|
||||
掌握 LangChain 的 ChatModel / PromptTemplate / LCEL / @tool 四件套。
|
||||
|
||||
## ✅ 学习要求(前置条件)
|
||||
|
||||
已完成阶段一「06_llm_api_in_practice」。
|
||||
|
||||
## 📚 主要学习内容
|
||||
|
||||
- ChatModel:ChatOpenAI / ChatDeepSeek / ChatOllama 切换仅改 import
|
||||
- PromptTemplate / ChatPromptTemplate + Few-shot
|
||||
- LCEL:`prompt | llm | parser` 表达式语言
|
||||
- @tool 装饰器:自动生成 JSON Schema / `bind_tools` / `AIMessage.tool_calls`
|
||||
|
||||
## 📖 对应 docs
|
||||
|
||||
- 目录:[`docs/03-阶段三-主流Agent开发框架/`](../../docs/03-阶段三-主流Agent开发框架/)(按目录名里的 `第 X 篇` 对应)
|
||||
- 在 docs 目录里找到对应的小点 markdown 文件阅读详细理论。
|
||||
|
||||
## 🛠️ 建议练习
|
||||
|
||||
- [ ] 用 LCEL 拼一条 `prompt | llm | parser` 管道
|
||||
- [ ] 写一个 @tool 函数并解释 docstring 对模型调用决策的影响
|
||||
- [ ] 实现 RunnableParallel:检索 + 问题改写两路并发
|
||||
|
||||
## 🏁 完成后达成标准
|
||||
|
||||
- [ ] 能用 ChatPromptTemplate + LCEL 组装管道
|
||||
- [ ] 能用 @tool 定义工具并解释 bind_tools 的作用
|
||||
- [ ] 能说清为什么 Chain 做不了 Agent、必须上 LangGraph
|
||||
|
||||
---
|
||||
|
||||
## 🚀 运行提示
|
||||
|
||||
```bash
|
||||
# 激活根目录的虚拟环境
|
||||
cd /Users/jack/source/Demo/py/demo_python_agent
|
||||
source .venv/bin/activate # 或直接用 uv run ...
|
||||
|
||||
# 进入本章目录
|
||||
cd code/003_phase3_frameworks/01_langchain_basics
|
||||
|
||||
# 跑你的练习文件
|
||||
uv run python your_exercise.py
|
||||
```
|
||||
@@ -0,0 +1,55 @@
|
||||
# LangGraph 核心(生产级事实标准)
|
||||
|
||||
> 所属:阶段三 · 主流 Agent 开发框架
|
||||
> 目标:用 LangGraph 把 Agent 画成一张图,掌握 State / Node / Edge / ConditionalEdge / Checkpointer。
|
||||
|
||||
---
|
||||
|
||||
## 📌 学习目的
|
||||
|
||||
用 LangGraph 把 Agent 画成一张图,掌握 State / Node / Edge / ConditionalEdge / Checkpointer。
|
||||
|
||||
## ✅ 学习要求(前置条件)
|
||||
|
||||
已完成「01_langchain_basics」+ 阶段二所有小点。
|
||||
|
||||
## 📚 主要学习内容
|
||||
|
||||
- StateGraph:State 是全局背包,Node 是一次动作,Edge 决定下一步
|
||||
- `add_messages` reducer:消息追加而非覆盖
|
||||
- ToolNode:预置的工具执行节点
|
||||
- Checkpointer / thread_id:状态持久化与中断恢复
|
||||
- interrupt:人在环路审批
|
||||
|
||||
## 📖 对应 docs
|
||||
|
||||
- 目录:[`docs/03-阶段三-主流Agent开发框架/`](../../docs/03-阶段三-主流Agent开发框架/)(按目录名里的 `第 X 篇` 对应)
|
||||
- 在 docs 目录里找到对应的小点 markdown 文件阅读详细理论。
|
||||
|
||||
## 🛠️ 建议练习
|
||||
|
||||
- [ ] 用 StateGraph 搭一个最小 ReAct 循环(含条件边)
|
||||
- [ ] 加 Checkpointer,实现「对话中断后从上次继续」
|
||||
- [ ] 实现 Supervisor 多智能体主管模式
|
||||
|
||||
## 🏁 完成后达成标准
|
||||
|
||||
- [ ] 能用 StateGraph 搭建任意结构的 Agent
|
||||
- [ ] 能用 Checkpointer 持久化与恢复会话状态
|
||||
- [ ] 能解释为什么生产首选 LangGraph 而非 LCEL
|
||||
|
||||
---
|
||||
|
||||
## 🚀 运行提示
|
||||
|
||||
```bash
|
||||
# 激活根目录的虚拟环境
|
||||
cd /Users/jack/source/Demo/py/demo_python_agent
|
||||
source .venv/bin/activate # 或直接用 uv run ...
|
||||
|
||||
# 进入本章目录
|
||||
cd code/003_phase3_frameworks/02_langgraph_core
|
||||
|
||||
# 跑你的练习文件
|
||||
uv run python your_exercise.py
|
||||
```
|
||||
@@ -0,0 +1,54 @@
|
||||
# LlamaIndex(RAG 数据接入与检索)
|
||||
|
||||
> 所属:阶段三 · 主流 Agent 开发框架
|
||||
> 目标:掌握 LlamaIndex 的 Document / Node / Index / QueryEngine 四件套,专门做 RAG 数据接入与检索。
|
||||
|
||||
---
|
||||
|
||||
## 📌 学习目的
|
||||
|
||||
掌握 LlamaIndex 的 Document / Node / Index / QueryEngine 四件套,专门做 RAG 数据接入与检索。
|
||||
|
||||
## ✅ 学习要求(前置条件)
|
||||
|
||||
已完成「01_langchain_basics」+ 阶段四「02_vector_db_and_memory」(如顺序学习可先看)。
|
||||
|
||||
## 📚 主要学习内容
|
||||
|
||||
- Document / Node:文档加载与切块
|
||||
- Index:VectorStoreIndex / SummaryIndex / KeywordTableIndex
|
||||
- QueryEngine:检索入口,可与 Agent 工具融合
|
||||
- LlamaIndex 与 LangGraph 组合:检索 vs 编排分工
|
||||
|
||||
## 📖 对应 docs
|
||||
|
||||
- 目录:[`docs/03-阶段三-主流Agent开发框架/`](../../docs/03-阶段三-主流Agent开发框架/)(按目录名里的 `第 X 篇` 对应)
|
||||
- 在 docs 目录里找到对应的小点 markdown 文件阅读详细理论。
|
||||
|
||||
## 🛠️ 建议练习
|
||||
|
||||
- [ ] 用 LlamaIndex 加载一份 PDF 并做问答
|
||||
- [ ] 把 QueryEngine 包成 LangGraph 的工具节点
|
||||
- [ ] 对比 LlamaIndex 与 Chroma 原生 API 的异同
|
||||
|
||||
## 🏁 完成后达成标准
|
||||
|
||||
- [ ] 能用 LlamaIndex 完成文档接入 → 索引 → 检索
|
||||
- [ ] 能把 QueryEngine 与 LangGraph 配合使用
|
||||
- [ ] 能解释 LlamaIndex 与 LangGraph 的分工
|
||||
|
||||
---
|
||||
|
||||
## 🚀 运行提示
|
||||
|
||||
```bash
|
||||
# 激活根目录的虚拟环境
|
||||
cd /Users/jack/source/Demo/py/demo_python_agent
|
||||
source .venv/bin/activate # 或直接用 uv run ...
|
||||
|
||||
# 进入本章目录
|
||||
cd code/003_phase3_frameworks/03_llamaindex
|
||||
|
||||
# 跑你的练习文件
|
||||
uv run python your_exercise.py
|
||||
```
|
||||
@@ -0,0 +1,51 @@
|
||||
# CrewAI(角色化多智能体,了解选型)
|
||||
|
||||
> 所属:阶段三 · 主流 Agent 开发框架
|
||||
> 目标:了解 CrewAI 的角色化多智能体模式,能判断什么场景适合用它。
|
||||
|
||||
---
|
||||
|
||||
## 📌 学习目的
|
||||
|
||||
了解 CrewAI 的角色化多智能体模式,能判断什么场景适合用它。
|
||||
|
||||
## ✅ 学习要求(前置条件)
|
||||
|
||||
已完成「02_langgraph_core」(先掌握 Supervisor 多智能体)。
|
||||
|
||||
## 📚 主要学习内容
|
||||
|
||||
- Agent / Task / Process 三个核心抽象
|
||||
- 角色化分工:每个 Agent 一个明确角色
|
||||
- CrewAI 与 LangGraph 多智能体的对比
|
||||
|
||||
## 📖 对应 docs
|
||||
|
||||
- 目录:[`docs/03-阶段三-主流Agent开发框架/`](../../docs/03-阶段三-主流Agent开发框架/)(按目录名里的 `第 X 篇` 对应)
|
||||
- 在 docs 目录里找到对应的小点 markdown 文件阅读详细理论。
|
||||
|
||||
## 🛠️ 建议练习
|
||||
|
||||
- [ ] 用 CrewAI 搭一个「策划 + 写作 + 评审」三人组
|
||||
- [ ] 对比 CrewAI 与 LangGraph Supervisor 模式的代码差异
|
||||
|
||||
## 🏁 完成后达成标准
|
||||
|
||||
- [ ] 能用 CrewAI 跑通一个最小多 Agent 示例
|
||||
- [ ] 能说清何时选 CrewAI、何时选 LangGraph
|
||||
|
||||
---
|
||||
|
||||
## 🚀 运行提示
|
||||
|
||||
```bash
|
||||
# 激活根目录的虚拟环境
|
||||
cd /Users/jack/source/Demo/py/demo_python_agent
|
||||
source .venv/bin/activate # 或直接用 uv run ...
|
||||
|
||||
# 进入本章目录
|
||||
cd code/003_phase3_frameworks/04_crewai
|
||||
|
||||
# 跑你的练习文件
|
||||
uv run python your_exercise.py
|
||||
```
|
||||
@@ -0,0 +1,51 @@
|
||||
# AutoGen(微软多 Agent,了解选型)
|
||||
|
||||
> 所属:阶段三 · 主流 Agent 开发框架
|
||||
> 目标:了解 AutoGen 的自然语言对话协作模式,知道它的现状(已并入 MAF 进入维护模式)。
|
||||
|
||||
---
|
||||
|
||||
## 📌 学习目的
|
||||
|
||||
了解 AutoGen 的自然语言对话协作模式,知道它的现状(已并入 MAF 进入维护模式)。
|
||||
|
||||
## ✅ 学习要求(前置条件)
|
||||
|
||||
已完成「02_langgraph_core」。
|
||||
|
||||
## 📚 主要学习内容
|
||||
|
||||
- AutoGen 的 Agent 间自然语言对话协作
|
||||
- 现状:已并入 Microsoft Agent Framework(MAF)
|
||||
- 何时考虑 AutoGen、何时直接上 LangGraph
|
||||
|
||||
## 📖 对应 docs
|
||||
|
||||
- 目录:[`docs/03-阶段三-主流Agent开发框架/`](../../docs/03-阶段三-主流Agent开发框架/)(按目录名里的 `第 X 篇` 对应)
|
||||
- 在 docs 目录里找到对应的小点 markdown 文件阅读详细理论。
|
||||
|
||||
## 🛠️ 建议练习
|
||||
|
||||
- [ ] 用 AutoGen 跑通一个最小多 Agent 对话
|
||||
- [ ] 查阅 MAF 官方文档,对比 AutoGen 与 LangGraph 现状
|
||||
|
||||
## 🏁 完成后达成标准
|
||||
|
||||
- [ ] 能说清 AutoGen 的定位与现状
|
||||
- [ ] 能判断新项目是否还要选 AutoGen
|
||||
|
||||
---
|
||||
|
||||
## 🚀 运行提示
|
||||
|
||||
```bash
|
||||
# 激活根目录的虚拟环境
|
||||
cd /Users/jack/source/Demo/py/demo_python_agent
|
||||
source .venv/bin/activate # 或直接用 uv run ...
|
||||
|
||||
# 进入本章目录
|
||||
cd code/003_phase3_frameworks/05_autogen
|
||||
|
||||
# 跑你的练习文件
|
||||
uv run python your_exercise.py
|
||||
```
|
||||
@@ -0,0 +1,52 @@
|
||||
# 其他主流方案
|
||||
|
||||
> 所属:阶段三 · 主流 Agent 开发框架
|
||||
> 目标:横向了解 Semantic Kernel / Assistants API / Dify 等方案,建立选型视野。
|
||||
|
||||
---
|
||||
|
||||
## 📌 学习目的
|
||||
|
||||
横向了解 Semantic Kernel / Assistants API / Dify 等方案,建立选型视野。
|
||||
|
||||
## ✅ 学习要求(前置条件)
|
||||
|
||||
已完成「01_langchain_basics」~「05_autogen」。
|
||||
|
||||
## 📚 主要学习内容
|
||||
|
||||
- Semantic Kernel:微软插件化框架(适合 Python/.NET 混合团队,已并入 MAF)
|
||||
- OpenAI Assistants API:托管式 Agent(快速原型,逻辑黑盒)
|
||||
- Dify:低代码 Agent 平台(业务验证)
|
||||
- 选型矩阵:自研 vs LangGraph vs Assistants API vs Dify
|
||||
|
||||
## 📖 对应 docs
|
||||
|
||||
- 目录:[`docs/03-阶段三-主流Agent开发框架/`](../../docs/03-阶段三-主流Agent开发框架/)(按目录名里的 `第 X 篇` 对应)
|
||||
- 在 docs 目录里找到对应的小点 markdown 文件阅读详细理论。
|
||||
|
||||
## 🛠️ 建议练习
|
||||
|
||||
- [ ] 用 Assistants API 跑通一个最小 Agent
|
||||
- [ ] 用 Dify 搭建一个零代码知识库问答
|
||||
|
||||
## 🏁 完成后达成标准
|
||||
|
||||
- [ ] 能横向对比四大方案的优劣
|
||||
- [ ] 能根据场景选择最合适的方案
|
||||
|
||||
---
|
||||
|
||||
## 🚀 运行提示
|
||||
|
||||
```bash
|
||||
# 激活根目录的虚拟环境
|
||||
cd /Users/jack/source/Demo/py/demo_python_agent
|
||||
source .venv/bin/activate # 或直接用 uv run ...
|
||||
|
||||
# 进入本章目录
|
||||
cd code/003_phase3_frameworks/06_other_frameworks
|
||||
|
||||
# 跑你的练习文件
|
||||
uv run python your_exercise.py
|
||||
```
|
||||
@@ -0,0 +1,54 @@
|
||||
# 阶段三综合实战 · LangGraph + LangChain 完整 Agent
|
||||
|
||||
> 所属:阶段三 · 主流 Agent 开发框架
|
||||
> 目标:用 LangGraph + LangChain 搭建一个生产级 Agent,覆盖工具调用、状态持久化、消息流式。
|
||||
|
||||
---
|
||||
|
||||
## 📌 学习目的
|
||||
|
||||
用 LangGraph + LangChain 搭建一个生产级 Agent,覆盖工具调用、状态持久化、消息流式。
|
||||
|
||||
## ✅ 学习要求(前置条件)
|
||||
|
||||
已完成阶段三前 6 个小点。
|
||||
|
||||
## 📚 主要学习内容
|
||||
|
||||
- StateGraph 完整搭建:LLM 节点 + ToolNode + 条件边
|
||||
- Checkpointer:thread_id 持久化与会话恢复
|
||||
- Stream:消息按 token 流式输出
|
||||
- 错误重试:tenacity 装饰器 + 异常包装
|
||||
|
||||
## 📖 对应 docs
|
||||
|
||||
- 目录:[`docs/03-阶段三-主流Agent开发框架/`](../../docs/03-阶段三-主流Agent开发框架/)(按目录名里的 `第 X 篇` 对应)
|
||||
- 在 docs 目录里找到对应的小点 markdown 文件阅读详细理论。
|
||||
|
||||
## 🛠️ 建议练习
|
||||
|
||||
- [ ] 实现一个支持多工具、多轮对话的 LangGraph Agent
|
||||
- [ ] 加入 Checkpointer 并验证中断恢复
|
||||
- [ ] 用 FastAPI 暴露 SSE 流式接口
|
||||
|
||||
## 🏁 完成后达成标准
|
||||
|
||||
- [ ] 能用 LangGraph 搭建任意结构的 Agent
|
||||
- [ ] 能解释 StateGraph / ToolNode / Checkpointer 的协作
|
||||
- [ ] 能将 Agent 暴露成 SSE 流式 API
|
||||
|
||||
---
|
||||
|
||||
## 🚀 运行提示
|
||||
|
||||
```bash
|
||||
# 激活根目录的虚拟环境
|
||||
cd /Users/jack/source/Demo/py/demo_python_agent
|
||||
source .venv/bin/activate # 或直接用 uv run ...
|
||||
|
||||
# 进入本章目录
|
||||
cd code/003_phase3_frameworks/99_capstone_langgraph_agent
|
||||
|
||||
# 跑你的练习文件
|
||||
uv run python your_exercise.py
|
||||
```
|
||||
Reference in New Issue
Block a user