在生产微服务故障中识别根本原因,需要对大规模的多模态遥测数据进行推理,这包括指标、日志和追踪。然而,这一问题对经典方法和基于大语言模型(LLM)的方法都表现出抵抗力。OpenRCA 数据集就是一个很好的例子,它大规模、多模态且缺乏详细的领域知识,所有现有方法在其上的准确率都持续偏低。
研究表明,经典的因果发现方法和现有的基于 LLM 的多代理系统在此基准上无法可靠识别根本原因。为此,本文提出了一种结构化多代理根因分析(RCA)管道,显著优于现有的 LLM 和经典基线,支持领域知识和无知识操作模式。
为了诊断故障的起源,我们引入了一个反向推理代理,该代理在获得正确答案的情况下,识别出提取的异常中支持该答案的信号,并判断第一阶段是否可以访问这些信号,将每个故障分类为推理差距(存在证据但未使用)或数据模糊(确实缺乏证据)。
分析结果显示,大多数故障中所需的证据是存在的:瓶颈并不是数据访问,而是代理正确推理的能力。
此外,我们还引入了一种自动化规则挖掘管道,系统性地从反向推理报告中提取区分规则,减少对手动知识整理的依赖。在所有配置中,模型推理能力和领域知识是主要约束:更强的模型往往嵌入更多领域专业知识,而显式知识注入在一定程度上弥补了这一差距。
即便在证据提取完美的情况下,推理性能仍然受到实际限制:仅靠支架工程和更好的数据管道无法弥补这一差距;进展需要在模型层面上进行改进。
博主点评: 该研究清晰地指出了在复杂系统故障诊断中,推理能力的重要性以及与领域知识的关系。通过引入反向推理代理和自动化规则挖掘,展示了提升根因分析性能的新思路,值得在实际应用中深入探索。