科学研究的漫长历程中,受限于时间和资源,许多高质量的研究想法未能得到充分探索。如果能够减少探索想法的限制,研究人员将能够同时研究多个概念,增加科学发现的效率。
所以,为了帮助科研人员节省时间快速撰写论文,AMD和约翰·霍普金斯大学的研究人员联合开源了一个专用于科研的AI Agent——Agent Laboratory。
你只需要提供概念想法,Agent Laboratory就能自动检索arXiv的文献、完成实验设计、内容生成和实验报告,一站式自动化写论文。
开源地址:https://github.com/SamuelSchmidgall/AgentLaboratory
Agent Laboratory的架构主要是基于大模型,并由文献综述、实验设计和报告撰写三大智能体联合执行。
在文献综述阶段,PhD Student智能体扮演着关键角色。它利用arXiv API来检索与研究主题相关的论文,并执行三个主要动作:摘要、全文和添加论文。PhD Student智能体通过多次查询,评估每篇论文的相关性,并提炼出全面的综述。
这个阶段的目标是为后续的研究阶段提供坚实的理论基础和参考文献,确保研究方向的正确性和创新性。PhD Student智能体通过SUMMARY SEARCH QUERY命令,根据研究主题生成一个搜索查询,以找到语义上相似的论文摘要。
然后,它会仔细筛选这些摘要,挑选出最相关的论文进行深入阅读。对于每篇精选的论文,PhD Student智能体会使用FULL_TEXT命令获取论文的全文,以便更全面地理解研究内容。在阅读和分析了多篇论文后,PhD Student智能体会使用ADD_PAPER命令,将认为对研究项目有帮助的论文添加到官方综述中。
接着,PhD Student智能体会不断调整搜索查询,以找到更多相关的文献,直到构建出一个全面的文献综述,为后续的研究阶段提供坚实的理论支持。
ML Engineer智能体主要负责实验设计,使用mle-solver工具来执行实验。mle-solver是一个高度自动化的模块,它支持EDIT和REPLACE两种代码生成模式。
在命令执行环节,mle-solver首先会从维护的顶级程序集中采样一个初始程序,然后通过REPLACE和EDIT操作,不断调整代码以更好地符合实验目标。EDIT操作允许mle-solver在指定的行范围内替换代码,而REPLACE操作则会生成一个全新的Python文件。
在代码执行环节,新的程序会被送入编译器进行编译,检查是否存在运行时错误。如果代码成功编译,它会获得一个分数,并且如果这个分数高于已有的程序,它将更新顶级程序列表。如果代码编译失败,mle-solver会尝试修复代码,最多尝试三次,然后返回错误并继续尝试新的代码替换。
程序评分环节使用一个奖励函数来评估代码的有效性,这个奖励函数会根据研究计划、生成的代码和观察到的输出来确定程序与初始目标的契合度。性能稳定环节则通过自反思机制,不断提升代码的可靠性和稳定性,确保代码修改的稳定性和一致性。
报告撰写阶段由PhD Student和Professor智能体共同完成。这一阶段使用paper-solver工具,它负责将研究成果整合成一份符合学术标准的报告。paper-solver的工作流程开始于初始报告框架的生成,它通过REPLACE命令创建一个新的论文框架,并通过LaTeX编译器验证格式。这个框架包括了论文的所有必要部分,如摘要、引言、背景、相关工作、方法、实验设置、结果和讨论等。
在报告编辑环节,使用EDIT命令进行精细修改,支持行级别的编辑操作,并通过奖励函数评估论文质量。论文评审环节则使用LLM Agent模拟NeurIPS流程,从多个维度对论文进行评估,确保论文的质量和创新性。
最后,通过PhD Student的决策,判断是否需要对报告进行修订,必要时会回溯到前期环节进行修改,直到报告达到满意的标准。目前,该项目超3000颗星非常火爆。