目录
目录README.md

AutoOS-Healer智愈内核🧠⚙️

介绍

智愈内核 (Kernel Healer) 是一个为“中国研究生操作系统开源创新大赛”设计的AIOps项目。我们创造性地将大型语言模型(LLM)与操作系统运维(O&M)深度融合,构建了一个具备感知-诊断-决策-执行-验证全闭环能力的自主智能代理,旨在解决现代复杂系统中故障排查的挑战。

🌟 核心亮点 (Core Features)

  • 🤖 协作式多智能体架构 (Collaborative Multi-Agent Architecture)

    • 首创“虚拟专家团队”模型(主管、架构师、开发者、验证者),将复杂任务解构为清晰、可控的协作流,通过迭代式反馈闭环,实现超越单一模型的鲁棒决策。
  • 🧠 RAG 知识增强推理 (RAG-Powered Knowledge-Augmented Reasoning)

    • 构建包含官方手册、最佳实践和历史故障案例的本地向量知识库,利用检索增强生成(RAG)技术,为LLM提供“事实依据”,有效规避“模型幻觉”,确保修复方案的可靠性、可溯源性和可解释性。
  • ⚡️ 高效两阶段智能分诊 (Efficient Two-Stage Intelligent Triage)

    • 设计“轻量化高速初筛 + LLM深度语义诊断”的两阶段过滤模型。利用关键词与正则表达式过滤超过99%的无害日志,将宝贵的AI算力精准用于“高嫌疑”日志的深度分析,实现了成本、性能与精度的黄金平衡。
  • 🔄 全闭环自愈流程 (End-to-End Self-Healing Loop)

    • 实现了从实时日志感知、智能故障识别、多智能体协作生成修复方案,到最终执行与验证的端到端自动化流程,将运维人员从重复、繁琐的故障处理中解放出来。
  • 🔬 科学的量化评估 (Scientific & Quantifiable Evaluation)

    • 不仅在权威数据集(LogHub)上测试了故障识别的准确性,更引入了“大模型即评委 (LLM-as-a-Judge)”的前沿方法学,对修复方案的质量进行多维度、可复现的量化评估。

🏗️ 系统架构 (Architecture)

本项目的核心是基于 LangGraph 构建的协作式多智能体系统。工作流在四个关键角色的智能体之间循环迭代,直至问题解决。

AutoOS-Healer architecture
  • Supervisor (主管): 系统的总调度,负责接收任务、判断流程是否继续或终止。
  • Architect (架构师): 团队的“规划大脑”,负责将任务分解为高层次计划。
  • Developer (开发者): 团队的“实干工匠”,结合RAG检索的知识,生成具体的修复代码。
  • Validator (验证者): 团队的“质检专家”,负责执行和验证方案的有效性,并提供关键反馈。

🚀 快速开始 (Getting Started)

1. 环境准备 (Prerequisites)

  • Python 3.10+
  • 一个支持OpenAI API格式的大模型服务商API Key (例如 DeepSeek, 阿里云通义千问等)

2. 安装 (Installation)

  1. 克隆本代码库:

    git clone https://gitee.com/wzx312/auto-os-healer.git
    cd auto-os-healer
  2. 创建并激活Python虚拟环境:

    python -m venv venv
    source venv/bin/activate  # On Windows, use `venv\Scripts\activate`
  3. 安装依赖:

    pip install -r requirements.txt
  4. 配置API密钥:

    • 我们强烈建议使用环境变量来管理您的API密钥。
    • 复制 .env.example 文件为 .env
      cp .env.example .env
    • 编辑 .env 文件,填入您的API密钥:
      # 例如,使用阿里云通义千问的API Key
      DASHSCOPE_API_KEY="sk-your-new-api-key"
  5. 下载向量数据库的嵌入模型

    • 我们默认情况下使用的是nomic-embed-text:latest
    • 如果您使用的是 Ollama,请确保已安装并运行 Ollama 服务。
    • 如果您使用的是其他模型,请在 auto-os-healer/multi_agent/multi_agent.py 文件中设置 Embeddings_model 属性。

      🛠️ 如何使用 (Usage)

启动主程序,系统将开始实时监控指定的系统日志。当检测到潜在故障时,将自动触发修复流程,你将在log路径下看到实时采集的日志以及分类过后的日志列表,针对于错误日志,我们会将修复方案反馈在/auto-os-healer/solution_realtime这个文件夹下面,并且每个异常日志的处理建议会单独形成一个markdown文件。

    python main.py

auto-os-healer/example_solution.md文件就是一个处理过后生成的一个样例markdown文件。

✅ 运行测试 (Testing)

我们提供了一套科学的评估脚本来验证系统的核心能力。

故障日志识别测试

auto-os-healer/logs/test目录下,有原始的LogHub的日志记录,运行log_classifier_pipeline_test_linux.py文件,修改里面的日志路径,便可对指定路径的日志进行故障识别。

我们针对Linux_2k.log进行了再次的二分类标注,因此针对上述分类过后的结果,运行auto-os-healer/logs/data/verify.py文件,便可得出分类的准确性。

修复方案生成质量评估

我们使用 LLM-as-a-Judge 的方法来评估生成方案的质量。脚本位于 llm_judge/ 目录下。

  1. 确保您已在 .env 文件中配置了裁判模型(如DeepSeek)的API Key。
  2. 你需要提前准备好带评测的json文件,类似于如下的格式:
    {
        "problem":"xxxxxxx",
        "generated_solution":"xxxxxxxxx",
        "golden_solution":"xxxxxxxxxxxx"
    }
  3. 运行评估脚本:
    python llm_judge/eval.py
    脚本将使用预设的案例,调用裁判模型对方案进行打分,并输出结构化的JSON评估结果。
    {
        "scores": {
            "logical_clarity": 9,
            "factual_accuracy": 10,
            "actionability": 8,
            "root_cause_insight": 7
        },
        "justifications": {
            "logical_clarity": "The solution follows a standard 'check-install-verify' workflow, making it logically clear.",
            "factual_accuracy": "The use of `dnf install` and the package name `flash-plugin` is entirely correct for a CentOS system.",
            "actionability": "It provides executable commands but lacks a final step to verify if the Flash plugin is enabled in the browser.",
            "root_cause_insight": "It solves the installation issue but doesn't elaborate on the root cause of why the plugin was missing initially."
        },
        "final_score": 8.5,
        "summary": "A high-quality and viable solution, though slightly lacking in verifiability and deep analysis."
    }
    我们的脚本提供了一个例子,你需要替换为自己实际的样例。

📈 未来展望 (Roadmap)

  • 👁️ 从“文本”到“多模态”的感知进化:

    • 集成视觉语言模型 (VLM, e.g., LLaVA),使系统能够“看懂”用户上传的GUI崩溃截图、系统蓝屏照片等视觉信息,构建更全面的故障画像。
  • 🌱 从“被动学习”到“主动进化”的能力跃升:

    • 探索“行动后学习 (Learning from Action)”机制。让系统自动复盘每一次修复任务的完整决策链与结果,用于微调模型或优化知识库,实现智能体的螺旋式自我成长。

❤️ 致谢 (Acknowledgements)

  • 感谢中国研究生操作系统开源创新大赛组委会提供的宝贵平台。
  • 本项目在开发过程中,受到了以下优秀开源项目和社区的启发和支持,在此致以崇高的敬意:
关于
302.3 MB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

©Copyright 2023 CCF 开源发展委员会
Powered by Trustie& IntelliDE 京ICP备13000930号