TAMO: 集成多模态观测数据的工具辅助LLM智能体细粒度根因分析
AIOPS论文学习
本文提出TAMO框架,通过双分支扩散模型融合日志、指标与追踪等多模态数据,并利用频域自注意力构建因果图进行根因定位。
目录
TAMO: 集成多模态观测数据的工具辅助LLM智能体细粒度根因分析
原文标题: TAMO: Fine-Grained Root Cause Analysis via Tool-Assisted LLM Agent for Cloud-Native Systems Integrating Multi-Modality Observation Data
来源: arXiv 2504.20462 (2025)
关键词: 多模态数据融合、扩散模型、因果图、LLM Agent
摘要
在云原生系统中,根因分析(RCA)面临三大挑战:
- LLM有限的上下文窗口限制了处理大规模观测数据的能力
- LLM的文本输入模态难以处理时间序列指标
- 现有方法缺乏对追踪数据的有效集成
本文提出TAMO(Tool-Assisted LLM Agent with Multi-modality Observation),通过:
- 双分支协作扩散模型有效提取和集成多模态数据
- 因果图显式建模实体间复杂依赖关系
- RCA专家Agent整合工具输出提供综合故障分析
TAMO同时支持故障类型分类和根因实体定位两个任务。
1. 引言
1.1 现有方法的类别
| 类别 | 方法示例 | 局限性 |
|---|---|---|
| 传统RCA | 统计相关、规则检测 | 难以适应动态环境 |
| 单模态深度学习 | DeepLog, GDN, GTA | 无法利用跨模态信息 |
| 多模态RCA | MULAN, Eadro | 忽略模态间一致性 |
| LLM-based RCA | RCAcopilot, Agent Work | 上下文限制、缺乏追踪数据 |
1.2 TAMO的创新
| 方面 | TAMO | 其他方法 |
|---|---|---|
| 日志 | ✓ | ✓ |
| 指标 | ✓ | ✓ |
| 追踪 | ✓ | 部分 |
| 故障分类 | ✓ | 部分 |
| 根因定位 | ✓ | 部分 |
2. 系统架构
2.1 整体框架
┌──────────────────────────────────────────────────────────────┐
│ TAMO Framework │
├──────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ Tool T1: Multi-modality Alignment Tool │ │
│ │ (多模态对齐工具 - 双分支协作扩散模型) │ │
│ │ │ │
│ │ Logs + Traces → 时间序列特征融合 │ │
│ └─────────────────────────────────────────────────────────┘ │
│ ↓ │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ Tool T2: Root Cause Localization Tool │ │
│ │ (根因定位工具 - 频域自注意力因果图) │ │
│ │ │ │
│ │ 因果关系建模 → Top-K 根因实体 │ │
│ └─────────────────────────────────────────────────────────┘ │
│ ↓ │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ Tool T3: Fault Types Classification Tool │ │
│ │ (故障类型分类工具 - 图卷积网络) │ │
│ │ │ │
│ │ 调用链拓扑 + 因果关系 → 故障类型 │ │
│ └─────────────────────────────────────────────────────────┘ │
│ ↓ │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ Agent A: RCA Expert Agent │ │
│ │ (RCA专家Agent - LLM) │ │
│ │ │ │
│ │ 工具输出 + 系统上下文 → 综合分析和解决方案 │ │
│ └─────────────────────────────────────────────────────────┘ │
│ │
└──────────────────────────────────────────────────────────────┘
2.2 工具职责
| 工具 | 输入 | 输出 | 核心技术 |
|---|---|---|---|
| T1 | 日志、追踪、指标 | 融合时间序列 | 扩散模型 |
| T2 | 融合时间序列 | 根因实体排名 | 频域自注意力 |
| T3 | 因果图、调用链 | 故障类型 | 图卷积网络 |
| A | T1-T3输出、系统上下文 | 分析报告 | LLM |
3. 核心技术
3.1 多模态对齐工具(T1)- 双分支扩散模型
核心思想: 使用扩散模型将日志和追踪数据融合到时间序列中
前向扩散过程:
- 原始数据 x₀ ∈ R^(E×m×l)
- E: 实体数量
- m: 通道数
- l: 时间序列长度
扩散公式:
q(xₜ | xₜ₋₁) = N(xₜ; √αₜxₜ₋₁, (1-αₜ)I)
双分支设计:
- 日志分支: 使用日志模式作为条件
- 时间分支: 使用时间特征作为条件
- 两个分支协作引导去噪过程
去噪过程:
p_θ(xₜ₋₁ | xₜ, ε) = N(xₜ₋₁; μ_θ(xₜ, t), σₜ²I)
3.2 根因定位工具(T2)- 频域自注意力
关键洞察: 周期性模式和频率成分对故障传播至关重要
步骤:
- FFT变换: 将时间序列转换到频域
- 频域自注意力: 捕获实体间因果关系
- 因果图构建: 基于注意力权重构建因果图
- Top-K选择: 输出最可能的根因实体
注意力计算:
Attention(Q, K, V) = softmax(QK^T / √d_k)V
其中Q、K、V来自频域特征
3.3 故障类型分类工具(T3)- 图卷积网络
输入:
- T2输出的因果图
- 服务调用链拓扑
网络结构:
输入特征 → Multi-Head Attention → Graph Convolution → 故障类型
损失函数: 加权二元交叉熵
L_wBCE = -1/E Σᵢ [λw · yᵢlog(ŷᵢ) + (1-yᵢ)log(1-ŷᵢ)]
3.4 RCA专家Agent(A)
输入:
- T2的根因定位结果(如”Currency服务,置信度97.96%”)
- T3的故障分类结果(如”网络丢包,置信度91%”)
- 系统上下文信息
输出:
- 故障分析
- 影响评估
- 优先级评估
- 修复建议
提示词模板:
你是一个专业的SRE,根据以下信息进行故障分析:
根因定位结果: {T2_output}
故障类型: {T3_output}
系统上下文: {context}
请提供:
1. 故障分析
2. 影响评估
3. 优先级评估
4. 修复建议
4. 实验
4.1 数据集
使用三个标准微服务系统:
- Online Boutique: Google的电商示例
- Sock Shop: Weaveworks的演示系统
- Train-Ticket: 复旦大学的火车票系统
4.2 评估指标
| 任务 | 指标 |
|---|---|
| 根因定位 | Acc@1, Acc@3, Acc@5 |
| 故障分类 | 准确率、召回率、F1 |
4.3 主要结果
根因定位(Acc@1):
| 方法 | Online Boutique | Sock Shop | Train-Ticket |
|---|---|---|---|
| GDN | 42.3% | 38.7% | 35.2% |
| Eadro | 51.2% | 47.8% | 43.5% |
| TAMO | 68.5% | 63.2% | 58.7% |
故障分类(F1 Score):
| 方法 | Online Boutique | Sock Shop | Train-Ticket |
|---|---|---|---|
| RCAcopilot | 0.72 | 0.68 | 0.65 |
| TAMO | 0.85 | 0.81 | 0.78 |
4.4 消融研究
| 配置 | Acc@1下降 |
|---|---|
| 无扩散模型 | -12.3% |
| 无频域注意力 | -8.7% |
| 无追踪数据 | -6.5% |
| 无日志数据 | -5.2% |
5. 与相关工作对比
5.1 与RCAcopilot对比
| 维度 | TAMO | RCAcopilot |
|---|---|---|
| 追踪数据 | ✓ | × |
| 根因定位 | 实体级 | 无 |
| 多模态融合 | 扩散模型 | 规则映射 |
5.2 与Agent Work对比
| 维度 | TAMO | Agent Work |
|---|---|---|
| 故障分类 | ✓ | × |
| 追踪数据 | ✓ | × |
| 定位粒度 | 实体级 | 服务级 |
6. 结论
TAMO通过创新的多模态融合技术和专业化工具设计,成功解决了LLM在云原生RCA中的局限性:
- 双分支扩散模型有效融合日志、指标、追踪数据
- 频域自注意力准确捕获因果关系
- 专家Agent提供可解释的综合分析
实验证明TAMO在根因定位和故障分类两个任务上都显著优于现有方法。
附录:关键公式
扩散前向过程
q(x₁:T | x₀) = Πₜ q(xₜ | xₜ₋₁)
q(xₜ | xₜ₋₁) = N(xₜ; √αₜxₜ₋₁, (1-αₜ)I)
扩散逆向过程
p_θ(xₜ₋₁ | xₜ) = N(xₜ₋₁; μ_θ(xₜ, t), σₜ²I)
频域自注意力
F = FFT(X)
Attention = softmax(Q_F K_F^T / √d)V_F