1. 项目简介
这是一个面向机房运维场景的智能监控 Agent Demo,基于LangChain + LangGraph构建,用代码状态机(StateGraph)的方式编排多智能体的对话流程。它模拟了运维工作中最典型的三大场景:
- 设备台账配置:对机房设备进行增、删、改、查操作
- 告警确认:查询告警并以Human-in-the-loop交互方式完成告警确认
- 性能数据查询:按时间维度查看设备 CPU、内存、流量等性能指标
整个系统支持对话式交互,既可接入 DeepSeek 大模型进行自然语言理解,也可以在无大模型环境下自动降级为确定性模式,保证开箱即用。
2. 核心特性
- 多 Agent 协作:采用 Router + 设备 Agent + 告警 Agent + 性能 Agent 的分工结构,各司其职
- 零 Token 路由:路由决策由纯 Python 函数完成,不消耗 LLM Token
- Human-in-the-loop:告警确认环节通过
interrupt()暂停图执行,等待用户选择后再恢复 - 断点续跑:基于
MemorySaver检查点实现对话状态持久化,中断后可无缝恢复 - 双模式自动降级:配置
DEEPSEEK_API_KEY时使用大模型;未配置时自动切换到确定性模式(关键词匹配),无需 API Key 也能完整运行 - 模拟数据:所有工具均返回模拟数据,无需真实后端即可体验完整流程
3. 架构设计
3.1 多 Agent 职责
| Agent | 职责 | 工具 |
|---|---|---|
| Router | 意图识别,路由分发(零 Token 纯 Python) | — |
| Device Agent | 设备台账增删改查 | list_devices, get_device, add_device, update_device, delete_device |
| Alarm Agent | 告警查询 + 交互式确认 | list_alarms, get_alarm, confirm_alarm, get_alarm_statistics |
| Performance Agent | 性能指标时序查询 | list_metrics, get_device_performance, get_performance_summary |
| Greeting Response | 兜底应答与帮助信息 | — |