返回博客

GSoC 2025 中期 - 用于 Jenkins 故障诊断的 AI 代理

Chirag Gupta
2025 年 8 月 3 日

您好,Jenkins 社区!

我是 Chirag Gupta,这是我 Google Summer of Code 2025 项目的期中更新:**“基于 ci.jenkins.io 数据的实际 Jenkins 用法领域的特定 LLM”**。该项目的愿景是通过人工智能加速 Jenkins 中通常复杂的构建失败诊断过程。

有关详细概述,请参阅项目页面

我们刚刚通过期中评估,因此我想分享一下项目的进展更新。

转变:从微调到灵活的代理系统

最重要的发展之一是从最初微调一个或多个 LLM 的目标,转变为构建一个更具前瞻性和通用性的代理架构。

为什么改变?

  • 灵活性和用户选择:单个微调模型会锁定用户。我们新的代理框架允许用户插入任何有能力的 LLM,从 OpenAI 和 Claude 等云服务到自托管模型。

  • 面向未来:为 Jenkins 定制微调模型仍然是未来的目标,但它现在可以作为代理中的众多选项之一集成,而不是成为整个系统。

  • 可扩展性:代理的能力现在由其工具定义,而不仅仅是其训练数据。这使得随着时间的推移添加新功能,例如与实时 Jenkins 实例交互,变得更加容易。

期中成就:一个功能原型

我们已经成功开发了一个功能齐全的原型,建立了这个新的核心架构。该原型证明了基于代理的诊断模型的可行性。

  • 交互式 CLI:我们使用 TyperRich 构建了一个用户友好的命令行界面。它通过诊断过程指导用户,处理文件 I/O,并以易于阅读的格式呈现最终报告。

  • 多代理管道:核心逻辑运行在“责任链”模型上

    1. 一个**路由器代理**首先对故障类型进行分类。

    2. 然后一个**专家代理**使用一套工具进行深入调查。

    3. 一个可选的**批评代理**启用自我纠正循环,审查诊断质量并强制重试,如果报告有缺陷。

  • 高级 RAG 工具:我们使用 LightRAG 集成了复杂的检索增强生成 (RAG) 管道。此工具为代理提供外部知识,并提供混合堆栈,包括用于嵌入的本地 sentence-transformers 和用于高质量重排的 Cohere

  • 健壮的日志记录和沙盒: CLI 具有双重日志记录系统,用于应用程序调试和详细的 AI 交互审计。为了安全和可重现性,每次诊断都在一个隔离的、带时间戳的目录中运行,确保用户的原始工作区文件永远不会被触碰。

下一步是什么?通往目标架构之路

下一阶段将侧重于将原型发展为我们在目标架构中设想的强大、集成式系统。

  • 扩展 LLM 后端支持:我们将构建供应商无关的 LLM 适配器,以支持更广泛的后端。这将使用户能够根据成本、性能或隐私需求自由选择首选提供商,包括直接集成 **OpenAI、Anthropic (Claude) 和 Groq**。

  • RAG 用于 Jenkins 知识:从官方 Jenkins 文档、维基和社区讨论中构建一个全面的向量存储库,为代理提供深入的领域知识,并使用不同的嵌入模型来满足用户的需求。

  • 全面的评估框架:使用“LLM 作为法官”等技术创建一个框架,以严格测试诊断质量并为社区提供有价值的见解。

致谢

衷心感谢我的导师 Kris Stern、Shivay Lamba、Bruno Verachten、Harsh Pratap Singh 和 Vutukuri Sreenivas。他们的专业知识、指导和及时的审查对于完善项目的技术路线图和应对挑战非常有帮助。

我还要感谢组织管理员 Kris Stern、Bruno Verachten 和 Alyssa Tong,他们一直关注并提供帮助;您的善良和支持对我意义重大。

对项目的第二阶段充满期待!

关于作者

Chirag Gupta

Chirag 是 BITS Pilani – Goa 校区的一名大四学生,主修数学以及电子与仪表工程。他将人工智能和自然语言处理视为自己的创新厨房,而不仅仅是学习领域。他将数据视为食材,将算法视为食谱,不断试验以创造出有影响力的解决方案。

这份热情促使他被选为 Jenkins 的 Google Summer of Code (GSoC) 2025 贡献者,在那里他正在致力于基于 ci.jenkins.io 数据的实际 Jenkins 用法领域的特定 LLM 项目。

除了他的技术追求,您还可以在真实的厨房里找到 Chirag,他在那里尝试新的烹饪菜肴,或者在他的数字厨房里,完善更智能的人工智能配方。

© . This site is unofficial and not affiliated with The Linux Foundation.