西风 发自 凹非寺
量子位 | 公众号 QbitAI
AI大模型“化学家”登Nature!
能够自制阿司匹林、对乙酰氨基酚、布洛芬的那种。
就连复杂的钯催化交叉偶联反应,也能完成!
要知道,2010年诺贝尔化学奖获得者就因为对该反应的研究才获奖的,这类反应可以高效地构建碳-碳键,生成很多以往很难甚至无法合成的物质。
而现在名为Coscientist,基于GPT-4等大模型的AI系统,可快速准确地自主完成检索信息、规划及设计实验、编写程序、远程操控自动化系统做实验、分析数据的一整套流程。
一位主页标注自己是化学家的网友表示:
栓Q,你们创造了更多失业的博士生。
那么Coscientist究竟是如何做到的?
“化学家”Coscientist长啥样?
Coscientist由卡内基梅隆大学的研究团队开发。
前不久谷歌DeepMind造的AI“化学家”也登上了Nature,号称一口气能预测220万种新材料。
而现在Coscientist则是实打实能自主完成后续所有实验流程。
能够完成如此复杂的实验任务,关键在于多模块交互的系统架构。
Coscientist内含五大模块:Planner、Web searcher、Code execution、Docs searcher、Automation。
其中Planner模块是整个系统的智能中枢,它基于GPT-4打造,负责根据用户的输入,调用和协调其它模块来规划和推进整个实验。
Planner可以发出GOOGLE、PYTHON、DOCUMENTATION和EXPERIMENT四个指令。
GOOGLE指令负责使用Web searcher模块在互联网中检索关于实验的信息,Web searcher本身也是一个大模型。
PYTHON指令控制Code execution模块,Code execution是一个隔离的Docker容器,提供一个独立的Python执行环境,可以完成实验相关的计算工作。
DOCUMENTATION指令控制Docs searcher模块,也是用来为中枢提供信息。
但与Web searcher不同,Docs searcher是用于文本检索和文档理解。它可以定位实验设备的技术文档,比如机械手编程手册,通过文本挖掘提供给Planner模块必要的实验参数及操作细节。
而后,Automation模块负责自动化连接实际实验设备的API,将Planner制定的实验方案转换为设备控制代码,下发执行,完成实验操作。
比如,在“云实验室”中远程操控移液机器人开展实验。
如此一来,假设要求Coscientist合成某种物质时,Coscientist会在互联网上搜索合成路线;然后设计所需反应的实验方案;下一步编写代码来指导移液机器人;最后运行代码,使机器人执行其预定的任务。
值得一提是,Coscientist还可以进行迭代优化,从反应结果中学习,并建议修改方案来改进实验。
总的来说Coscientist能完成六大任务:
-
根据公开数据规划已知化合物的合成;
-
有效搜索和浏览大量的硬件文档;
-
使用文档中的信息在云实验室执行高级命令;
-
用低级指令精确控制液体处理仪器;
-
处理需要同时使用多个硬件模块并整合不同数据源的复杂科学任务;
-
通过分析之前收集的实验数据解决优化问题。
成功完成钯催化交叉偶联反应
Coscientist表现究竟如何?研究人员对多个模块进行了测试。
其中,为测试Coscientist设计化学反应流程的能力,研究团队要求Coscientist通过检索学习分别生成阿司匹林、对乙酰氨基酚和布洛芬等药物分子。
并且还设置了GPT-3.5、GPT-4、Claude 1.3、Falcon-40B-Instruct不同模型的比较。
基于GPT-4的Web Searcher显著改进了合成计划,在对乙酰氨基酚、阿司匹林、硝基苯胺和酚酞的所有试验中都达到了最高分(上图b,数字“5”代表生成了一个非常详细且化学上准确的操作步骤)。
重点还要看Coscientist的一体化能力。为此,研究人员还设计了催化交叉偶联实验。
研究人员设置了可利用的实验设备,包含:OpenTrons OT-2液体处理机器人;数个微板,包括放置反应物的源微板和放置在加热震荡模块上的目标微板。
源板上准备了实验所需的试剂,包括己烷基碘、溴苯、氯苯、苯基乙炔、苯硼酸等原料,还有催化剂、碱和溶剂。
Coscientist的目标是利用这些试剂成功设计和运行两种常见钯催化偶联反应Suzuki反应和Sonogashira反应。
Coscientist首先通过Web searcher模块搜索确定Suzuki反应和Sonogashira反应的最佳反应条件,如温度、当量比等参数。
然后合理选择了不同的试剂,例如Suzuki反应时优先选择溴苯而不是氯苯。同时Coscientist提供选择的化学依据,如反应活性。
接着,Coscientist调用Code execution模块,根据各反应物的浓度和当量计量计算所需体积。
生成控制机器人进行移液操作的Python代码,指定源孔板与目标孔板之间的转移体积。
但中间出现个小插曲,最初使用的加热震荡模块的方法名错误。
之后Coscientist迅速查阅了Opentrons设备文档纠正了方法名,重新生成正确代码,成功完成了Suzuki反应和Sonogashira反应。
最终,产物通过GC-MS技术验证,检测到目标产物的特征质谱信号,证实目标产物生成。
论文链接:https://www.nature.com/articles/s41586-023-06792-0
— 完 —
点这里👇关注我,记得标星哦~
一键三连「分享」、「点赞」和「在看」
科技前沿进展日日相见 ~