Skip to content

fanyty/langgraph_multi_agent_tutorial

Repository files navigation

🤖 LangGraph多智能体AI系统教程案例分享

构建会思考、能记忆、可人工干预的企业级多智能体AI系统

Python LangGraph OpenAI License

🌟 项目特色

这是一个完整的LangGraph多智能体系统教程,展示如何构建具有以下特性的AI系统:

  • 🧠 智能思考: 基于ReAct模式的推理循环
  • 💾 长期记忆: 用户偏好学习和个性化服务
  • 👤 人工干预: 身份验证和工作流中断机制
  • 🎯 专业分工: 音乐目录和发票信息专用智能体
  • 🎭 智能路由: 监督者智能体协调多任务处理
  • 📊 状态管理: 完整的对话状态跟踪和持久化

🚀 快速开始

1. 环境安装

# 克隆或下载项目
cd langgraph_multi_agent_tutorial

# 安装依赖
pip install -r requirements.txt

2. 配置API密钥

# 编辑 run_tutorial.py
os.environ["OPENAI_API_KEY"] = "your-openai-api-key"
os.environ["LANGSMITH_API_KEY"] = "your-langsmith-api-key"  # 可选

3. 运行教程

python run_tutorial.py

📚 文档导航

文档 说明 适合人群
🚀 快速开始指南 5分钟快速体验系统功能 所有用户
📖 教程说明文档 完整的技术文档和原理解析 开发者
📁 项目结构说明 代码架构和组件关系详解 架构师
🔧 run_tutorial.py 完整的可运行代码 实践者

🏗️ 系统架构

用户查询
    ↓
身份验证 (人工干预)
    ↓  
记忆加载 (长期记忆)
    ↓
监督者智能体 (路由决策)
    ↓
┌─────────────┬─────────────┐
│ 音乐智能体   │ 发票智能体   │
│ (ReAct模式) │ (预构建)    │
└─────────────┴─────────────┘
    ↓
记忆更新 (偏好学习)
    ↓
用户响应

💡 核心功能演示

🎵 音乐推荐智能体

用户: "我喜欢摇滚乐,推荐一些专辑"
系统: 查询数据库 → 分析偏好 → 推荐相关专辑和艺术家

📊 发票查询智能体

用户: "我最近的购买记录是什么?"
系统: 验证身份 → 查询发票 → 提供详细信息

🤝 人工干预机制

用户: "查询我的账单"
系统: 身份验证失败 → 中断等待 → 人工确认 → 继续服务

🧠 长期记忆系统

系统: 分析对话 → 提取偏好 → 更新用户画像 → 个性化服务

🛠️ 技术栈

  • 框架: LangGraph, LangChain
  • LLM: OpenAI GPT-4o-mini
  • 数据库: SQLite (Chinook音乐数据库)
  • 记忆: MemorySaver (短期) + InMemoryStore (长期)
  • 类型安全: TypedDict + Pydantic
  • 监控: LangSmith (可选)

📋 功能特性

✅ 已实现功能

  • 多智能体架构设计
  • ReAct推理模式
  • 数据库工具集成
  • 状态管理和持久化
  • 人工干预机制
  • 长期记忆系统
  • 智能路由和任务分发
  • 完整的测试套件

🔮 扩展建议

  • 多模态支持 (图像、语音)
  • 持久化存储 (Redis、PostgreSQL)
  • Web界面集成
  • API服务化
  • 性能监控和优化
  • 更多垂直领域智能体

🎯 学习目标

完成本教程后,您将掌握:

  1. 多智能体系统设计: 架构设计和组件协调
  2. LangGraph框架: 图构建、节点定义、边管理
  3. 工具集成: 数据库查询、API调用、外部工具
  4. 状态管理: 对话状态、记忆系统、持久化
  5. 人工干预: 工作流中断、恢复机制
  6. 企业应用: 客户服务、业务集成、可扩展性

🤝 贡献指南

欢迎贡献代码、文档或提出改进建议!

  1. Fork 项目
  2. 创建特性分支
  3. 提交更改
  4. 发起 Pull Request

📄 许可证

本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情

🙏 致谢

  • LangChain 团队提供的优秀框架
  • Chinook Database 提供的示例数据
  • 所有为开源AI工具做出贡献的开发者们

⭐ 如果这个项目对您有帮助,请给个star支持一下!

🐛 发现问题?请提交 Issue

💬 有疑问?欢迎在 Discussions 中交流 # -langgraph_multi_agent_tutorial

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages