Langgraph Multi Agent Rag Customer Support banner
liangdabiao liangdabiao

Langgraph Multi Agent Rag Customer Support

AI community

Description

本项目实现了一个基于多智能体(Multi-Agent)和检索增强生成(Retrieval-Augmented Generation, RAG)技术的客户支持系统。它利用 Python、LangChain 和 LangGraph 构建了一个能够处理各种旅行相关查询的对话式 AI,包括航班预订、租车、酒店预订和行程推荐。还有对接了woocommerce商城进行商品查询,文章查询,表单提交,订单查询等商城功能。

Installation

This entry records only its repository, not the path inside it, so there is no exact command to give. Open the source below and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

README

多智能体RAG客服系统

项目简介

本项目实现了一个基于多智能体(Multi-Agent)和检索增强生成(Retrieval-Augmented Generation, RAG)技术的客户支持系统。它利用 Python、LangChain 和 LangGraph 构建了一个能够处理各种旅行相关查询的对话式 AI,包括航班预订、租车、酒店预订和行程推荐。还有对接了woocommerce商城进行商品查询,文章查询,表单提交,订单查询等商城功能。 本项目fork自 https://github.com/ro-anderson/multi-agent-rag-customer-support ,一个基础的框架。

本项目在原基础上进行了重大功能扩展,新增了安全护栏机制(越狱防护和相关性检查)和基于 GoHumanLoop 的人工审核流程,极大地提升了系统的安全性和可控性。

系统功能演示

![演示视频缩略图](./images/ytb.png)

多智能体RAG系统流程图

![系统运行流程图](./graphs/multi-agent-rag-system-graph.png)

架构概览

系统采用多智能体架构,使用 LangGraph 实现为状态图。以下是主要组件说明:

  1. 主助手 (Primary Assistant): 用户查询的入口点。它根据用户需求将对话路由到专门的助手。
  2. 专业助手 (Specialized Assistants):
    • 航班预订助手: 处理航班相关的查询和预订。
    • 租车助手: 管理租车请求。
    • 酒店预订助手: 处理酒店预订查询。
    • 行程推荐助手: 处理旅行和活动推荐。
    • WooCommerce助手: 处理电商产品和订单查询。
    • 表单提交助手: 处理用户表单提交。
    • 博客搜索助手: 处理博客文章搜索。
  3. 工具节点 (Tool Nodes): 每个助手都可以访问 安全敏感 工具。安全工具无需用户确认即可使用,而敏感工具在执行前需要用户确认。
  4. 路由逻辑 (Routing Logic): 系统使用 条件边 根据当前状态和用户输入在助手和 工具节点 之间路由对话。
  5. 用户确认 (User Confirmation): 对于敏感操作,系统会暂停并请求用户确认后再继续。
  6. 内存和状态管理 (Memory and State Management): 系统维护对话状态,并使用 内存检查点 保存进度。
  7. 安全与确认机制 (Security and Confirmation Mechanisms):
    • 敏感操作确认: 用户必须确认所有可能修改数据的操作。
    • 安全护栏: 在处理用户输入前,系统会通过AI代理进行越狱防护和相关性检查。
    • 人工审核 (GoHumanLoop): 敏感操作在用户确认后,还需通过 GoHumanLoop 框架发送给管理员进行最终审核(例如通过飞书通知)。

这种架构允许以灵活和模块化的方式处理各种客户支持场景,同时为敏感操作内置了多重安全措施。

项目可观测性

为了确保有效的监控和调试能力,项目集成了 LangSmith 以增强可观测性。LangSmith 有助于跟踪请求的生命周期,包括工具使用、代理响应和错误,使开发人员能够了解多智能体系统随时间的性能表现。

![LangSmith](./images/langsmith.gif)

本地运行环境要求

  • Python 3.12+
  • Poetry
  • Docker 和 Docker Compose
  • OpenAI API Key
  • LangSmith API Key (可选,用于追踪)

如何运行?

本地环境设置

  1. 克隆代码仓库并导航到项目目录。

  2. 从 `.dev.env` 创建 `.env` 文件:

cp .dev.env .env
  1. 编辑 .env 文件并填入所需值:
OPENAI_API_KEY="your_openai_api_key"
LANGCHAIN_API_KEY="your_lan