Langie-LangGraph客户支持代理实现
架构概述
客户支持代理流程
图形结构
项目概述
成功实现了一个结构化的LangGraph Agent,该Agent将客户支持工作流建模为基于图的阶段,具有完整的状态持久性和MCP客户端集成。
关键交付成果已完成✅
1.代理配置(config.yaml)
- 输入架构:customer_name、电子邮件、查询、优先级、ticket_id
- 定义的11个阶段:每个都有执行模式(确定性/非确定性)
- MCP服务器映射:ATLAS(外部)vs COMMON(内部)能力
- 完整的能力映射:所有25种以上的能力都映射到相应的服务器上
2.工作代理实现
- LangGraph集成:基于图形的完整工作流(langgraph_agent.py)
- 简化版本:兼容的实现(simple_agent.py)
- 状态管理:所有阶段的全面状态持久性
- MCP客户端集成:ATLAS/COMMON服务器的模拟客户端
3.演示执行结果
Input: {
"customer_name": "John Smith",
"email": "john.smith@email.com",
"query": "I have a billing issue with my premium account...",
"priority": "high",
"ticket_id": "12345"
}
Output: {
"ticket_id": "12345",
"customer_name": "John Smith",
"status": "escalated",
"resolution": "Dear John Smith, thank you for contacting us...",
"escalated": true,
"solution_score": 85,
"completed_stages": [all 11 stages]
}建筑亮点
11阶段工作流实施
- 摄入 -有效载荷验收
- 理解 -请求解析+实体提取(DETERMINISTIC)
- 准备 -数据归一化+富集(确定性)
- 问 -澄清问题(人类)
- 等待 -答案提取(确定性)
- 检索 -知识库搜索(确定性)
- 决定 -解决方案评估(非决定性)⭐
- 更新 -票务管理(确定性)
- 创建 -响应生成(确定性)
- 做 -API调用+通知(确定)
- 完成 -最终有效载荷输出
非确定性决策
- 决策阶段:基于解决方案得分的动态路由
- 阈值逻辑:如果分数\<90,则升级(已证明:85→ 升级)
- 运行时编排:根据上下文选择能力
MCP客户端编排
- 服务器:内部能力(解析、评分、规范化)
- ATLAS服务器:外部集成(实体、KB搜索、通知)
- 无缝路由:根据能力自动选择服务器
状态持久性
- 完成状态跟踪:所有变量在各个阶段都保持不变
- 执行日志记录:调试/监控的详细日志
- 阶段完成:跟踪所有11个阶段的进展情况
技术实现
文件结构
agentic_ai\
├── config.yaml # Agent configuration
├── state_models.py # State management models
├── mcp_client.py # MCP client implementation
├── langgraph_agent.py # Full LangGraph implementation
├── simple_agent.py # Simplified working version
├── main.py # Demo script
├── requirements.txt # Dependencies
└── README.md # Documentation演示的主要功能
- ✅ 图形编排:顺序+非确定性执行
- ✅ 状态管理:所有阶段的持久变量
- ✅ MCP集成:ATLAS/COMMON服务器路由
- ✅ 决策逻辑:基于分数的升级(85\<90→升级)
- ✅ 综合录井:完整执行跟踪
- ✅ 端到端流程:完整的客户支持工作流程
演示结果摘要
- 已完成的阶段: 11/11 ✅
- MCP呼叫:15+能力执行
- 作出的决定:升级(分数85\<阈值90)
- 国家保护:跨阶段维护的所有数据
- 最终状态:已生成响应的工单已升级
Langie探员个性表现
- 结构化思维:明确分阶段执行
- 国家意识:结转所有变量
- 智能路由:知道何时使用ATLAS与COMMON
- 决策:非确定性DECIDE阶段逻辑
- 综合录井:每个决定都有明确的记录
该实现成功演示了一个生产就绪的LangGraph Agent,能够通过适当的状态管理、MCP集成和智能决策来处理复杂的客户支持工作流。
