论文阅读笔记(十二)——Augmenting large language models with chemistry tools

论文阅读笔记(十二)——Augmenting large language models with chemistry tools

@TOC

Abstract

大型语言模型(LLMs)在跨领域任务中表现出色,但在化学相关问题上却表现不佳。这些模型也缺乏外部知识源的访问权限,限制了它们在科学应用中的有用性。我们介绍了ChemCrow,这是一种设计用于完成有机合成、药物发现和材料设计任务的LLM化学代理。通过集成18个专家设计的工具,并使用GPT-4作为LLM,ChemCrow增强了LLM在化学领域的性能,并展现了新的能力。我们的代理自主规划和执行了昆虫驱避剂和三种有机催化剂的合成,并指导发现了一种新的发色团。我们的评估,包括LLM和专家评估,展示了ChemCrow在自动化多样化化学任务中的有效性。我们的工作不仅帮助了专家化学家,还降低了非专家的门槛,同时通过弥合实验化学和计算化学之间的差距促进了科学进步。

简介

Langchain构建

Github运行版

Github发布版

LLM的局限性,它们常常在看似简单的任务上表现不佳,如基本数学和化学操作。例如,GPT-4和GPT-3.5不能始终如一且准确地完成12,345 × 98,765的乘法运算或将IUPAC名称转换为相应的分子图。这些缺陷可以归因于模型的核心设计,它专注于预测后续的标记。为了解决这些限制,一个可行的方法是为LLM增加专用的外部工具或插件,例如用于数学运算的计算器或用于IUPAC到结构转换的OPSIN。
这种工作流程有效地将连锁思维推理与任务相关的工具结合起来。结果,如以下部分所示,LLM从一个过度自信——尽管通常是错误的——信息源转变为一个被提示反思任务、使用适当工具收集额外信息、观察工具响应并重复此循环直到得到最终答案的推理引擎。

ChemCrow的架构旨在利用LLMs和专家设计工具的优势。我们选择GPT-4作为LLM,因为它具有卓越的自然语言理解和生成能力。ChemCrow集成了18种专门选择的工具,这些工具与常见化学任务相关,涵盖了分子可视化、反应预测、性质计算和文献检索等领域。 这些工具被封装在一个框架内,使LLM和工具之间能够无缝交互。

化学领域受到专家设计的人工智能(AI)系统的影响,这些系统解决特定问题,如反应预测、逆合成规划、分子性质预测、从头分子生成、材料设计以及最近的贝叶斯优化。由于其训练数据的性质,已证明代码生成LLMs确实具备一些化学理解,允许它们适应观察、进行多步骤规划并在化学环境中正确响应意图。然而,与其他领域相比,化学领域实现的自动化水平仍然相对较低,这主要是由于其高度实验性质、数据缺乏以及计算工具在其指定领域内的范围和适用性有限。

集成这些工具往往发生在孤立的环境中,例如RXN for chemistry和aizynthfinder,由促进可整合性的公司指令促进。尽管大多数工具由开源社区开发或通过应用程序编程接口(api)提供,但它们的集成和互操作性对实验化学家构成了相当大的挑战,这主要是由于他们缺乏计算技能集和具有陡峭学习曲线的工具多样性,从而阻碍了其潜力的充分利用。

受其他领域成功应用的启发,我们提出了一种由LLM驱动的化学引擎ChemCrow,旨在简化跨药物和材料设计及合成等领域的各种常见化学任务的推理过程。ChemCrow利用多种专家设计的化学工具的力量,通过向LLM(在我们的实验中使用GPT-4)提供关于任务和期望格式的具体指示来操作。LLM提供了一份工具名称列表、它们的用途描述以及预期输入/输出的详细信息。然后,指示模型回答用户给出的提示,在必要时使用提供的工具。模型被引导遵循“Thought思考、行动、行动输入、观察”格式,这要求它推理任务的当前状态,考虑其与最终目标的相关性,并相应地计划下一步,展示其理解水平。

在这里插入图片描述
在思考步骤中的推理之后,LLM请求一个工具(前面带有关键字“Action”)以及该工具的输入(带有关键字“Action Input”)。文本生成然后暂停,程序尝试使用提供的输入执行请求的功能。结果以“Observation”关键字返回给LLM,LLM再次进入思考步骤。它不断迭代,直到得到最终答案。

这种工作流程在之前的ReAct和MRKL论文中已经描述过,它有效地将连锁思维推理与任务相关的工具结合起来。结果,如以下部分所示,LLM从一个过度自信——尽管通常是错误的——信息源转变为一个被提示反思任务、使用适当工具收集额外信息、观察工具响应并重复此循环直到得到最终答案的推理引擎。

与这项工作同时进行的研究(ref. 54)描述了一种类似的方法,即通过工具增强LLM以完成GPT-4单独无法完成的化学任务。它专注于云实验室,而我们研究了广泛的任务和工具,包括连接到云连接的机器人合成平台。我们实施了18种工具,如图1b所示,并在“工具”部分描述了它们,这些工具不仅赋予了ChemCrow关于分子和反应特性的知识,还赋予了其在物理实验室中直接执行任务的能力。尽管包含的工具列表并不详尽,但ChemCrow的设计易于通过提供新工具适应新应用。ChemCrow作为专家化学家的助手,同时通过提供一个简单的界面来访问准确的化学知识,降低了非专家的入门门槛。我们分析了ChemCrow在14个用例上的能力(补充信息中的附录G),包括合成目标分子、安全控制和寻找具有相似作用模式的分子。

Results and discussion

Autonomous chemical synthesis

从用户输入的“计划并执行昆虫驱避剂的合成”(图1a)和“寻找一种加速狄尔斯-阿尔德反应的硫脲有机催化剂。找到后,请计划并执行该有机催化剂的合成”(图2b),ChemCrow依次查询工具以找到合适的分子,规划合成并在IBM Research的云连接专有平台RoboRXN上执行合成。使用RoboRXN,ChemCrow自主进行了昆虫驱避剂(DEET)和三种已知硫脲有机催化剂(Schreiner’s、Ricci’s和Takemoto’s)的合成。 合成结构如图2d所示,“工具”部分详细描述了这些工具。四次合成成功产出了预期化合物,展示了与物理世界相关的LLM代理的合成规划和执行互动。值得注意的是,只要有访问权限,这些工具可以单独使用,可能会得到相同的结果。ChemCrow通过利用LLMs的推理能力自动执行这些工具。

在这里插入图片描述
标准化合成程序是成功执行的关键。然而,预测的程序并不总是可以直接在RoboRXN平台上执行;常见的问题包括“溶剂不足”或“无效的纯化操作”。虽然解决这些问题通常需要人工干预以修正无效操作,然后再尝试执行合成,但ChemCrow能够自主查询平台上的合成验证数据,并迭代调整合成程序(例如增加溶剂量)直到合成程序完全有效,从而消除了人工干预的需要。这个例子展示了ChemCrow自主适应和成功执行标准化合成程序的能力,缓解了实验室安全问题,并使其适应机器人平台的特定条件。

RoboRXN

人机协作

人类与计算机之间的协作是非常有价值的,尤其是在化学领域,决策通常基于实验结果。这里我们展示了这种互动如何导致新型发色团的发现。在这个例子中,ChemCrow被指示训练一个机器学习模型,以帮助筛选候选发色团库。如图3所示,ChemCrow能够加载、清理和处理数据;训练和评估随机森林模型(补充信息中的附录G.1);最后根据模型和给定的目标吸收最大波长369 nm提供建议。随后合成并分析了建议的分子(图3),确认发现了一个具有大致所需性质的新发色团(测得的吸收最大波长为336 nm)。

在这里插入图片描述

Evaluation across diverse chemical use cases

近年来,机器学习在化学中的应用激增,导致该领域的数据集和基准测试大量增加。然而,这些基准测试中很少有针对化学特定任务评估LLMs的,并且鉴于进展迅速,尚未建立标准化评估技术,这对评估我们展示的方法构成了挑战。为了解决这个问题,我们与化学专家合作,开发了一组任务,测试LLMs在使用化学特定工具和解决领域问题方面的能力。这些任务由ChemCrow和GPT-4执行,并通过LLM基础评估和专家人工评估相结合的方法进行评估。

GPT-4被提示扮演专家化学家的角色,但无法访问诸如互联网浏览等外部工具。对于基于LLM的评估,我们借鉴了参考文献5, 63, 64中描述的评估方法,其中作者使用一个评估LLM,并指示其扮演老师评估学生的角色。在我们的案例中,我们调整了提示,使评估LLM(我们称之为EvaluatorGPT)仅根据任务是否得到解决和总体思维过程是否正确进行评分。EvaluatorGPT进一步被指示突出每种方法的优缺点,并提供进一步的反馈,说明每个响应如何改进,从而为解释LLM的评估提供依据。

几项任务的完整结果,涵盖药物合成规划、具有相似性质和作用模式的新型化合物设计以及反应机制解释,详见补充信息的附录G。完整示例也可以在https://github.com/ur-whitelab/chemcrow-runs上查看。

值得注意的是,ChemCrow响应的有效性取决于工具的质量和数量,以及代理的推理过程。 例如,合成规划能力可以从改进的基础合成引擎中受益, 这是一个活跃的研究领域。即便如此,如果使用工具的推理存在缺陷或输入的是垃圾数据,任何工具都会变得无用。 同样,工具的输出不准确会导致代理得出错误的结论。基于这些原因,我们请了一组化学专家评估每个模型在每个任务中的表现,评估维度包括:(1)化学的正确性,(2)推理的质量,(3)任务完成度(补充信息中的附录B)。如图4所示,ChemCrow在更复杂的任务中优于没有工具的LLM,这些任务需要更扎实的化学推理。尽管GPT-4系统性地无法提供准确的信息,它往往以更流畅和完整的风格回答问题,使其被EvaluatorGPT偏好;然而,经过详细检查后,其产生的幻觉会被揭示出来。两种系统在“推理质量”上表现相似,这是由于ChemCrow依赖于GPT-4的推理所设计的结果。如图4a,b所示,GPT-4仅在更简单的任务中优于ChemCrow,这些任务的目标非常明确,所有必要的信息都是GPT-4训练数据的一部分,使其能够几乎纯粹依靠训练数据的记忆提供更完整的答案(例如DEET和对乙酰氨基酚的合成)。在我们所有的实验中,ChemCrow被明确指示优先使用工具而非内部知识,以展示使用工具的好处。尽管如此,ChemCrow在多个目标和难度上始终提供更好的解决方案,导致化学专家对ChemCrow的强烈偏好,显示了其作为实践化学家工具的潜力。

请注意图4中人类专家和LLM驱动评估之间的差异。尽管人类专家基于化学准确性和任务完成度更喜欢ChemCrow的响应,EvaluatorGPT则偏爱GPT-4,通常基于GPT-4响应的流畅性和表面完整性进行评估。EvaluatorGPT最近被提出并用作自我评估方法,但我们的结果表明,当它缺乏回答提示所需的理解时,它也缺乏评估提示完成的信息,因此无法提供可信的评估,这使得其在真实性在评估中起关键作用时无法用于LLM能力的基准测试。对于需要实际知识的科学任务,目前基于LLM的方法如EvaluatorGPT,无法取代专家人类评估。
在这里插入图片描述

Risk-mitigation strategies

使用像ChemCrow这样的LLM驱动的化学引擎可以通过促进不同专家设计工具输出的流线型组合,使非专业研究人员受益。在任何自动化化学平台上,人类操作员和化学专家都会进行大量的审查和控制。然而,确保LLM代理的负责任开发和使用是至关重要的。我们讨论了意外风险并提出了可能的缓解策略。这些可以通过预见和保障措施实现,同时促进开放和透明的科学,以实现广泛的监督和研究界的反馈。

Unintended risks

限制未经适当培训的人进入化学实验室是全球标准安全指南。然而,尝试根据LLM驱动引擎的建议进行实验可能会导致事故或危险情况。为了缓解这些风险,我们为代理提供了必须遵守的安全说明,例如在继续任务之前检查安全信息。如图5所示,ChemCrow遵循硬编码和提示的指南组合以确保安全。如果拟议的反应被认为是危险的,执行将停止。否则,执行继续进行,模型可以使用收集的安全信息提供更完整的答案,包括对建议物质的安全关注,以及如何安全处理它们的基础建议。由于ChemCrow的风险类似于使用单个开源工具的风险,目前不需要广泛的缓解策略。然而,如果新添加的工具引起显著的新风险,应考虑采取这些措施。

在这里插入图片描述

由于LLM驱动引擎缺乏足够的化学知识而导致的不准确或不完整的推理会带来另一个风险,因为这可能导致决策错误或实验结果出现问题。本文的一个关键点是,集成专家设计的工具可以帮助缓解这些模型通常相关的幻觉问题,从而降低不准确性的风险。然而,当模型由于对化学概念理解有限而无法充分分析不同的观察结果时,可能仍会引发担忧,可能导致次优结果。为了解决这个问题,开发人员可以专注于提高训练数据的质量和广度,纳入更高级的化学知识并改进LLM对复杂化学概念的理解。此外,可以引入内置的验证或同行评审系统,类似于GPT-3.5(参考文献70,71)实施的人类反馈强化学习,以帮助确保引擎建议的可靠性。

鼓励用户批判性地评估LLM驱动引擎提供的信息,并将其与已建立的文献和专家意见进行交叉引用,可以进一步减轻依赖于有缺陷推理的风险。通过结合这些方法,开发人员可以努力最大限度地减少化学知识不足对引擎推理过程的影响,并提高像ChemCrow这样的LLM驱动化学引擎的整体有效性。

解决知识产权问题对于像ChemCrow这样的生成型AI模型的负责任开发和使用至关重要。需要建立关于生成的化学结构或材料的合成、它们的预测应用以及潜在的专有信息侵权的更清晰的指南和政策。与法律专家以及行业利益相关者的合作可以帮助应对这些复杂问题,并实施适当的措施以保护知识产权。

总之,必须仔细考虑和解决与LLM驱动的化学引擎(如ChemCrow)相关的潜在缺点,以确保其安全和负责任的应用。通过整合专家设计的工具,可以减轻模型幻觉问题,提高训练数据的质量和广度,可以增强引擎对复杂化学概念的理解。实施有效的缓解策略,如访问控制、安全指南和道德政策,有助于最大限度地减少风险并最大化这些引擎在化学领域的积极影响。随着技术的不断发展,开发人员、用户和行业利益相关者之间的合作和警惕对于识别和解决新风险和挑战至关重要,促进LLM驱动化学引擎领域的负责任创新和进步。

结果

在这项研究中,我们展示了ChemCrow的发展,这是一种集成化学计算工具的LLM驱动方法。通过将LLM的推理能力与化学专家知识结合在一起,ChemCrow展示了首批化学相关的LLM代理与物理世界的互动。ChemCrow成功地规划和合成了一种驱虫剂和三种有机催化剂,并指导了具有目标特性的发色团的筛选和合成。此外,ChemCrow能够独立解决化学中的推理任务,从简单的药物发现循环到跨越广泛分子复杂性的物质合成规划,表明其作为未来化学助手的潜力,如同ChatGPT一样。

尽管当前的结果受到所选工具数量和质量的限制,但可能性的空间是巨大的,特别是潜在工具不限于化学领域。其他基于语言的工具、图像处理工具等的结合可以大大增强ChemCrow的能力。此外,尽管选择的评估任务有限,进一步的研究和开发可以扩展和多样化这些任务,以真正推动这些系统可以实现的极限。

化学专家的评估显示,ChemCrow在化学事实性、推理和响应完整性方面优于GPT-4,尤其是在更复杂的任务中。尽管GPT-4在涉及记忆的任务中可能表现更好,如对乙酰氨基酚和阿司匹林的合成,ChemCrow在任务新颖或不太知名时表现出色,这些是更有用和具有挑战性的案例。相反,LLM驱动的评估往往偏爱GPT-4,主要是由于其响应更流畅和看起来更完整。需要注意的是,LLM驱动的评估在评估模型在化学推理中的真正有效性时可能不如人工评估可靠。这一差异强调了进一步改进评估方法的必要性,以更好地捕捉像ChemCrow这样的系统在解决复杂、现实化学问题方面的独特能力。

评估过程并非没有挑战,改进的实验设计可以增强结果的有效性。一个主要挑战是,在当前基于API的LLM方法下,个别结果缺乏可重复性,因为闭源模型提供的控制有限。最近的开源模型为解决这一问题提供了潜在的解决方案,尽管可能会在推理能力上有所妥协。此外,任务选择中的隐含偏差和在大规模上测试任务解决方案背后的化学逻辑的固有限制,为评估ML系统带来了困难。尽管存在这些挑战,我们的结果展示了像ChemCrow这样的系统作为化学实验室中的有价值助手并解决各个领域化学任务的能力和潜力。

Method

LLMs

近年来,LLM的兴起及其在最近几个月的快速发展、可用性和规模化为广泛的应用和想法打开了大门。当LLM作为某些框架的一部分使用时,其零样本推理能力得到了进一步增强,如ReAct和MRKL架构所示。这些架构允许将连锁思维推理的成功与LLM工具的使用相结合。在我们的实验中,我们使用了OpenAI的GPT-4,温度设为0.1。

LLMs application framework, LangChain

LangChain是一个综合框架,旨在通过支持各种模块来促进语言模型应用的开发,包括访问各种LLM、提示、文档加载器、链、索引、代理、记忆和聊天功能。通过这些模块,LangChain使用户能够创建各种应用程序,如聊天机器人、问答系统、摘要工具和数据增强生成系统。LangChain不仅为这些模块提供标准接口,还帮助集成外部工具,实验不同的提示和模型,并评估生成模型的性能。在我们的实现中,我们通过LangChain集成了外部工具,因为LLM已被证明在使用工具时表现更好。

工具

尽管我们的实现使用了一组有限的工具,但必须注意,这个工具集可以根据需要和可用性非常容易地扩展。

所使用的工具可以分为通用工具、分子工具和化学反应工具。

通用工具

WebSearch。网络搜索工具旨在为语言模型提供从网络访问相关信息的能力。利用SerpAPI,该工具查询搜索引擎并汇总Google搜索结果第一页的精选印象。这使得模型能够收集跨广泛科学主题的当前和相关信息。该工具的一个显著特征是,当模型遇到无法解决的查询或不确定应用的合适工具时,它可以作为启动板。集成该工具使语言模型能够高效扩展其知识库,简化解决常见科学挑战的过程,并验证其提供信息的准确性和可靠性。默认情况下,代理更倾向于使用LitSearch而不是WebSearch工具。

LitSearch。文献搜索工具专注于从科学文档(如PDF或文本文件,包括原始HTML)中提取相关信息,以提供准确和有依据的答案。该工具使用paper-qa Python包(https://github.com/whitead/paper-qa)。通过利用OpenAI Embeddings和FAISS向量数据库,该工具高效地嵌入和搜索文档。然后,语言模型辅助生成基于这些嵌入向量的答案。

文献搜索过程涉及将文档和查询嵌入到向量中,并在文档中搜索前k个段落。一旦这些相关段落被识别出来,工具会创建每个段落与查询相关的摘要。这些摘要随后被合并到提示中,使语言模型能够生成知情的答案。通过在现有科学文献中锚定响应,文献搜索工具大大增强了模型提供可靠和准确信息的能力,同时包括相关论文的参考。

Python REPL。LangChain的标准工具之一,Python REPL,为ChemCrow提供了一个功能性的Python shell。该工具使LLM能够直接编写和运行Python代码,从而更容易完成各种复杂任务。这些任务可以从执行数值计算到训练AI模型和执行数据分析。

Human。该工具作为人机交互的直接接口,使引擎能够向用户提问并期望得到回应。每当LLM遇到困难或对下一步不确定时,它可能会请求使用此工具。在我们的示例中,展示了该工具如何通过直接指示代理请求许可来执行某些任务,如在机器人平台上启动实验或继续数据分析工作流程,从而赋予用户对ChemCrow行为的更多控制。

分子工具

总的来说,1.检索材料型号2.购买任务,3.访问数据库
Name2SMILES。该工具专门用于获取给定分子的简化分子输入行条目系统(SMILES)表示。通过输入分子的名称(或化学文摘社(CAS)编号),它返回相应的SMILES字符串。该工具允许用户通过自然语言(例如咖啡因、诺伐他汀)、IUPAC名称等引用分子来请求涉及分子分析和操作的任务。我们的实现首先查询chem-space作为主要来源,失败时则查询PubChem和IUPAC到SMILES转换器OPSIN作为最后选项。

SMILES2Price。该工具的目的是提供特定分子的可购性和商业成本信息。通过输入分子,它首先利用molbloom检查该分子是否可以购买(在ZINC中)。然后,使用chem-space API,它返回市场上可用的最低价格,使LLM能够对查询分子的可负担性和可用性做出明智决策,以解决给定任务。

Name2CAS。该工具旨在通过查询PubChem数据库,使用各种类型的输入参考(如常见名称、IUPAC名称或SMILES字符串)确定给定分子的CAS编号。CAS编号作为精确和普遍认可的化学标识符,使研究人员能够轻松访问相关数据和资源,并确保他们获得关于目标分子的准确和一致的信息。

评估分子结构,发现类似分子
Similarity。该工具的主要功能是评估两个分子之间的相似性,利用基于输入分子的ECFP2分子指纹的Tanimoto相似性度量。该工具接收两个分子并返回分子结构相似性的度量,这对于比较分子类似物在药物发现和化学研究中的潜力非常有价值。

ModifyMol。该工具旨在通过使用逆向和正向合成规则生成其周围的局部化学空间来修改给定分子。 它采用SynSpace包,最初应用于分子机器学习的反事实解释。修改过程利用了50种稳健的药物化学反应,逆向合成通过PostEra Manifold(在API密钥可用时)或反转这50种稳健反应来进行。可购的构建模块来自可购Mcule供应商构建模块目录,尽管也可以进行定制选项。通过输入分子的SMILES表示,该工具返回单一突变。该工具赋予模型探索结构相似分子和生成新分子的能力,使研究人员能够探索分子衍生物、生成数据并为特定应用(如药物发现和化学研究)微调其分子候选物。

PatentCheck。专利检查工具旨在验证分子是否已获得专利,无需进行网络请求。 它利用molbloom,一个C库,通过布隆过滤器检查字符串,使其成为评估已知数据库中的化合物的有效工具。通过输入分子的SMILES表示,专利检查工具通知LLM该特定分子是否存在专利,从而帮助其避免潜在的知识产权冲突并确定给定化合物是否新颖。

FuncGroups。该工具旨在通过分析一组命名的Smiles任意目标规范模式来识别给定分子内的官能团。 通过输入单个分子的SMILES表示,官能团查找器搜索分子结构与代表各种官能团的预定义Smiles任意目标规范模式之间的匹配。在识别这些匹配项后,工具返回分子中存在的官能团列表。这些信息对于理解分子的反应性、性质和潜在应用至关重要。通过提供分子官能团的全面概述,LLM在设计实验、合成化合物或探索新分子候选物时可以做出明智的决策。

SMILES2Weight。该工具的目的是在给定分子SMILES表示的情况下计算分子的分子量。 该工具利用RDKit从SMILES字符串中获取确切的分子量。

安全工具

安全工具。如前几节所述,安全性是开发像ChemCrow这样的工具时最突出的问题之一。提出的风险缓解策略之一是提供内置的安全评估功能,包括硬编码检查,并允许LLM评估任何拟议的分子、反应或程序的潜在风险。

ControlledChemicalCheck。为了减少意外风险,该工具获取分子的CAS编号或SMILES表示,并将其与多个公认的化学武器和前体清单(禁止化学武器组织的第1-3类清单和澳大利亚集团的化学武器前体出口管制清单)进行检查。 如果输入的分子不在任何这些列表中,则计算它与数据库中分子的最大相似度(使用MolSimilarity工具),如果相似度大于0.35,则发出警告。当请求某个分子的合成方法或执行时,该工具会自动调用。如果在这些列表中找到分子,表示它可能是化学武器或前体,代理立即停止执行。该工具提供关键信息,使用户能够做出明智且安全的决策。

ExplosiveCheck。该工具利用全球统一系统(GHS)识别爆炸性分子。它通过分子标识符(如常用名称、IUPAC名称或CAS编号)查询PubChem数据库,以确定分子的GHS评级是否为“爆炸性”。 该工具使用户能够对物质和反应的安全性做出明智决策。此外,当用户请求合成方法时,ChemCrow会自动调用此工具,向用户发出适当的警告或错误,从而减轻相关风险。

SafetySummary。该工具为任何给定分子提供一般安全概述。它通过查询PubChem数据库中的数据生成安全摘要,并使用LLM摘要器突出四个核心方面:操作安全性(操作员的潜在风险,即处理给定物质的健康问题)、GHS信息(一般危害和处理物质的建议)、环境风险和社会影响(该物质是否为已知的受控化学品)。 每当没有可用信息时,允许GPT-4填补空白,但必须明确说明。该工具从PubChem数据库提供全面且易于理解的安全信息,使用户能够做出明智的决策并采取适当的安全措施。它填补数据空白的能力确保了完整且可访问的信息,简化了用户的流程。

化学反应工具

化学反应工具。NameRXN。该工具由NextMove Software的专有软件NameRxn驱动,旨在基于其内部数百个命名反应的数据库来识别和分类给定的化学反应。 通过输入反应的SMILES表示,工具返回分类代码和自然语言的反应名称。分类代码对应于文献101中提出的层次结构中的位置。这些信息对于理解反应机制、选择适当的催化剂和优化实验条件至关重要。

ReactionPredict。反应预测工具利用了IBM Research的RXN4Chemistry API,该API使用专门为预测化学反应和逆合成路径设计的转换器模型,并提供高度准确的预测。 该工具输入一组反应物并返回预测的产物,使LLM获得通常无法通过简单的数据库查询获得的准确化学信息,而是需要化学家经过训练进行的抽象推理。尽管该API免费使用,但需要注册。

ReactionPlanner。该强大的工具也采用IBM Research的RXN4Chemistry API,利用与反应预测工具相同的转换器方法进行翻译任务,但添加了处理多步合成的搜索算法和将反应序列转换为机器可读格式中的可操作步骤(包括条件、添加剂和溶剂)的动作预测算法。 为了与ChemCrow接口,我们添加了一个LLM处理步骤,将这些机器可读的操作转换为自然语言。分子合成规划器旨在帮助LLM规划合成路线以制备所需的目标分子。通过输入所需产品的SMILES表示,该工具使ChemCrow能够设计和比较针对目标化合物的有效合成路径。

ReactionExecute。该工具允许ChemCrow通过机器人化学实验室平台直接与物理世界互动。 也基于RXN4Chemistry API,该工具允许代理计划、调整和执行给定分子的合成。在内部,该工具请求一个合成计划(使用RXNPlanner工具),获取要在机器人上执行的动作序列,并使用LLM驱动的循环来调整动作序列中的错误和警告。最后,它请求用户许可启动合成,并在成功启动动作序列后返回成功消息。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/670242.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Go-知识并发控制Context

Go-知识并发控制Context 1. 介绍2. 实现原理2.1 接口定义2.2 Deadline()2.3 Done()2.4 Err()2.5 Value() 3. 空 context4. cancelCtx4.1 Done()4.2 Err()4.3 cancel()4.4 WithCancel4.5 例子4.6 总结 5. timerCtx5.1 Deadline5.2 cancel5.3 WithDeadline5.4 WithTimeout5.5 例子…

linux tomcat版本漏洞升级

Tomcat Session 反序列化代码执行漏洞(CVE-2020-9484) Tomcat 安全限制绕过漏洞(CVE-2018-8034) Tomcat远程代码执行漏洞(CVE-2017-12615) 以上均可以升级版本处理,小版本升级方法 tomcat安装请查看https://blog.csdn.net/qq_42250832/article/details/139015573 1、…

2024医美如何做抖音医美抖音号,本地团购、短视频直播双ip爆品引流,实操落地课

课程下载:https://download.csdn.net/download/m0_66047725/89307619 更多资源下载:关注我。 课程内容: 01-0-序.mp4 02-01-账号定位.mp4 03-02-误区.mp4 04-03-五件套.mp4 05-04-文案怎么来.mp4 06-05-对标怎么弄.mp4 07-06-人设怎…

计算机网络期末复习(1)计算机网络在信息时代对的作用 计算机网络的定义和分类 三种交换方法

计算机网络在信息时代扮演着至关重要的角色,它极大地改变了我们生活、工作和学习的方式。 计算机网络在信息时代的作用 信息共享与传播:计算机网络使全球范围内的信息快速共享成为可能,无论是新闻、学术研究还是娱乐内容,都可以…

MyBatis源码分析--02:SqlSession建立过程

我们再来看看MyBatis使用流程: InputStream inputStream Resources.getResourceAsStream("myBatis_config.xml"); SqlSessionFactory sqlSessionFactory new SqlSessionFactoryBuilder().build(inputStream); SqlSession session sqlSessionFactory.op…

AI编程新手快速体验SpringCloud Alibaba 集成AI功能

上周六写了一篇文章 震撼发布!Spring AI 框架重磅上线,Java 集成 AI 轻松搞定! 部分同学可能没有科学上网的条件,本地ollama 集成又比较笨重。趁着周六,写一篇基于SpringCloud Alibaba 集成AI的文章。 先简单介绍…

浅析R16移动性增强那些事儿(DAPS/CHO/MRO)

R16移动性增强相关技术总结 Dual Active Protocol Handover Dual Active Protocol Handover意为双激活协议栈切换,下文简称DAPS切换,DAPS切换的核心思想是切换过程中,在UE成功连接到目标基站前继续保持和源基站的连接和数据传输,…

MinIO 使用

MinIO自建对象存储 1、dock-compose 使用dock-compose拉取 minio:image: "minio/minio"container_name: minioports:- "9000:9000"- "9001:9001"volumes:- "./minio/data1:/data1"- "./minio/data2:/data2"restart: on-fai…

网络原理-TCP/IP --传输层(UDP)

T04BF 👋专栏: 算法|JAVA|MySQL|C语言 🫵 今天你敲代码了吗 目录 端口号UDP协议 端口号 我们在学习套接字的时候,涉及到两个概念:IP地址和端口号 IP地址是用来确定主机,这是网络层提供的概念 而端口号就是用来确定主机上的应用程序,就是传输层的概念的…

leetcode102. 二叉树的层序遍历

一、题目描述: 给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)。 二、输入输出实例: 示例 1: 输入:root [3,9,20,null,null,15,7] 输出&am…

c++(七)

c(七) 内联函数内联函数的特点为什么要有内联函数内联函数是如何工作的呢 类型转换异常处理智能指针单例模式懒汉模式饿汉模式 VS中数据库的相关配置 内联函数 修饰类的成员函数,关键字:inline inline 返回值类型 函数名(参数列…

【C++】———list容器

前言 1.list容器简单来说其实就是之前的链表结构。 2.这里的list用的是双向带头结点的循环链表。 目录 前言 一 构造函数 1.1 list (); 1.2 list (size_type n, const value_type& val value_type() ); 1.3 list (InputIterator first, InputIterator last…

21.Redis之分布式锁

1.什么是分布式锁 在⼀个分布式的系统中, 也会涉及到多个节点访问同⼀个公共资源的情况. 此时就需要通过 锁 来做互斥控制, 避免出现类似于 "线程安全" 的问题. ⽽ java 的 synchronized 或者 C 的 std::mutex, 这样的锁都是只能在当前进程中⽣效, 在分布式的这种多…

计算机系统结构之互联网络

一、基本的单级互联网络 1、立方体单级网络 立方体单级网络的名称来源于下图所示的三维立方体结构。每个顶点(网络的节点)代表一个处理单元,共有8个处理单元,用zyx三位二进制编号。 Cubei函数表式相连的入端和出端的二进制编号只…

海外媒体通稿:9个极具创意的旅游业媒体推广案例分享-华媒舍

如今,旅游业正迅速发展,媒体推广成为吸引游客的关键。为了更好地展示旅游目的地,许多创意而富有创新的媒体推广策略应运而生。本文将介绍九个极富创意的旅游业媒体推广案例,为广大从业者带来灵感和借鉴。 1. 视频系列:…

Hadoop3:MapReduce的序列化和反序列化

一、概念 1、序列化 就是把内存中的对象,转换成字节序列 (或其他数据传输协议)以便于存储到磁 盘(持久化)和网络传输。 2、反序列化 就是将收到字节序列(或其他数据传输协议)或者是磁盘的持…

services层和controller层

services层 我的理解,services层是编写逻辑代码语句最多的一个层,非常重要,在实际的项目中,负责调用Dao层中的mybatis,在我的项目中它调用的是这两个文件 举例代码如下 package com.example.sfdeliverysystem.servic…

华东师范大学研究团队《Ecology Letters 》揭示植物如何改变其物候以响应全球变化

自工业革命以来,人类活动导致多种环境因子同时发生变化,包括气候变暖、降水模式改变、氮沉降增加和大气CO2升高。这些变化预计会影响植物生命周期事件的季节时序—植物物候(Nature Reviews Earth & Environment | 傅伯杰院士团队发文阐述…

基于java的CRM客户关系管理系统(二)

目录 第二章 相关技术介绍 2.1 后台介绍 2.1.1 B/S平台模式 2.1.2 MVC 2.1.3 Spring 2.1.4 Hibernate 2.1.5 Struts 2.2 前端介绍 2.2.1 JSP网页技术 2.3 开发工具 2.4 本章小结 前面内容请移步 基于java的CRM客户关系管理系统(二) 资源…

机器学习第四十一周周报 JTFT

文章目录 week41 JTFT摘要Abstract1. 题目2. Abstract3. 网络架构3.1 JTFT3.2 具有可学习频率的稀疏FD表示3.3 用于提取跨渠道依赖关系的低阶注意力层 4. 文献解读4.1 Introduction4.2 创新点4.3 实验过程 5. 结论小结参考文献 week41 JTFT 摘要 本周阅读了题为A Joint Time-…