
化学领域的 LLM 革命!ChemCrow,一个利用外部工具的集成引擎
三个要点
✔️ ChemCrow 简介和目的:ChemCrow 是一个新引擎,专门用于化学任务中的大型语言模型。它可以与专业工具相结合,扩大应用范围,减少获取化学知识的障碍,并为专家和非专业人员提供化学自动化工具。
✔️ 实施情况和成果:ChemCrow 已经展示了自动完成药物设计和材料合成等特定化学任务的能力,并取得了多项成果,包括驱虫剂、有机催化剂和新型染料的筛选与合成。
✔️ 挑战与未来展望:尽管 ChemCrow有一些局限性,取决于所选工具的数量和质量,但随着语言工具和图像处理工具的集成,其功能在未来可以得到极大扩展。开源版本的发布有望使其在广泛的研究和开发中得到应用。
ChemCrow: Augmenting large-language models with chemistry tools
written by Andres M Bran, Sam Cox, Oliver Schilter, Carlo Baldassari, Andrew D White, Philippe Schwaller
(Submitted on 11 Apr 2023 (v1), last revised 2 Oct 2023 (this version, v5))
Subjects: Chemical Physics (physics.chem-ph); Machine Learning (stat.ML)
code:![]()
![]()
本文所使用的图片要么来自论文、介绍性幻灯片,要么是参考这些图片制作的。
概述
在过去几年里,大规模语言模型通过实现自然语言处理任务的自动化,为各行各业带来了革命性的变化。这方面最好的例子是 2021 年出现的 GitHub Copilot 和后来的 StarCoder,它们提供代码自动补全功能,极大地提高了开发人员的工作效率。虽然这些进步主要基于适用于许多自然语言处理任务的 Transformer 架构,但大规模语言模型的局限性也显而易见,例如在处理简单的算术和化学问题时举步维艰。造成这些挑战的原因是,这些模型主要基于预测下一个单词的设计。
解决这一问题的方法之一是利用外部工具和特定任务插件扩展大规模语言模型。这些专业工具可以提高大规模语言模型的准确性,并扩展其在特定领域的适用性。在化学领域,已经部署了人工智能系统来解决特定问题,如反应预测和分子生成,但化学自动化仍然是一个具有挑战性的领域。这是由于实验的性质、数据的缺乏和工具范围的有限。
整合这些工具的尝试往往是在独立的环境中进行的,这给实验化学家在这些工具的互操作性和整合方面带来了巨大挑战。为了应对这一挑战,本文提出了一种新的化学引擎--ChemCrow,它可以简化化学任务。ChemCrow 利用药物设计和材料合成等任务中专业工具的强大功能,通过向大规模语言模型(包括 GPT-4 )发出特定指令来工作。该系统可以通过向大型语言模型(包括 GPT-4)发出特定指令来运行。该系统能够根据用户的提示使用适当的工具,了解任务的当前状态并计划下一步。
这种方法将任务相关工具与链式思维推理(CoT)相结合,帮助大规模语言模型进行更复杂的推理,并得出最终解决方案。界面,减少了传播和获取化学知识的障碍。
ChemCrow 及其性能
ChemCrow 可根据用户的简单输入(如 "计划并执行驱虫剂的合成 "或 "寻找并合成催化剂以加速 Diels-Alder 反应")找到相应的分子,然后计划合成并在 IBM Research 的专用云连接平台 RoboRXN 上执行。目前。
为此,ChemCrow 依次查询 LitSearch/WebSearch、Name2SMILES、ReactionPlanner 和 ReactionExecute 等工具,结合信息解决问题。与合成规划和执行相关的大规模语言建模代理可与物理世界进行交互。
标准化的合成程序是成功的关键。然而,RoboRXN 平台并不总能直接执行预测的程序。典型的问题包括 "溶剂不足 "和 "纯化操作无效"。解决这些问题需要人工干预,在尝试合成之前纠正无效操作。
ChemCrow 可自主查询平台上的合成验证数据,并对合成程序进行迭代调整(如增加溶剂量),直至完全有效。 ActionCleaner 功能包含在 ReactionExecute 工具中。无需人工干预。该示例展示了 ChemCrow 自主调整并成功执行标准化合成程序的能力,减少了实验室安全问题,并使自身适应机器人平台的特定条件。
在化学领域,人机交互可以产生特别有益的结果。在这一领域,决策往往基于实验结果,而实验的执行本身就具有挑战性,甚至超出了最先进的自主实验室的能力范围。在这里,我们展示了这种互动如何促成新型发色团的发现。
在本示例中,ChemCrow 被要求训练一个机器学习模型,以帮助筛选候选发色团库。如下图所示,ChemCrow 能够读取、清理和处理数据,训练和评估随机森林模型,最终根据给定的目标吸收最大波长 369 纳米和模型提供建议。
随后对所提出的分子进行了合成和分析,证实发现了一种新的发色团。这种发色团几乎具有理想的特性(测量到的最大吸收波长为 336 纳米)。
此外,机器学习在化学领域的应用也在不断扩大,并开发出了许多数据集和基准。然而,这些基准往往不能准确评估语言模型解决化学特定挑战的能力。为了填补这一空白,我们正与化学专家合作开发一个新的任务集,以衡量化学问题的解决能力。
在这一新方法中,ChemCrow 和 GPT-4(后者是为模仿化学专业知识而设置的)都经过了测试,并通过专家和机器学习模型(EvaluatorGPT)评估对结果进行了验证。基于解决方案的质量,并对每个解决方案提供详细反馈。
ChemCrow 运行的充分性在很大程度上取决于工具和推理过程的质量。例如,底层合成引擎的发展会增强合成计划的能力,但不恰当的推理和输入会使最好的工具也失去作用。有鉴于此,化学专家会根据化学准确性、推理质量和任务完成情况对每个模型进行评估。
结果如下图所示。
在需要进行化学推理的复杂任务中,ChemCrow 的表现优于不使用该工具的 GPT-4。另一方面,虽然 GPT-4 在流畅性和表面完整性方面给人留下了良好印象,但它的信息准确性却有所欠缺。特别是在较简单的任务中,GPT-4 在提供基于训练数据的答案方面可能更有优势,但 ChemCrow 始终能为各种目标和难度的任务提供出色的解决方案,受到化学专业人士的青睐。
此外,值得注意的是人类评价和评估者GPT评价之间的差异。专家更喜欢并高度评价 ChemCrow 的答案,而 EvaluatorGPT 则根据 GPT-4 答案的流畅性和表面完整性,平均将 GPT-4 评为更优秀的模型。这一结果表明,当语言模型对提示缺乏理解时,它们很难提供可靠的评分,而且在事实性起重要作用的评估中,它们也不适合作为机器学习模型能力的基准。
这项研究强调了在化学领域应用机器学习需要新的评估方法,并为准确评估语言模型在解决化学问题方面的能力提供了可能性。
风险策略
大规模语言模型驱动的化学引擎(如 ChemCrow)的实施和使用有可能将不同专家设计的工具结合起来,为非专业研究人员提供支持。这些自动化平台需要经过人类操作员和化学专家的严格审查,但必须确保负责任地开发和使用大规模语言模型代理。
全球安全标准规定,只有事先接受过培训和其他相关信息的化学家才能使用化学实验室。然而,根据大型语言模型驱动的化学引擎的建议进行实验,可能会导致事故和危险情况的发生。因此,如下图所示,ChemCrow 遵循一套硬编码准则,检查所查询的分子是否为已知受控化学品或其他安全信息。如果是,则停止运行。如果不是,则继续运行,模型会重新使用这些信息,以提供更完整的回复,包括建议物质的安全问题以及如何安全处理这些物质的有理有据的建议。
它还提供安全指导,包括安全信息检查,并通过整合安全检查和专家审查系统,确保各项建议符合安全标准和协议。
大规模语言模型驱动的化学引擎对化学知识的了解不足,有可能导致错误的决策和有问题的实验结果。为缓解这一问题,整合专家设计的工具并改进训练数据的质量和范围,可以提高引擎对化学概念的理解。
此外,还鼓励用户批判性地评估所提供的信息,并将其与已有文献和专家意见进行比较。这进一步降低了依赖不完整推理的风险。
我们还涉及知识产权问题:解决知识产权问题对于负责任地开发和使用 ChemCrow 等生成式人工智能模型至关重要。需要针对合成的化学结构和材料、其预期用途以及潜在的专利信息侵权问题制定明确的指导方针和政策。与法律专家和行业利益相关者合作有助于解决这些问题,并采取适当措施保护知识产权。
解决 ChemCrow 可能存在的不足,确保安全、负责任地应用是其成功的关键。整合专家工具、改进培训数据和实施有效的缓解策略,可以最大限度地提高对化工行业的积极影响,同时最大限度地降低风险。随着技术的发展,开发人员、用户和行业利益相关者之间的合作和警惕有助于应对新出现的风险和挑战,促进大规模语言模型驱动化学引擎领域负责任的创新和进步。
外部工具
ChemCrow 使用 OpenAI 的 GPT-4 作为大规模语言模型。此外,还通过 LangChain 集成了外部工具。本文中使用的外部工具可根据需要和可用性轻松扩展,分为 "通用工具"、"分子工具 "和 "化学反应工具"。
首先,"网络搜索 "工具旨在从互联网上收集最新的相关信息。这是通过使用 SerpAPI 执行搜索查询并从谷歌搜索结果的第一页提取信息来实现的。通过这一过程,语言模型可以获得涵盖所有科学主题的最新信息。
其次,"LitSearch "工具专门用于从科学文献中提取信息。该工具可高效搜索科学论文等文档,并为问题提供准确可靠的答案。这是通过使用 OpenAI 的嵌入技术和 FAISS 向量数据库来搜索文档并生成相关段落的摘要来实现的。
Python REPL "工具也是 Langchain 的标准工具,它提供了直接在语言模型上编写和执行 Python 代码的能力。这使得从数值计算到数据分析和训练人工智能模型等各种任务的执行变得非常容易。
最后,"人类 "工具允许语言模型直接与人类互动并接收指令,从而实现更动态的问题解决。这样,人类的直觉和判断力就可以融入到解决问题的过程中,尤其是在遇到难题或不确定性较高的情况下。
他们还利用各种工具,在分子水平上进行分析和操作。这些工具可以解决研究人员面临的一系列挑战,从识别分子到评估市场价格和分析结构相似性。
Name2SMILES "工具可根据分子名称或 CAS 号码快速检索分子的 SMILES(简化分子输入行输入系统)表示法。这样就可以轻松参考各种分子,包括咖啡因和阿托伐他汀等常见和国际理论化学和应用化学联合会(IUPAC)名称,进行分子分析和操作。数据库搜索主要使用 chem-space,必要时辅以 PubChem 和 OPSIN。
Name2CAS "工具使用各种分子表示法(通用名称、IUPAC 名称、SMILES 字符串)识别化学文摘社(CAS)编号,利用 PubChem 数据库将分子转换为唯一的 CAS 编号,使研究人员能够轻松获取相关信息。使研究人员能够轻松获取相关信息。
SMILES2Price "工具将分子的SMILES表示法作为输入,评估分子的可负担性和市场最低价格。该过程使用 molbloom 在 ZINC20 数据库中检查分子的可负担性,并通过 chem-space API 提供市场价格信息。研究人员可以利用这一工具从经济角度选择最合适的分子。
分子相似性 "工具使用基于 ECFP2 分子指纹的 Tanimoto 相似性来评估两个分子之间的结构相似性,该相似性可量化分子之间的相似性,是探索药物发现和化学研究中潜在类似物的重要指标。
ModifyMol "工具旨在探索分子周围的化学空间并进行结构改造。在这一过程中,根据逆向和正向合成的原理,利用 50 种药物化学反应来扩大合成的可能性。特别是,SynSpace 软件包被用于从分子的 SMILES 表征中通过精细修饰推导出修饰后的分子。
PatentCheck "工具可快速检查分子是否已注册专利:它使用一个名为 molbloom87 的 C 库,通过 Bloom 过滤器评估分子的专利状态。该工具为避免知识产权冲突(尤其是在开发新化合物时)提供了重要的一步,有助于研究人员满怀信心地进行研究。
FuncGroups "工具旨在识别分子中的官能团。它将分子的 SMILES 表示法作为输入,并使用预定义的 SMARTS 模式来确认官能团的存在。这种分析为了解分子的反应性和特性提供了宝贵的见解,提高了科学研究和药物发现的效率。
SMILES2Weight "工具使用 RDKit 库根据输入的 SMILES 字符串精确计算分子的分子量。该信息是合成规划和表征阶段的重要指标,有助于分子设计过程。
这些工具加强了分子设计、分析和评估过程,帮助科学家更快、更有效地做出明智的决策。
此外,与开发 ChemCrow 等工具相关的最突出问题之一是安全性。我们提出的风险缓解策略之一,就是结合各种工具,利用大规模语言模型来评估所提议的分子、反应和程序的潜在风险。为了实现安全的研究环境,我们采用了三种安全工具
受控化学物质检查 "工具使用分子的 CAS 编号与专门列表进行核对,以预先识别被认定为化学武器或其前体的物质。当用户要求对特定分子进行合成方法或实验时,这种自动检查就会起作用,如果检测到相关危险物质,就会立即停止操作。这为用户提供了重要的安全信息,使其能够做出更安全的决定。
ExplosiveCheck "工具根据全球统一制度(GHS)确定分子是否具有爆炸性。它使用分子的通用名称、国际理论化学和应用化学联合会(IUPAC)名称或 CAS 编号搜索 PubChem 数据库,并在评估为 "爆炸性 "时确认其属性。在请求合成方法时,它会自动调用,并在必要时提供警告和错误信息,以帮助用户做出正确的安全决定。
安全摘要"(SafetySummary)工具可为任何分子提供全面的安全摘要。 该工具可确定四个关键方面:操作安全、全球统一制度(GHS)信息、环境风险和社会影响。界面,全面介绍安全信息。在信息缺失的地方,GPT-4 会进行补充,明确指出缺口,以便用户获得完整且易于获取的安全数据。
通过这些工具,ChemCrow 提高了安全性。此外,ChemCrow 还使用 "化学反应工具 "来识别、预测、规划甚至执行化学反应。
NextMove 软件公司的 "NameRxn "工具利用广泛的命名反应数据库对化学反应进行识别和分类。只需输入反应式的 SMILES 格式,即可获得反应名称及其分类代码,从而有助于了解反应机理和优化实验条件。
ReactionPredict "工具使用了 IBM 研究院的 RXN4Chemistry API,能高精度地预测反应物的生成物。该工具使用一个变压器模型,专门用于预测化学反应和逆向合成路径,模仿化学家进行的抽象推理。
ReactionPlanner "工具是一种用于规划多步骤合成过程的工具:它基于 RXN4Chemistry API,可将反应序列转换为机器可解释的操作,并将其重新转换为自然语言。该工具在设计合成相关化合物的高效途径方面发挥着重要作用。
ReactionExecute "通过ChemCrow与机器人化学实验室直接合作,以物理方式执行计划的合成。整个过程包括从请求合成计划到机器人执行计划,以及在执行过程中适应错误和警告。最后,合成在用户授权后启动,并在成功后返回确认信息。
这些工具简化了从了解反应到运行实验的整个过程。
摘要
本研究介绍了化学乌鸦(ChemCrow)的开发情况,这是一种新型的大规模语言模型驱动框架,用于整合化学领域的计算工具。通过将大规模语言模型的高级推理能力与来自计算工具的专业化学知识相结合,ChemCrow 成为可与物理世界交互的化学相关大规模语言模型代理的先驱。
事实上,它已经取得了多项成果,包括筛选和合成了一种驱虫剂、三种有机催化剂和一种具有目标特性的新型染料。ChemCrow 还能自主解决各种化学问题,从简单的药物发现到复杂物质的合成规划,未来有望成为类似 ChatGPT 的化学助手。
尽管目前的成果由于所选工具的数量和质量而受到限制,但不局限于化学领域的各种工具的潜力是巨大的。如果能加入基于语言和图像处理的工具,ChemCrow 的功能将得到极大扩展。此外,尽管所选的评估任务有限,但未来的研究和开发可以扩展这些任务并使其多样化,从而释放系统的真正潜力。
化学专家的评估表明,ChemCrow 在化学事实、推理和答案完整性方面均优于 GPT-4。ChemCrow的优势在新任务和知名度较低的任务中尤为明显。另一方面,虽然大规模语言建模评估倾向于 GPT-4,但在评估模型在化学推理中的真实有效性方面,此类评估并不总是像人类评估那样可靠。这一差距表明需要改进方法,以更准确地评估 ChemCrow 等系统在解决复杂的真实世界化学问题方面的独特能力。
评估过程存在挑战,但改进实验设计可以提高结果的可靠性。尽管存在许多挑战,如封闭模型的局限性和大规模化学逻辑测试的困难,但像 ChemCrow 这样的系统仍是化学实验室的重要助手,并在解决各领域的化学任务方面显示出良好的能力和潜力。
本文中进行的实验也可通过 GitHub访问。ChemCrow 平台的开源版本也已发布。 您可以访问 ChemCrow 平台的实验设置和详细信息,并将其用于自己的项目和研究。这有望进一步促进化学反应预测、规划和执行方面的高级研究与开发。
与本文相关的类别