从 AIOps 到 Agent Ops:故障定位 Agent 的设计与实践
运维正在经历从 AIOps 辅助分析向 Agent Ops 自主执行的深刻演进。尤其在 Vibe Coding 时代,开发范式从可控代码转向概率系统,系统的不可预测性急剧上升,可观测性的重要性前所未有地凸显。然而,直接将大模型引入运维场景并非坦途,幻觉、上下文爆炸和效率低下等问题接踵而至。本文将探讨如何基于知识图谱构建可靠的故障定位 Agent,并分享在工程落地中的架构取舍与实践经验。
核心问题与挑战
当 Agent 尝试理解复杂的业务系统时,我们面临以下核心痛点:
- 上下文爆炸:业务系统全局信息量巨大,直接输入大模型导致关键信息被淹没。
- 幻觉与过度归因:模型基于异常点容易错误推断因果关系,结论存在严重误导。
- Single-Agent 瓶颈:在复杂的可观测场景下,单 Agent 极易出现 “Lost in the middle” 和上下文超限。
- 原始数据低效:直接将原始指标和日志输入大模型,分析效率极低且严重浪费 Token。
- 直接生成图谱的坑:尝试用大模型直接生成知识图谱,存在幻觉累加、Token 成本极高和可解释性差的问题。
方案与实践
破局思路:构建知识图谱(灭火图)
仅有 Metrics/Logs/Traces 是不够的,系统缺乏结构、语义和因果约束。我们提出构建包含实体、属性和关系的知识图谱(灭火图),为 Agent 提供认知基座。它的核心价值在于:
- 快速收敛故障范围
- 支持快速下钻分析根因
- 辅助日常巡检排查
自动建图:模型生成规则,规则生成数据
为了避免大模型直接生成图谱的缺陷,我们采用“模型生成规则,规则生成数据”的策略。大模型负责理解业务逻辑并生成抽取规则,再由规则引擎处理实际数据生成图谱。这种方式有效保证了数据质量,降低了成本,并确保了图谱的可解释性。
Graph 辅助推理策略
知识图谱不仅是静态展示,更是 Agent 推理的抓手。我们总结了四种核心策略:
- Graph as Context:结构化增强模型理解,实现简单,但浪费上下文空间,多跳推理强依赖模型能力。
- Graph as Tool:按需查询,减少上下文干扰。
- Graph as Planner:基于图谱结构规划推理路径。
- Graph as Validator:采用“假设-验证”机制,在知识图谱中验证根因,若无法验证则明确返回“不确定”,坚决避免误导。
工程优化与架构设计
在工程实现上,我们通过以下手段突破瓶颈:
- 传统算法前置:对指标进行趋势分析,对日志进行聚类去重,将处理后的高信噪比数据交由大模型分析,大幅减少 Token 和耗时。
- MainAgent + SubAgent 架构:采用共享上下文的多 Agent 架构,MainAgent 负责统筹,将日志、Trace 分析等任务拆分给 SubAgent,突破单 Agent 上下文瓶颈。
- Workflow vs Agent:确定性逻辑用 Workflow 解决,不确定性长尾问题用 Agent 解决,并将 Workflow 封装为 Agent 可调用的 Skill(Workflow as Skill)。
Flashcat AI Agent 落地实践
在快猫星云的 Flashcat 产品中,上述架构得到了验证。基于开源夜莺(Nightingale)的统一可观测能力,Flashcat AI Agent 实现了:
- 一句话接入数据与创建知识图谱(灭火图);
- 灭火图的可视化展示与下钻分析;
- 基于知识图谱的精准故障定位;
- 基于自然语言的智能巡检。
原则/方法论沉淀
在 Ops Agent 的设计与实践中,我们沉淀出以下原则:
- 数据治理没有捷径:Garbage in, garbage out。数据和知识是最重要的资产。
- Tool 与 Skill 边界:Tool 需通用、单一职责、可组合;Skill 面向任务,包含流程经验,确定性逻辑务必用脚本实现。
- Agent-Friendly 设计:语义清晰、参数复杂度低、非必要不加载。
- 安全边界取舍:Ops Agent 不是通用 Agent,必须在灵活性和安全边界中做取舍。
- 假设-验证机制:无法验证的根因就是“不确定”,克制过度归因的冲动。
总结与行动建议
从 AIOps 到 Agent Ops,大模型正在重新定义可观测性软件。知识图谱是 Agent 理解业务的基座,合理的工程架构(算法前置、多 Agent 协同、Workflow 结合)是落地的关键。未来的可观测性智能中枢,必将具备反馈闭环和自主学习能力。
行动建议:
- 停止让大模型直接处理原始可观测性数据,引入传统算法前置降噪。
- 摒弃大模型直接生成知识图谱的幻想,转向“模型生规则,规则生数据”的稳健路径。
- 在 Agent 架构中强制引入“假设-验证”机制,为运维结论兜底。
- 明确区分确定性与不确定性任务,不要让 Agent 做 Workflow 该做的事。
开放问题与延伸方向
- 在“模型生成规则,规则生成数据”的自动建图机制中,如何量化评估生成规则的准确率与召回率,以防止错误规则污染全局知识图谱?(需建立量化卡点,防止底层规则错误导致全局偏移。)
- 传统算法前置处理以减少 Token 消耗,在具体工程实现中,如何界定算法前置过滤与大模型深度分析的边界,是否存在可量化的截断标准?(寻找效率与深度的平衡点,需结合具体数据类型探索阈值。)
- 面对极其庞杂且快速迭代的微服务系统,持续维护知识图谱(灭火图)的实时性与准确性,是否会让运维团队陷入新的“人肉兜底”困境?(警惕从“人肉排障”滑向“人肉建图/修图”的隐性成本。)
- MainAgent+SubAgent 共享上下文的架构下,如果某个 SubAgent 产生了强烈的幻觉或错误归因,是否会通过共享上下文污染 MainAgent 的后续决策,如何做上下文隔离?(多 Agent 架构需设计上下文清洗与隔离机制,防止局部错误全局扩散。)
- “模型生成规则”这一环节本身依赖大模型,若基础模型对特定业务逻辑理解存在盲区,生成的规则是否会导致知识图谱出现难以察觉的“结构性缺失”?(规则生成环节需引入人工抽检或对抗验证,弥补模型盲区。)
- 采用 Graph as Validator 的假设-验证机制,是否从根本上解决了大模型在运维场景下“过度归因”的顽疾,从而大幅提升了运维人员对 Agent 结论的信任度?(假设-验证机制是提升可信度的关键,将概率推断转化为确定性的图谱遍历。)
- 将确定性逻辑封装为 Workflow as Skill,既保留了确定性又赋予了 Agent 灵活性,这种架构设计是否为 Ops Agent 在生产环境的安全落地提供了最务实的平衡点?(这是当前工程约束下的最优解,兼顾了安全与智能。)
- 在 Workflow 与 Agent 的协同中,能否将运维专家的排障直觉抽象为一种启发式的 Prompt 模板,让 Agent 在长尾不确定性问题中也能快速收敛到高概率路径?(启发式模板可作为 Agent 推理的“捷径”,加速长尾场景收敛。)
- Agent 的三层记忆系统与持续进化的知识图谱之间,能否建立双向反馈机制,即记忆系统中的成功排障经验自动转化为图谱的新节点或新边?(记忆反哺图谱是实现自主学习、打破静态建图瓶颈的核心方向。)
- 从 AIOps 到 Agent Ops 的演进中,当前落地的最大瓶颈究竟是知识图谱的构建维护成本,还是大模型本身在复杂推理与长上下文处理上的能力天花板?(当前阶段图谱成本更为可控,模型能力天花板仍是突破复杂推理的长期瓶颈。)