Skip to content
 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

92 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dive into LangGraph

GitHub stars GitHub forks Language GitHub Project deploy-book

中文 | English

📚 在线阅读地址

📖《LangGraph 1.0 完全指南》

从零开始,动手实现强大的智能体


一、项目介绍

2025 年 10 月中旬,LangGraph 发布 1.0 版本。开发团队承诺这是一个稳定版本,预计未来接口不会大改,因此现在正是学习它的好时机。

这是一个开源电子书项目,旨在帮助 Agent 开发者快速掌握 LangGraph 框架。LangGraph 是由 LangChain 团队开发的开源智能体框架。它功能强大,你要的记忆、MCP、护栏、状态管理、多智能体它全都有。LangGraph 通常与 LangChain 一起使用:LangChain 提供基础组件和工具,LangGraph 负责工作流和状态管理。因此,两个库都需要学习。为了让大家快速入门,本教程将两个库的主要功能提取出来,分成 13 个章节进行介绍。

二、安装依赖

pip install -r requirements.txt
依赖包列表

以下为 requirements.txt 中的依赖包清单:

pydantic
python-dotenv
langchain[openai]
langchain-community
langchain-mcp-adapters
langchain-text-splitters
langgraph
langgraph-cli[inmem]
langgraph-supervisor
langgraph-checkpoint-sqlite
langgraph-checkpoint-redis
langmem
ipynbname
fastmcp
bs4
scikit-learn
supervisor
jieba
dashscope
tavily-python
ddgs

三、章节目录

本教程的内容速览:

序号 章节 主要内容
1 快速入门 创建你的第一个 ReAct Agent
2 状态图 使用 StateGraph 创建工作流
3 中间件 使用自定义中间件实现四个功能:预算控制、消息截断、敏感词过滤、PII 检测
4 人机交互 使用内置的 HITL 中间件实现人机交互
5 记忆 创建短期记忆、长期记忆
6 上下文工程 使用 State、Store、Runtime 管理上下文
7 MCP Server 创建 MCP Server 并接入 LangGraph
8 监督者模式 两种方法实现监督者模式:tool-calling、langgraph-supervisor
9 并行 如何实现并发:节点并发、@task 装饰器、Map-reduce、Sub-graphs
10 RAG 三种方式实现 RAG:向量检索、关键词检索、混合检索
11 网络搜索 实现联网搜索:DashScope、Tavily 和 DDGS
12 Deep Agents 简单介绍 Deep Agents
13 调试页面 介绍 langgraph-cli 提供的调试页面

未出现在上述章节但比较重要的代码,我放在仓库的 tests 目录下:

代码 说明
/tests/test_rag.py 使用 RAG 将本地文档片段注入智能体
/tests/test_langmem.py 使用 LangMem 管理智能体长期记忆
/tests/test_store.py 使用 RedisStore 快速读写长期记忆
/tests/test_router.py 实现一个简单的智能体路由

Note

承诺:本教程完全基于 LangGraph v1.0 编写,不含任何 v0.6 的历史残留。

四、调试页面

langgraph-cli 提供了一个可快速启动的调试页面。

langgraph dev

详见 第13章

五、延伸阅读

官方文档:

官方教程:

六、如何贡献

我们欢迎任何形式的贡献!

  • 🐛 报告 Bug - 发现问题请提交 Issue
  • 💡 功能建议 - 有好想法就告诉我们
  • 📝 内容完善 - 帮助改进教程内容
  • 🔧 代码优化 - 提交 Pull Request

七、开源协议

本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。

Releases

Packages

Contributors

Languages