清华大学开源Alchemy框架:AI自主编写代码,科研性能超越前沿算法

清华开源Alchemy框架,让AI摆脱工程负担,专注于算法创新。实验表明,AI在Alchemy中性能甚至超越前沿算法。

原文标题:AI自己写代码做科研还跑赢了前沿算法?清华团队开源Alchemy框架

原文作者:机器之心

冷月清谈:

清华大学人工智能学院团队开源了名为Alchemy的自动化AI科研框架。该框架旨在解决当前AI科研中科学发现与工程实现紧密耦合的问题,让AI Scientist从繁琐的工程细节中解放出来,专注于算法创新。Alchemy通过标准化实验接口、可扩展的任务体系和异构算力统一执行等特性,降低了AI科研的门槛。实验表明,基于Alchemy框架,AI可以在无人工干预的情况下,通过持续实验和迭代优化,其性能甚至能够超越前沿算法。Alchemy已在GitHub上开源,涵盖推荐系统、时间序列和图学习等多个领域。

怜星夜思:

1、Alchemy框架如何平衡标准化和灵活性,以适应不同AI科研项目的需求?
2、Alchemy框架中,AI Scientist自动总结的领域知识,对后续的算法迭代和科研方向选择有什么影响?
3、除了推荐系统、时间序列和图学习之外,Alchemy框架未来还可以扩展到哪些AI研究领域?会面临哪些挑战?

原文内容



本项目由清华大学人工智能学院李佳助理教授课题组完成,课题组主要研究方向是 AI Agent、智能化软件工程等,其中,李乐晖为项目的主要贡献者,主导了框架设计与核心开发;蔡立一参与了部分关键工作。项目已在 GitHub 开源。


AI 驱动的自动化科研正从概念走向真实系统。近期受到广泛关注的 FARS,以及 Karpathy 开源的 autoresearch,都在不同程度上展示了 AI Scientist 自动进行 AI 领域研究的可行性。


但真正限制自动化 AI 科研规模扩展的,不仅仅是「能否提出一个新想法」,同时「能否把这个想法稳定、高效、持续地跑起来」也同样重要。在现有系统中,科学发现过程与工程实现仍然高度耦合:AI Scientist 在进行算法创新之外,还不得不处理数据预处理、训练流程、资源调度、并发执行、评测协议等大量工程细节。结果是,宝贵的上下文窗口、推理预算与硬件资源,被浪费在非科研核心环节上,从而抑制了自动化科研真正应有的规模与效率。


在这一背景下,清华大学人工智能学院团队提出了 Alchemy——一个面向自动化 AI 科研的标准化研究环境。它像一座为 AI Scientist 预先搭建好的「炼丹炉」,将复杂异构的 AI 工程统一接口,使 AI Scientist 可以从工程负担中抽身,专注于算法创新本身。


  • 代码开源 https://github.com/TsinghuaISE/Alchemy



研究背景与问题


随着大语言模型在代码生成、实验组织与科研文献理解等方面持续进步,LLM 驱动的自动化科研正在快速从概念验证走向真实系统。尤其在 AI for AI 方向,AI-Researcher、FARS、autoresearch 等一系列工作已经表明:AI Scientist 不仅能够生成算法原型,还能够结合实验反馈进行初步的迭代优化。


然而,前沿 AI 研究作为一项长周期、高度依赖资源的复杂科学活动,不仅依赖算法创新,还依赖数据处理、训练流程、评测协议、资源调度、并发执行等工程环节,同样决定了科研探索能否真正推进。这也带来了当前自动化 AI 科研系统的一个核心矛盾:AI Scientist 已经开始具备「提出方法」的能力,却仍缺乏「高效开展大规模实验」的基础设施支撑。在现有系统中,工程实现与科学发现往往仍然紧密耦合,AI Scientist 不得不在生成算法之外,同时处理大量实验细节。结果是,大量上下文预算、推理能力与计算资源被消耗在非核心科研环节中,限制了自动化科研的规模与效率。


如何释放 AI Scientist 的科研能力?近期爆火的工作(如 autoresearch)尝试优化自动化科研系统的工程组件,但仍存在明显局限:


  • 领域受限局限于特定领域与单一任务,难以持续集成多领域、跨任务的大规模自动化科研场景。


  • 基础设施薄弱异构算力调度、高并发控制等关键工程需求被普遍忽略,实验规模的扩展受到严重制约。


针对以上挑战,清华大学人工智能学院团队提出了 Alchemy——一个面向自动化 AI 科研的标准化研究环境。Alchemy 预先搭建好科研实验所需的全部工程基础设施,AI Scientist 只需投入算法实现(一个 .py 文件)及其超参数(一个 .yaml 文件),即可驱动完整的科研实验。同时,工程基础设施与任务管线的分层设计,使其天然支持新领域、新任务的持续集成。下面具体介绍 Alchemy 的关键特性。


框架特性


Alchemy 的设计围绕一个核心问题:如何让 AI Scientist 完全摆脱工程负担,专注于算法创新?为此,Alchemy 进行了以下针对性设计:


  • 标准化实验接口Alchemy 为所有 AI 研究任务提供统一的实验接口,屏蔽不同任务之间的工程差异,和任务内如数据加载、评测、资源调度等工程细节。AI Scientist 只需提交算法实现(一个 .py 文件)和超参数配置(一个 .yaml 文件),即可运行完整实验。


  • 可持续扩展的任务体系框架与任务解耦,新领域或新任务只需新增实验管线即可接入。目前已覆盖推荐系统、时间序列与图学习 3 个领域,16 个任务。


  • 异构算力统一执行不同用户的算力环境差异巨大,从单机 GPU 到多节点 HPC 集群不等。Alchemy 通过可插拔执行器统一调度方式,使 AI Scientist 无需关心实验具体运行在哪台机器或哪张 GPU 上。


  • 面向大规模实验的并发控制Alchemy 支持多任务、多算法、多超参数和多数据集的高并发实验,并提供实时进度跟踪与结果可视化。系统还可根据实验反馈自动淘汰表现不佳的算法,将算力集中到更具潜力的探索方向。


开箱即用,自动研究


以多模态推荐任务为例,下面展示 Alchemy 的易用性与自动化科研能力。


用户首先可以在名为 domain_knowledge 的 Markdown 文档中,为 AI Scientist 提供任务相关的领域知识,提升其科学发现的能力。但是不用担心,即使用户没有手动撰写任何领域知识,Alchemy 依然可以正常运行。在大规模实验推进过程中,AI Scientist 会结合实验反馈,逐步归纳并沉淀出完成该任务所需的关键领域知识。


下面展示的,便是 Alchemy 在连续生成 100 个推荐算法之后自动总结出的领域知识。可以看到,这些总结并非停留在表层描述,而是已经呈现出相当有价值的研究洞察。



除了领域知识之外,用户还需要为 Alchemy 提供一个 Seed Baseline,作为 AI Scientist 进行科学假设生成与方法演化的起点。这个 Seed Baseline 可以是人类研究者提出的前沿算法。在本例中,我们选择的是 AAAI 2025 的工作《Mind Individual Information! Principal Graph Learning for Multimedia Recommendation》(PGL)。为了进一步降低使用门槛,Alchemy 已经为现有支持的所有任务预先配置了 Seed Baseline,并且每个任务至少提供 3 个可选 Seed Baseline,方便用户开箱即用。



在此基础上,AI Scientist 会围绕当前算法不断开展自动化科研循环:提出科学假设,生成新算法实现,并依据实验反馈持续迭代优化。


如下图所示,AI Scientist 首先提出了这样一个科研假设:在主图传播过程中引入模态感知的边权重重加权机制,使交互图中的消息传播强度能够根据物品间的模态相似性动态调整,从而在协同信号传播过程中显式融入模态语义信息。


随后,AI Scientist 基于这一假设生成了算法实现。起初,这份代码尚不能直接运行:由于对超参数加载的数据格式理解不准确,其生成的 .yaml 文件出现问题。Alchemy 则会将具体、可执行的报错信息反馈给 AI Scientist,使其进行多轮迭代,修正实现细节。系统最终生成了可正常运行的代码实现。



接下来,在长达一天的持续实验过程中,Alchemy 中的 AI Scientist 在完全无人类干预的条件下,依托实验反馈不断调整实现、修正设计并优化性能。令人惊喜的是,最终得到的模型成功超越了初始的 Seed Baseline——PGL。



进一步分析可以发现,这一改进的关键在于:AI Scientist 为 PGL 引入了模态感知的用户—物品边重加权机制。其核心思想是,不改变 PGL 的训练机制,而是在推理时加上一个轻量的 Modality Aware Graph Adaption 机制,让那些与用户历史偏好在模态空间中更一致的边,将被赋予更强的传播权重,从而更充分地放大模态语义信息与 User-Item 协同信息之间的关联作用。




© THE END 

转载请联系本公众号获得授权

投稿或寻求报道:liyazhou@jiqizhixin.com

我猜想 Alchemy 可能会用到一些知识图谱的技术。通过将实验数据和结果构建成知识图谱,可以更加方便地提取和总结领域知识。例如,可以通过分析图谱中的节点和边的关系,来发现不同概念之间的关联,从而获得更深层次的理解。

另外,还可以引入人工干预机制,例如让领域专家对自动总结的领域知识进行审核和修正,以提高准确性。

扩展到其他领域,关键在于构建相应的实验管线。Alchemy框架的设计是模块化的,新领域只需要新增实验管线即可接入。这意味着需要针对生物医药、材料科学等领域的特点,开发相应的数据处理、模型训练、评估指标等模块。这需要相关领域的专家参与,共同完善Alchemy框架,才能让AI在这些领域发挥作用。

我觉得光靠AI自己审查还不够,毕竟都是自己写的,可能思维方式都一样,很难发现问题。应该引入人类开发者进行代码审查,就像我们平时的代码评审一样。当然,这需要付出一定的人力成本,但可以有效地保证代码质量。

与其说是扩展到其他领域,不如说是要让AI学会“跨领域学习”。不同领域的研究方法和理论虽然有差异,但也有很多共通之处。如果AI能够从一个领域学习到的知识和经验迁移到另一个领域,就能大大提高科研效率。这需要我们在框架设计上有所考虑,例如引入领域知识图谱,辅助AI进行跨领域推理。

NLP 和 CV 领域的任务更加多样化,数据处理也更复杂。Alchemy 框架要扩展到这些领域,可能需要引入更多的数据预处理模块和评测指标。感觉工作量会很大啊!不过,如果能把框架做得足够通用,就能大大加速科研效率。

替代人类科研人员?我觉得还早。Alchemy更像是一个强大的助手,可以帮助人类科研人员更快地验证想法、发现规律。但真正的创新,往往需要灵感、直觉和批判性思维,这些都是AI目前难以具备的。所以,我对此持谨慎乐观态度。

我觉得可以把Alchemy想象成一个乐高积木系统。核心框架就像是那些基础的积木块,提供了标准化的接口和功能。而不同的AI科研项目就像是用这些积木块搭建出来的不同模型。你可以用同样的积木块搭建汽车、房子或者机器人,关键在于你如何组合这些积木块,也就是如何设计实验管线。

这种方式既保证了框架的通用性,又允许用户根据自己的需求进行定制。所以,Alchemy 可以在保证标准化的同时,又具有足够的灵活性来满足不同AI科研项目的需求。

我觉得这里的领域知识,有点像人类科研中的文献综述。只不过,AI Scientist 的文献综述不是通过阅读大量的论文完成的,而是通过大量的实验和数据分析自动生成的。这些领域知识可以帮助 AI Scientist 了解当前研究的进展和存在的问题,从而更好地制定研究计划。

更重要的是,这些领域知识可以帮助 AI Scientist 发现新的研究机会。例如,如果 AI 发现某个领域的研究还比较薄弱,那么它可能会尝试在这个领域进行探索。这就像是探险家在寻找新的大陆一样。

从更广阔的视角来看,我认为任何需要大量实验验证和迭代优化的 AI 研究领域,都可以考虑使用 Alchemy 框架。例如,在自动驾驶领域,AI 可以自动进行仿真测试,并根据测试结果不断改进控制策略。在机器人领域,AI 可以自动进行物理环境的探索,并根据探索结果不断优化运动规划。

关键在于,要将这些领域的研究问题转化为可以被 Alchemy 框架处理的标准化的实验流程。这需要对研究问题进行深入的理解和抽象,并设计合适的实验管线。

这个问题很有前瞻性!我觉得Alchemy框架未来可以扩展到很多AI研究领域,例如:

* 自然语言处理 (NLP):可以用于自动进行文本生成、机器翻译等方面的研究。
* 计算机视觉 (CV):可以用于自动进行图像识别、目标检测等方面的研究。
* 强化学习 (RL):可以用于自动进行智能体的训练和优化。

当然,扩展到这些领域也会面临一些挑战,例如:

* 数据的多样性:不同领域的数据具有不同的特点,需要设计不同的数据预处理方法。
* 模型的复杂性:不同领域的模型具有不同的结构,需要设计不同的模型架构。
* 评估的难度:不同领域的评估指标不同,需要设计不同的评估方法。

总的来说,Alchemy框架的扩展潜力很大,但需要解决一些技术上的挑战。

这个问题问的很好!Alchemy框架通过分层设计来平衡标准化和灵活性。框架本身提供标准化的实验接口和通用的工程基础设施,而任务相关的逻辑则通过可插拔的实验管线来实现。这样,AI Scientist 可以专注于算法本身,而不需要关心底层的工程细节。同时,通过自定义实验管线,可以灵活地适应不同AI科研项目的特定需求。

更具体地说,标准化体现在数据加载、模型训练和评估等环节都遵循统一的接口规范,而灵活性则体现在用户可以根据自己的需要定制这些环节。例如,用户可以自定义数据预处理的方式,或者使用不同的评估指标。这种分层设计使得 Alchemy 既易于使用,又具有很强的扩展性。

这个问题很有深度!AI Scientist自动总结的领域知识,可以看作是AI对科研过程的“反思”。这些知识能够帮助AI更好地理解当前任务的本质,从而更有效地提出新的科学假设和改进算法。例如,如果AI发现某个模态的信息对于推荐任务非常重要,那么它可能会尝试引入更复杂的模态融合方法。

此外,这些领域知识还可以用于指导科研方向的选择。如果AI发现某个方向的研究已经比较成熟,那么它可能会尝试探索其他更有潜力的方向。这有助于避免重复研究,提高科研效率。