跳转到正文

ChemCrow

Andres M Bran, Sam Cox, Andrew White, Philippe Schwaller / White Laboratory

ChemCrow 是一个基于 Python、使用 Langchain 构建的化学智能体软件包,可将语言模型推理与 RDKit、paper-qa、化学数据库和反应规划工具连接起来。

条目更新 ·

概览

ChemCrow 是一个使用工具的化学智能体软件包,旨在通过语言模型接口支持需要密集推理的化学任务。它基于 Langchain 构建,整合了化学软件和信息来源,包括 RDKit、paper-qa、Pubchem 和 chem-space。它的工作流程作用是将自然语言问题连接到专业工具,而不是作为独立的预测模型或化学数据库。

README 演示了一个 Python 接口:用户创建 ChemCrow 实例,并通过其 run 方法提交问题。示例涉及分子量查询和反应产物预测。示例中的输入是自然语言化学问题;文档说明交互会返回智能体响应,但来源摘录没有指定结构化输出模式。配置项包括语言模型选择、温度和流式输出设置。文档所述的设置需要 OpenAI API 密钥;Serp API 配置则为可选项。

对于逆合成规划和反应产物预测,ChemCrow 默认使用 RXN4Chem。README 指出该服务可能较慢且需要 API 密钥。文档还介绍了另一种方案:使用预制 Docker 镜像自行托管这些工具,并通过 local_rxn 设置选择该方案。这些集成属于外部依赖,并非 ChemCrow 内部开发的数据库或预测模型。

由于 API 使用限制,公开软件包并未包含 ChemCrow 论文中描述的所有工具;README 也明确警告,该仓库不会产生与论文相同的结果。所提供的打包源文件声明了 Python 要求,但不能据此确认经过测试的兼容性,也没有给出该仓库的性能结果。

主要功能

  • 基于 Langchain 的智能体接口,可通过 ChemCrow.run 提交自然语言化学问题。
  • 集成 RDKit 和 paper-qa,以及包括 Pubchem 和 chem-space 在内的化学信息来源。
  • 由 RXN4Chem 支持的逆合成规划和反应产物预测。
  • 可使用 README 中记录的 Docker 镜像自行托管反应预测和逆合成工具。
  • 可配置语言模型选择、温度、流式输出及本地反应工具路由。

使用场景

  • 拟议评估:按照 README 中的示例工作流程,将分子量问题的响应与独立核验的化学参考值进行比较。
  • 拟议评估:使用具有已知参考结果的代表性案例,评估反应产物预测和逆合成规划。
  • 拟议评估:探索 paper-qa 和化学数据库集成是否适用于化学文献研究工作流程,并将返回的信息与原始来源核对。

使用方式

  1. 阅读官方 README,了解智能体接口,并注意其中关于本软件包与论文所用工具集不同的警告。
  2. 查看 setup.py 中声明的 Python 要求和依赖项,然后按照 README 中的软件包安装说明操作。应将这些声明视为要求,而非经过测试的兼容性证明。
  3. 在环境中配置所需的 OpenAI API 密钥,不要将凭据放入共享笔记本或仓库文件中。只有在使用该可选集成时才配置 Serp API。
  4. 按照 README 中的 Python 示例创建 ChemCrow 实例,并提交一个分子量问题。在科研工作中使用响应前,请独立核验。
  5. 对于反应工具,可在默认的 RXN4Chem 服务和文档所述的自行托管 Docker 方案之间选择。有关 API 访问、容器设置和 local_rxn 设置,请参阅 README。
  6. 将评估范围与 ChemCrow 论文及其链接的实验仓库进行比较;不要假设公开软件包能够复现这些实验。

相关资源

ChemCP 是一款 MCP App,可使用 RDKit.js 将 SMILES 字符串转换为交互式二维分子图和计算描述符,并为支持 MCP Apps 的主机提供聊天内查看器。

TypeScriptJavaScript

化学信息学

ChemDataExtractor

开源工具

ChemDataExtractor v2 是一个 Python 工具包,可从科学文献中提取化学实体、性质、光谱和表格数据,并提供 HTML、XML 和 PDF 阅读器。

开源Python

文献与研究

Chemistry Development Kit (CDK) 是一个 Java 库,可在其他程序中用于化学表示、文件转换、结构搜索、指纹生成、QSAR 描述符计算和分子渲染。

开源

化学信息学

Coscientist

智能体

Coscientist 提供了一个简单实现及配套研究数据,面向大语言模型化学研究,涵盖合成规划、文库筛选、多次运行和优化。

文献与研究 · 实验室自动化

Datamol

开源工具

Datamol 是一个基于 RDKit 构建的 Python 分子处理库,提供结构转换、标准化、指纹、构象生成、可视化以及本地或远程文件 I/O 工具。

开源Python

化学信息学

K-Dense Scientific Agent Skill,用于指导基于 Datamol 的分子制备、相似性分析、骨架工作流和构象处理,并提供输入验证与可复现性方面的指导。

Python

化学信息学 · 药物发现

相关指南

概览

如何搭建一个化学 AI Agent 技术栈

通过区分语言模型、编排、Skills、MCP 接口、API、库和数据,设计化学 AI 智能体技术栈。参考提出的分子与材料工作流,定义输入/输出契约,并规划权限、评估和可复现部署。

智能体

科学工作流中的智能体与技能

通过可检查的输入、受限工具、可复用技能、与证据关联的输出和明确的人工审批,规划边界清晰的科学智能体工作流。比较 ChemCrow、PaperQA、Coscientist 和 Scientific Agent Skills 各自的角色,但不要假设它们经过互操作性测试。