【项目篇】基于LanGraph的自动处理客服邮件的 Agent汇总

一.项目定位

一个「人机协作」的客服邮件自动处理系统:AI 处理 80% 的常规邮件,人只审 20% 的高风险邮件。

维度 定位
产品形态 LangGraph 工作流引擎 + Web 操作台,不是聊天机器人,也不是纯自动回复器
核心命题 在「效率」与「安全」之间画一条可配置的线:低风险全自动,高风险必经人审
目标用户 中小 SaaS / 教育产品的客服团队(1-10 人)
价值主张 常规邮件秒级响应零人工;账单/复杂问题绝不擅自回复,杜绝客诉事故;全流程可追溯
差异化 不同于全自动客服机器人(保留人工闸门),也不同于工单系统(先分类路由再处理,而非全部排队等人)
边界 不做全渠道、不做营销群发、不追求取代人

二.技术栈

类别 技术选型 版本 作用
语言 Python 3.13.12 后端核心语言
Web 框架 FastAPI 0.141.1 异步 HTTP 服务
ASGI Uvicorn 0.52.4 服务器运行
AI 框架 LangChain 1.3.16 LLM 统一接入层
LangGraph langgraph 1.2.11 状态图编排 + Command 动态路由 + interrupt 人工审核
LLM 接入 langchain-openai(ChatOpenAI) 1.6.0 OpenAI 兼容协议客户端
LLM DeepSeek(deepseek-chat) --- 邮件分类 + 回复草拟(OpenAI 兼容接口)
结构化输出 function_calling 模式 --- 分类结果结构化(DeepSeek 不支持 response_format)
记忆 InMemorySaver(LangGraph 内置) --- 会话检查点,支持 interrupt 暂停/恢复(V1.1 换 SQLite)
前端 原生 HTML/CSS/JS + Tailwind CDN --- 单页操作台(邮件提交/流程可视化/人工审核)
流式通信 SSE(fetch + ReadableStream) --- 节点进度实时推送
序列化 Pydantic 2.13.4 数据模型校验
可观测 LangSmith 0.11.1(SDK 已装) LLM 调用链追踪(待配置启用)
配置管理 python-dotenv 1.2.3 .env 加载 API Key
包管理 uv --- 依赖管理与虚拟环境
重试 LangGraph RetryPolicy 内置 检索节点失败自动重试(3 次,间隔递增)

三.核心功能

# 功能 说明
1 邮件智能分类 LLM 结构化输出 4 个维度:意图(question/bug/billing/feature/complex)、紧急度(low→critical)、主题、摘要
2 动态路由 按意图自动分流:咨询/功能请求 → 查文档;Bug → 建工单;账单/复杂 → 跳过检索直接草拟
3 知识库检索 按分类主题查询文档,检索结果作为草拟回复的上下文(当前模拟数据,V1.1 接 RAG)
4 自动建工单 Bug 邮件自动生成工单号(BUG-XXXXX)并写入客户历史
5 回复草拟 基于原邮件 + 分类 + 检索上下文生成草稿:专业友好、≤100 字、统一落款
6 人工审核(HITL) 高风险邮件(账单/复杂/高紧急度)草拟后暂停,等人工「批准」或「编辑后」再发送------interrupt 暂停 / Command 恢复
7 自动发送 低风险邮件草拟后直发,全程零人工
8 失败重试 检索节点异常自动重试(3 次,间隔递增)
9 状态检查点 InMemorySaver 保存会话状态,审核暂停的邮件可随时恢复继续
10 Web 操作台 单页前端:邮件提交、流程时间线实时可视化、分类卡片、审核面板、最终回复展示

风险分级闸门 :不是无脑全自动,也不是全人工------intent × urgency 二维判定,让 80% 常规邮件秒回、20% 高风险邮件必经人审

全程可观测:SSE 流式推送每个节点的执行进度,前端时间线实时点亮

流程可视化导出:图结构一键导出 PNG(Mermaid 渲染)

四.图

4.1 工作流程图

4.2 测试结果图

相关推荐
灿飞屋33 分钟前
Kotlin与Java虚拟机四:函数
java·python·kotlin·安卓·android jetpack
坤坤子吖1 小时前
Linux网络编程:TCP服务器的多进程与多线程实现
linux·服务器·开发语言·网络·c++·笔记·学习
一晌小贪欢2 小时前
Python基础:第 09 篇 · while 循环:重复直到不满足
开发语言·c++·python·数据可视化·面向对象·python办公
xiaoye-duck2 小时前
《C++ 项目:手写大模型接入 SDK》LLMManager架构设计与实现
开发语言·网络·c++·语言模型
蒸蒸yyyyzwd3 小时前
后端相关学习笔记。
笔记·学习
一条大祥脚3 小时前
CuTe 与 CuTe DSL:从 C++ 模板元编程到 Python DSL 的 GPU 编程演进
开发语言·c++·python·cutlass·cute·cute dsl
10年前端老司机3 小时前
Milvus 8种检索能力实践
数据库·python·agent
FRing034 小时前
vue2干货总结8(路由模块封装、router-link、声明式导航、路由重定向、编程式导航)
开发语言·前端·vue.js·vue2
旖旎夜光4 小时前
【C++ 基础入门】C++ 多态(上):虚函数、重写、override/final 与抽象类
开发语言·c++·笔记·学习
starzy19904 小时前
深入理解Scala嵌套函数:作用域封装之道
开发语言·scala