本项目实现了一个基于多智能体(Multi-Agent)和检索增强生成(Retrieval-Augmented Generation, RAG)技术的客户支持系统。它利用 Python、LangChain 和 LangGraph 构建了一个能够处理各种旅行相关查询的对话式 AI,包括航班预订、租车、酒店预订和行程推荐。还有对接了woocommerce商城进行商品查询,文章查询,表单提交,订单查询等商城功能。
See the code本项目实现了一个基于多智能体(Multi-Agent)和检索增强生成(Retrieval-Augmented Generation, RAG)技术的客户支持系统。它利用 Python、LangChain 和 LangGraph 构建了一个能够处理各种旅行相关查询的对话式 AI,包括航班预订、租车、酒店预订和行程推荐。还有对接了woocommerce商城进行商品查询,文章查询,表单提交,订单查询等商城功能。 本项目fork自 https://github.com/ro-anderson/multi-agent-rag-customer-support ,一个基础的框架。
本项目在原基础上进行了重大功能扩展,新增了安全护栏机制(越狱防护和相关性检查)和基于 GoHumanLoop 的人工审核流程,极大地提升了系统的安全性和可控性。


系统采用多智能体架构,使用 LangGraph 实现为状态图。以下是主要组件说明:
安全 和 敏感 工具。安全工具无需用户确认即可使用,而敏感工具在执行前需要用户确认。条件边 根据当前状态和用户输入在助手和 工具节点 之间路由对话。内存检查点 保存进度。这种架构允许以灵活和模块化的方式处理各种客户支持场景,同时为敏感操作内置了多重安全措施。
为了确保有效的监控和调试能力,项目集成了 LangSmith 以增强可观测性。LangSmith 有助于跟踪请求的生命周期,包括工具使用、代理响应和错误,使开发人员能够了解多智能体系统随时间的性能表现。

克隆代码仓库并导航到项目目录。
从 .dev.env 创建 .env 文件:
cp .dev.env .env
.env 文件并填入所需值:OPENAI_API_KEY="your_openai_api_key"
LANGCHAIN_API_KEY="your_langsmith_api_key" # 可选
# 如需配置 GoHumanLoop,请添加:
# GOHUMANLOOP_API_KEY="your_gohumanloop_api_key"
# 如需配置 QDRANT,请添加:
# QDRANT_URL="your_QDRANT_URL"
# woocommerce接口相关
# WOOCOMMERCE_API_URL="your_WOOCOMMERCE_API_URL"
# WOOCOMMERCE_API_KEY="your_WOOCOMMERCE_API_KEY"
# WOOCOMMERCE_API_SECRET="your_WOOCOMMERCE_API_SECRET"
poetry install
docker compose up qdrant -d
你可以通过以下地址访问 Qdrant UI: http://localhost:6333/dashboard#
poetry run python vectorizer/app/main.py
命令行版本:
poetry run python ./customer_support_chat/app/main.py
web界面版本:
poetry run uvicorn web_app.app.main:app --reload --host 0.0.0.0 --port 8000
本项目包含两个主要服务:
Customer Support Chat 服务依赖于 Vectorizer 生成的向量数据库。
本项目使用两个主要数据源:
旅行数据库: 一个来自 LangGraph 的旅行数据库基准。这个 SQLite 数据库存储了航班、预订、乘客和其他旅行相关数据。

Qdrant: 一个用于存储和查询旅行数据库向量嵌入的向量数据库。

系统功能说明文档-技术实现版.md , 系统功能说明文档.md ,
为了继续改进多智能体RAG系统,以下是一些直接相关的增强方向:
工具优化: 利用先进的 RAG 技术改进现有工具的潜力巨大:
search_flights, search_hotels, search_car_rentals 等) 中实现 自适应 RAG 方法,通过集成更精细的过滤来提高从向量数据库 (VecDB) 检索的准确性。纠正性 RAG,确保回退搜索更相关且高效。自我 RAG 来评估生成的答案是否基于检索到的数据(来自 VecDB 或网络搜索)。如果不是,代理可以在响应前请求更准确或额外的信息,确保最终输出的数据完整性。图架构优化:
graph.py 中为不同代理添加更详细的条件路径来增强逻辑,确保基于用户查询和检索文档做出更好的决策。集成内存:
大家好,今天想跟大家分享一个我最近在研究和改进的 AI 项目:一个基于多智能体(Multi-Agent)和 RAG 技术的智能客服系统。这个项目原本是用来处理旅行相关问题的,比如查航班、订酒店之类的。但我觉得它有更大的潜力,所以花了一些时间给它“升级”了一下,让它变得更强大、也更安全。
简单来说,这个项目是一个能和你“聊天”的 AI 客服。你问它问题,它不是简单地从网上搜一段文字粘贴给你,而是像一个真正的客服专员一样,理解你的需求,调用不同的工具(比如查数据库、查政策、甚至帮你下单),然后给你一个准确、完整的回答。
它解决的核心问题是:如何让 AI 客服变得更“聪明”、更“专业”、更“安全”?
“聪明”:很多 AI 聊天机器人,问简单问题还行,一旦问题复杂一点,比如“我想把后天的航班改到大后天,然后顺便看看目的地附近有什么推荐的酒店?”,它就容易懵圈或者给出不相关的回答。这个项目通过“多智能体”架构,让不同的“专家”(助手)各司其职。一个专门管航班,一个专门管酒店,一个专门管租车……主助手负责统筹,把复杂问题拆解,派给对应的“专家”去处理,最后再整合答案。这样就能很好地处理复杂的、需要跨领域知识的问题。
“专业”:为了让 AI 的回答有根有据,不是凭空捏造,项目用了 RAG(检索增强生成) 技术。它会先去一个专门的“知识库”(这里是一个向量数据库)里查找和你问题最相关的信息,然后再基于这些信息来生成回答。这就像给 AI 配了一个“外挂”的、随时可以查阅的“工作手册”,确保它的回答是基于真实数据的,而不是瞎编。
“安全”:这是我觉得这次改进最重要的部分。任何涉及到“真金白银”或“个人隐私”的操作,比如“取消我的机票”、“修改我的酒店订单”,都是非常敏感的。如果这些操作没有足够的保护,万一被恶意利用或者 AI 误解了用户意图,后果不堪设想。原始项目已经有了一层“用户确认”保护,但我觉得还不够。
原始项目已经很棒了,但它在“安全”方面还有提升空间,主要有两点:
针对以上两个“安全”方面的不足,我主要做了两方面的改进:
加装“安全护栏” (Security Guardrails):
引入“人工审核” (GoHumanLoop):
通过这两套机制,系统就像有了一个“智能门卫”(安全护栏)和一个“最终审批官”(人工审核),从入口和出口两个环节牢牢把关,确保系统的安全和稳定。
这个项目的价值在于它提供了一套构建安全、可靠、专业的企业级 AI 客服系统的完整思路和实践方法。
对开发者来说:
对企业或产品经理来说:
README.md 的步骤,应该能顺利运行起来。总的来说,这个项目不只是一个“能聊天”的 AI,它更是一个展示如何构建一个既强大又可靠的智能系统的范例。希望我的分享能给你带来一些启发!
感谢: https://linux.do
本项目实现了一个基于多智能体(Multi-Agent)和检索增强生成(Retrieval-Augmented Generation, RAG)技术的客户支持系统。它利用 Python、LangChain 和 LangGraph 构建了一个能够处理各种旅行相关查询的对话式 AI,包括航班预订、租车、酒店预订和行程推荐。还有对接了woocommerce商城进行商品查询,文章查询,表单提交,订单查询等商城功能。
See the code本项目实现了一个基于多智能体(Multi-Agent)和检索增强生成(Retrieval-Augmented Generation, RAG)技术的客户支持系统。它利用 Python、LangChain 和 LangGraph 构建了一个能够处理各种旅行相关查询的对话式 AI,包括航班预订、租车、酒店预订和行程推荐。还有对接了woocommerce商城进行商品查询,文章查询,表单提交,订单查询等商城功能。 本项目fork自 https://github.com/ro-anderson/multi-agent-rag-customer-support ,一个基础的框架。
本项目在原基础上进行了重大功能扩展,新增了安全护栏机制(越狱防护和相关性检查)和基于 GoHumanLoop 的人工审核流程,极大地提升了系统的安全性和可控性。


系统采用多智能体架构,使用 LangGraph 实现为状态图。以下是主要组件说明:
安全 和 敏感 工具。安全工具无需用户确认即可使用,而敏感工具在执行前需要用户确认。条件边 根据当前状态和用户输入在助手和 工具节点 之间路由对话。内存检查点 保存进度。这种架构允许以灵活和模块化的方式处理各种客户支持场景,同时为敏感操作内置了多重安全措施。
为了确保有效的监控和调试能力,项目集成了 LangSmith 以增强可观测性。LangSmith 有助于跟踪请求的生命周期,包括工具使用、代理响应和错误,使开发人员能够了解多智能体系统随时间的性能表现。

克隆代码仓库并导航到项目目录。
从 .dev.env 创建 .env 文件:
cp .dev.env .env
.env 文件并填入所需值:OPENAI_API_KEY="your_openai_api_key"
LANGCHAIN_API_KEY="your_langsmith_api_key" # 可选
# 如需配置 GoHumanLoop,请添加:
# GOHUMANLOOP_API_KEY="your_gohumanloop_api_key"
# 如需配置 QDRANT,请添加:
# QDRANT_URL="your_QDRANT_URL"
# woocommerce接口相关
# WOOCOMMERCE_API_URL="your_WOOCOMMERCE_API_URL"
# WOOCOMMERCE_API_KEY="your_WOOCOMMERCE_API_KEY"
# WOOCOMMERCE_API_SECRET="your_WOOCOMMERCE_API_SECRET"
poetry install
docker compose up qdrant -d
你可以通过以下地址访问 Qdrant UI: http://localhost:6333/dashboard#
poetry run python vectorizer/app/main.py
命令行版本:
poetry run python ./customer_support_chat/app/main.py
web界面版本:
poetry run uvicorn web_app.app.main:app --reload --host 0.0.0.0 --port 8000
本项目包含两个主要服务:
Customer Support Chat 服务依赖于 Vectorizer 生成的向量数据库。
本项目使用两个主要数据源:
旅行数据库: 一个来自 LangGraph 的旅行数据库基准。这个 SQLite 数据库存储了航班、预订、乘客和其他旅行相关数据。

Qdrant: 一个用于存储和查询旅行数据库向量嵌入的向量数据库。

系统功能说明文档-技术实现版.md , 系统功能说明文档.md ,
为了继续改进多智能体RAG系统,以下是一些直接相关的增强方向:
工具优化: 利用先进的 RAG 技术改进现有工具的潜力巨大:
search_flights, search_hotels, search_car_rentals 等) 中实现 自适应 RAG 方法,通过集成更精细的过滤来提高从向量数据库 (VecDB) 检索的准确性。纠正性 RAG,确保回退搜索更相关且高效。自我 RAG 来评估生成的答案是否基于检索到的数据(来自 VecDB 或网络搜索)。如果不是,代理可以在响应前请求更准确或额外的信息,确保最终输出的数据完整性。图架构优化:
graph.py 中为不同代理添加更详细的条件路径来增强逻辑,确保基于用户查询和检索文档做出更好的决策。集成内存:
大家好,今天想跟大家分享一个我最近在研究和改进的 AI 项目:一个基于多智能体(Multi-Agent)和 RAG 技术的智能客服系统。这个项目原本是用来处理旅行相关问题的,比如查航班、订酒店之类的。但我觉得它有更大的潜力,所以花了一些时间给它“升级”了一下,让它变得更强大、也更安全。
简单来说,这个项目是一个能和你“聊天”的 AI 客服。你问它问题,它不是简单地从网上搜一段文字粘贴给你,而是像一个真正的客服专员一样,理解你的需求,调用不同的工具(比如查数据库、查政策、甚至帮你下单),然后给你一个准确、完整的回答。
它解决的核心问题是:如何让 AI 客服变得更“聪明”、更“专业”、更“安全”?
“聪明”:很多 AI 聊天机器人,问简单问题还行,一旦问题复杂一点,比如“我想把后天的航班改到大后天,然后顺便看看目的地附近有什么推荐的酒店?”,它就容易懵圈或者给出不相关的回答。这个项目通过“多智能体”架构,让不同的“专家”(助手)各司其职。一个专门管航班,一个专门管酒店,一个专门管租车……主助手负责统筹,把复杂问题拆解,派给对应的“专家”去处理,最后再整合答案。这样就能很好地处理复杂的、需要跨领域知识的问题。
“专业”:为了让 AI 的回答有根有据,不是凭空捏造,项目用了 RAG(检索增强生成) 技术。它会先去一个专门的“知识库”(这里是一个向量数据库)里查找和你问题最相关的信息,然后再基于这些信息来生成回答。这就像给 AI 配了一个“外挂”的、随时可以查阅的“工作手册”,确保它的回答是基于真实数据的,而不是瞎编。
“安全”:这是我觉得这次改进最重要的部分。任何涉及到“真金白银”或“个人隐私”的操作,比如“取消我的机票”、“修改我的酒店订单”,都是非常敏感的。如果这些操作没有足够的保护,万一被恶意利用或者 AI 误解了用户意图,后果不堪设想。原始项目已经有了一层“用户确认”保护,但我觉得还不够。
原始项目已经很棒了,但它在“安全”方面还有提升空间,主要有两点:
针对以上两个“安全”方面的不足,我主要做了两方面的改进:
加装“安全护栏” (Security Guardrails):
引入“人工审核” (GoHumanLoop):
通过这两套机制,系统就像有了一个“智能门卫”(安全护栏)和一个“最终审批官”(人工审核),从入口和出口两个环节牢牢把关,确保系统的安全和稳定。
这个项目的价值在于它提供了一套构建安全、可靠、专业的企业级 AI 客服系统的完整思路和实践方法。
对开发者来说:
对企业或产品经理来说:
README.md 的步骤,应该能顺利运行起来。总的来说,这个项目不只是一个“能聊天”的 AI,它更是一个展示如何构建一个既强大又可靠的智能系统的范例。希望我的分享能给你带来一些启发!
感谢: https://linux.do