snowhiteohno/CrashBerry
GitHub: snowhiteohno/CrashBerry
CrashBerry 是一个微服务事件响应仿真环境,用于训练和评估 LLM Agent 的故障诊断与恢复能力。
Stars: 0 | Forks: 0
# 有状态 AI Agent:事件响应环境
一个兼容 OpenEnv 的环境,用于在多步骤、动态的事件响应流程中评估和训练大语言模型 (LLM) agent。
## 目录
- [概述](#overview)
- [交付成果](#deliverables)
- [架构](#architecture)
- [项目结构](#project-structure)
- [评估基线](#evaluation-baselines)
- [训练](#training)
- [证据](#evidence)
## 交付成果
- **HF Space (Demo):** [u7k4rs6/Metafinal](https://huggingface.co/spaces/u7k4rs6/Metafinal)
- **训练 Notebook:** [Google Colab](https://colab.research.google.com/drive/16Rq5AQ3yvXiKh_3Chs1fx41YK7isWNJp?usp=sharing)
- **报告:** [博客 / 幻灯片链接] (请更新此处!)
## 概述
当前的 LLM 在需要持久记忆、时间健康追踪和延迟动作反馈的环境中表现不佳。该模拟器创建了一个由 5 个微服务组成的生产环境:
* api-gateway
* auth-service
* database
* cache
* worker
agent 接收连续的快照状态,其中包含带有缩放噪声和尾随指标(±15% 的高斯偏移),必须通过日志检查、正确诊断和顺序修复行为(`scale_up`、`restart_service`、`rollback_deploy`),成功将故障模式追踪回其 originating service。
## 架构
- **环境规则框架**:通过 OpenEnv 强制实施直接映射到 `score_range: [0, 1]` 的严格边界。基于优先级矩阵计算 Rewards,确保对 agent 的“幸运推理”进行扣分。
- **模拟网格**:通过严格预定义的邻接矩阵传播健康偏差,模拟跨服务依赖延迟。
- **工具沙箱**:授予 agent 代表针对拓扑映射真实状态限制的终端读写操作的工具(`check_logs`、`diagnose`、`enable_circuit_breaker`)。
## 项目结构
| 文件/目录 | 描述 |
|-----------|-------------|
| `env/` | 核心 RL OpenEnv wrapper 和底层隐藏状态模拟器。 |
| `tools/` | 用于提取噪声日志和解析修复操作的工具层。 |
| `agent/` | 映射评估约束的启发式和随机基线。 |
| `eval/` | 性能验证测试套件。 |
| `train.py` | RL 入口点,通过 Unsloth 逻辑边界高效映射 Qwen 1.5B 的限制,使其能够适配 Google Colab T4。 |
## 评估基线
```
python eval/evaluate.py
```
- **随机 agent 限制**:在 20 个 horizon step 中评估其成功率 `<5%`,界定了原始统计概率。
- **启发式限制**:缩放评估界定了单轨假设(例如反复执行“映射最高 CPU”的行为),捕获了约 `22%` 的平均成功率。
## 训练
要在云环境(例如免费层级 Colab T4)上开始训练,请使用扩展了 GRPO/PPO 映射的 `train.py`:
- `Qwen 1.5-1.8b`(在 `train.py` 中预分配了 4-bit LoRA 配置)
- 扩展了标准的 `FastLanguageModel` 加载。
## 证据
### 训练进度 (Reward Curve)

### 优化稳定性 (Loss Curve)

标签:AIOps, DLL 劫持, Gradio, 大语言模型, 强化学习, 故障诊断, 逆向工具