← 最新论文
🤖 AI

RAG4Tickets: AI-Powered Ticket Resolution via Retrieval-Augmented Generation on JIRA and GitHub Data

该论文提出了 RAG4Tickets,这是一个通过检索增强生成技术整合 JIRA 和 GitHub 数据,以提供具备上下文感知且基于证据的工单解决建议的 AI 驱动框架,显著提升了软件开发工作流中的准确性和效率。

原作者: Mohammad Baqar

发布于 2026-02-06
📖 1 分钟阅读☕ 轻松阅读

原作者: Mohammad Baqar

原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明

想象一下你是一名正在处理大型项目的软件开发人员。每当出现一个 Bug 时,它就像是一个新的侦探案件。在过去,解决这些案件就像是在数百万根针组成的草堆中寻找一根针。你必须翻阅旧的 JIRA 工单(错误报告)、阅读成千上万条开发者评论,并扫描 GitHub 的代码变更,以查看是否有人已经解决了类似的问题。通常,即使问题完全相同,由于描述问题的措辞不同,你会错过解决方案,从而白白浪费数小时去重复造轮子。

这篇名为 “RAG4Tickets” 的论文提出了一种智能助手,它就像是一个超级强大的图书管理员和侦探的结合体,旨在解决这个问题。以下是它的工作原理,分为几个简单的步骤:

1. 问题所在:“翻译丢失”的图书馆

把你们公司的 Bug 和修复历史想象成一个巨大且混乱的图书馆。

  • 问题: 一名开发者写道:“点击按钮时应用卡死了。”而两年前的另一名开发者写道:“用户交互期间屏幕锁定了。”尽管它们指的是同一个问题,但简单的关键词搜索可能会错过这种联系。
  • 结果: 开发者把太多的时间花在了搜索上,而不是修复上。

2. 解决方案: “智能图书管理员” (RAG)

作者构建了一个名为 RAG4Tickets 的系统。你可以把这个系统想象成一位训练有素的图书管理员,她不仅能读懂书名,还能理解书背后的含义。

  • 第一步:阅读与理解(嵌入/Embeddings):
    该系统会阅读每一份旧的错误报告、评论和代码变更(Pull Request)。它使用一种名为 Sentence-Transformers 的特殊工具将这些文字转化为“意义地图”(向量)。它不仅仅是寻找“崩溃(crash)”这个词,而是理解“冻结(freeze)”、“锁定(lock up)”和“挂起(hang)”都指向同一个概念。

  • 第二步:超快速搜索(FAISS):
    一旦系统拥有了这些意义地图,它就会将它们存储在一个名为 FAISS 的大规模、超快速索引中。想象一下这是一张神奇的地图,相似的想法在物理位置上紧挨在一起。当新的 Bug 出现时,系统能瞬间找到前 5 或前 10 个最相似的历史案例,即使它们的措辞完全不同。

  • 第三步:侦探报告(LLM 生成):
    系统不仅仅是向你展示旧的工单;它更像是一个总结案件的侦探。它提取找到的旧解决方案,并将它们输入给一个 大语言模型(AI)。随后,AI 会编写一份清晰的、分步骤的指南,指导如何修复新的 Bug,并准确引用是哪些旧的代码变更解决了该问题。这就像是一位资深工程师在你耳边低语:“嘿,我们去年正好修过这个,这是当时用的代码。”

3. 现实生活中的运作方式

论文在一次 Web 应用程序的大型升级(从 React 18 迁移到 React 19)过程中测试了这个系统。

  • 场景: 开发者们正为一个由新软件版本引起的特定类型“UI 冻结”问题而苦恼。
  • 结果: 系统找到了与类似冻结现象相关的旧工单和代码变更。它告诉开发者:“这看起来像是我们之前遇到的问题。这是我们当时使用的修复代码。”
  • 成果:
    • 速度: 修复 Bug 所需的时间从 18.5 小时降至 10.2 小时(提升了 45%)。
    • 信任度: 大约 68% 的情况下,开发者直接接受了 AI 的建议,或者仅进行了微小的修改。
    • 准确性: 该系统寻找正确历史案例的能力非常出色(82% 的情况下,正确答案出现在前 5 个结果中)。

4. 为什么这很重要

论文强调,这不仅仅是为了更快,更是为了避免凭空捏造

  • 无幻觉: 因为 AI 被迫在编写解决方案之前必须查阅真实的、历史性的证据(旧工单和代码),所以它不太可能编造虚假的修复方案。这就像一个学生在回答测试题之前,必须先引用教科书的内容。
  • 知识复用: 它防止了公司丢失其“机构记忆”。当一名资深开发者离职时,他们的知识不会随之流失;它被锁定在系统中供所有人使用。

5. 局限性(代价)

作者诚实地指出了面临的挑战:

  • 旧的错误: 如果旧的工单包含了错误的建议,系统可能会重复这些错误。
  • 变化的语言: 如果软件技术发生剧变(例如 React 的新版本),旧的“意义地图”可能会变得不再准确,需要对系统进行重新训练。
  • 成本: 运行此系统需要强大的计算机,以便能够即时搜索数百万条记录。

总结

简而言之,RAG4Tickets 是一个连接过去问题与当前解决方案的工具。它将混乱的 Bug 报告堆变成了一个智能、可搜索的知识库,帮助开发者更快地解决问题,减少挫败感,并确信他们是在基于经过验证的、真实的修复方案进行开发。

您所在领域的论文太多了?

获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。

试用 Digest →