✨ 要点🔬 技术摘要
想象一下,你正试图建造一座房子,但蓝图是用一种你几乎无法理解的语言编写的,而你所需的工具则散落在规模如城市般庞大的图书馆里。这正是科学家们在处理量子计算 时面临的日常现实。在这个领域,物理规则变得非常诡异,且控制这些机器所需的软件极其复杂。为了让一切运转起来,科学家们依赖于“中间件”——一种作为人类想法与量子硬件之间翻译层的软件。但随着这些软件库的增长,它们变得庞大、混乱且难以维护。于是,人工智能 (特别是大语言模型 ,即 LLMs )登场了。把它们想象成超级聪明、博学多才的机器人,它们能够编写代码并回答问题。然而,这里有一个陷阱:如果你只是要求一个通用的机器人去解决一个专门的量子问题,它往往会开始胡编乱造(这种现象被称为“幻觉”),因为它并没有那个特定库的、最新的专用手册。
本文介绍了 QiboAgent ,这是一种构建此类 AI 助手的新方法,旨在让它们不仅仅是在猜测,而是真正了解自己在说什么。研究人员测试了两种主要技巧。第一种是检索增强生成(RAG) ,这就像是给机器人一张借书证,并告诉它在回答之前先去查阅手册中的确切页面。第二种是智能体工作流(Agentic Workflow) ,它将机器人从一个被动的问答者转变为一个主动的执行者,它可以打开文件、运行测试、修复错误,甚至可以自主重写部分代码库。核心问题在于:我们能否使用足够小、可以在普通计算机上运行的开源工具,构建出一个强大的专业化编程助手,而不需要耗费数十亿美元的超级计算机?
研究人员发现答案是肯定的,但前提是必须使用正确的工具组合。他们发现,通过将轻量级的开源 AI 模型与一个不断检查官方代码文档的系统(RAG)相结合,他们可以实现 90.2% 的正确代码生成准确率 。这比仅使用 AI 单独运作,甚至比使用没有“借书证”系统的庞大、昂贵的商业模型都要有显著提升。事实上,他们的方法大幅减少了 AI 编造虚假代码功能(幻觉)的情况。
但这个机器人并不仅限于回答问题。团队展示了他们的**智能体(Agentic)**系统如何扮演初级软件工程师的角色。它成功修复了用户报告的真实漏洞,为新功能编写了文档,甚至完成了一个宏大的项目:将软件的核心部分从 Python 重写为 Rust (一种更快、更现代的编程语言)。AI 不仅仅是编写代码;它还会运行测试,观察失败之处,阅读错误信息,并不断修正自己的错误,直到代码能够正常运行。虽然最终结果并非完美(它遗漏了一些人类水平的优化,例如通过缓存数据来提高速度),但它证明了一个小型开源 AI 可以处理通常需要人类团队才能完成的复杂、多步骤工程任务。
论文指出,这种“混合”方法——即将聪明但精简的 AI 与严格的事实检查系统以及对代码的操作能力相结合——是维护科学软件的未来。这意味着研究人员可以保持数据的私密性,并在本地运行这些强大的工具,而不必依赖大型的专有公司。然而,作者也谨慎地指出,这并不是一个取代人类程序员的魔杖。AI 是一个强大的助手,可以承担繁重和重复性的工作,但仍需要人类来审查工作、修复细微的效率问题并引导整体方向。这项研究表明,只要设置得当,我们可以为量子软件打造一个既聪明又可靠的“副驾驶”。
技术总结:QiboAgent —— 开源量子计算助手从业者指南
1. 问题陈述
随着代码库规模的扩大,科学软件生态系统(尤其是量子计算领域)的维护与演进面临着重大挑战。通用大语言模型(LLMs)虽然在代码生成方面表现出色,但在应用于 Qibo 中间件等专业领域时,存在固有的局限性。仅依赖参数化记忆会导致模型频繁出现幻觉 (捏造不存在的模块或函数),并且缺乏处理复杂、状态相关工程任务所需的推理深度。此外,专有模型通常需要庞大的计算资源,且缺乏在研究环境中进行安全、本地化部署所需的透明度或定制化能力。
2. 方法论
作者引入了 QiboAgent ,这是一个旨在指导开发专业化编码助手的参考实现。该系统集成了两种互补的范式,以克服静态 LLM 的局限性:
A. 检索增强生成 (RAG)
为了解决事实准确性问题并减少幻觉,QiboAgent 构建了一个基于 Qibo 代码库(源代码、文档和 Notebook)的 RAG 流水线。作者评估了两种检索策略:
语义检索: 利用固定大小的分块技术,并结合最大边际相关性 (MMR) 重排序机制,以最大限度地减少信息冗余并确保上下文检索的多样性。
混合检索: 将稠密向量嵌入(用于语义理解)与 Okapi BM25 关键词匹配(用于精确的技术标记检索)相结合。该方法使用了一种感知结构的摄取流水线,能够尊重代码语法(例如,将类定义与其方法聚合在一起),并通过归一化线性组合融合评分。这对于处理特定领域术语(例如特定的哈密顿量标识符)至关重要,因为纯语义搜索可能会遗漏这些内容。
B. 智能体工作流 (Agentic Workflows)
对于需要状态管理和多步推理的复杂工程任务,系统从被动生成器转变为基于 ReAct 框架 的自主智能体 。
单智能体模式: 用于仓库维护(例如,解决 GitHub issue)。智能体抓取问题追踪器,导航文件系统,并迭代地提出代码补丁。
顺序多智能体模式: 用于大规模重构(例如,将 Python 包移植到 Rust)。工作流被分解为专门的智能体(Rust 架构师、绑定生成器、兼容层、验证智能体),它们在一个编译器驱动的反馈循环 中运行。该循环允许智能体执行 Shell 命令(如 cargo build, pytest),解析错误日志,并自主应用修正补丁,直到编译和测试通过。
C. 模型选择
该框架优先考虑开源、轻量级模型 (参数量在 20B 到 120B 之间),以实现本地化部署。
嵌入模型: sentence-transformers/all-MiniLM-L6-v2。
生成模型: 采用分层策略:使用轻量级模型(如 gpt-oss:20b, qwen3-coder:30b)进行问答和文档编写;使用更大规模的模型(如 gpt-oss:120b)进行需要强大工具调用能力的复杂智能体推理。
基础设施: 系统通过 Ollama 进行推理,并使用 LangChain 进行编排,在本地运行。
3. 基准测试任务与评估
作者针对四项不同任务建立了一套全面的评估协议:
量子计算问答: 一个包含 50 个问题的数据集,涵盖配置、原语、高级模拟和调试。性能衡量标准包括功能正确性 (生成的代码在基准真相下的执行情况)、幻觉得分 (追踪运行时错误,如 AttributeError)以及风格质量 (Pylint 分数)。
自动化文档: 为新代码生成符合 Sphinx 标准的 docstrings,确保正确的交叉引用和使用示例。
新功能拉取请求 (Pull Request): 自主解决 GitHub issue(例如涉及张量展开逻辑的 Issue #1710),无需人工干预。
重构与变基 (Rebasing): 一项“绿地”开发任务,旨在创建 Qibo-core Rust 模块,包括通过 pyO3 实现的 Python 绑定、构建配置以及单元测试。
4. 关键结果
准确性与幻觉减少: 混合检索 策略的表现始终优于“无 RAG 基准”和“纯语义检索”。在使用 qwen3-coder:30b 模型时,系统达到了 90.2% 的峰值准确率。至关重要的是,与专有基准模型(如 Google 的 Gemini-2.5-flash)相比,RAG 方法显著降低了幻觉率,后者在仅使用语义检索时改进微乎其微,这表明其过度依赖预训练记忆而非检索到的上下文。
智能体能力: 智能体成功解决了复杂的 GitHub issue(Issue #1710),并为 Qibo-core Rust 模块生成了一个功能完备的证明概念 (PoC)。虽然智能体生成的代码有时缺乏人类编写补丁中的特定架构优化(例如缓存置换索引),但它产出了数学上正确且功能完整的解决方案,仅需少量微调。
编译器驱动反馈: 多智能体系统成功利用反馈循环解决了 Rust 移植过程中的编译错误和类型不匹配问题,展示了在无需人工干预的情况下进行迭代和自我修正的能力。
效率: 轻量级开源模型(最高达 30B 参数)实现了高准确率,验证了在无需大规模专有架构的情况下,进行安全、低成本本地化部署的可行性。
5. 重要性与主张
本文将 QiboAgent 定位为而非仅仅是人类开发者的替代品,而是作为构建领域感知型 AI 助手的从业者指南 和参考架构 。
领域感知优于模型规模: 本研究表明,对于专业化科学软件,结构化知识库和智能体工具 比原始模型规模或预训练暴露度更为关键。混合检索策略有效地弥合了通用 LLM 与专业化需求之间的差距。
本地部署的可行性: 通过使用开源模型实现高性能,作者声称研究机构可以在实现复杂维护任务自动化的同时,保持数据隐私并独立于专有平台。
动态适应性: 与存在过拟合风险且需要昂贵重训的领域特定微调不同,基于 RAG 的方法提供了一种动态、最新的上下文 ,使模型能够适应不断演进的代码库而无需重新训练。
未来范围: 作者建议,这些架构可以从软件维护扩展到自动化物理任务,例如通过 Qibocal 和 Qibolab 进行量子硬件校准,从而将开源 AI 定位为完整量子计算栈中不可或缺的组成部分。
该框架(包括源代码、基准数据集和部署说明)已在 https://github.com/qiboteam/qiboagent 公开。
每周获取最佳 computer science 论文。
受到斯坦福、剑桥和法国科学院研究人员的信赖。
请查收邮箱确认订阅。
出了点问题,再试一次?
无垃圾邮件,随时退订。