跳转到正文

Datamol

Hadrien Mary

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

条目更新 ·

概览

Datamol 在 RDKit 之上提供用于分子处理的 Python 接口。它的核心分子表示形式是 rdkit.Chem.Mol,因此其函数可以融入已有 RDKit 对象的工作流。文档描述的范围是一个处理工具包,而非预测模型:它提供分子准备、表示形式转换、可视化和数据处理操作,可用于支持下游化学分析或机器学习数据准备。

README 展示了将 SMILES 字符串转换为分子、创建指纹,以及导出 SELFIES 和 InChI 表示形式。README 还展示了用于修复、清理和标准化分子的独立函数。表格工作流示例使用内置的 FreeSolv dataframe,并将其转换为分子对象。文件处理涵盖 SDF、CSV 和 XLSX 等格式,并通过 fsspec 支持远程路径;示例从 S3 读取 SDF,并将分子写入 Google Cloud 存储。

结构检查方面,示例包括二维分子图像、构象生成、通过 nglview 进行三维查看,以及根据构象计算溶剂可及表面积。来源还介绍了在适用情况下进行并行执行和可选的进度报告,但来源摘录没有给出性能测量结果。

所提供的软件包配置要求 Python 3.11 或更高版本,以及 RDKit 2024.9.1 或更高版本。依赖项说明需要谨慎解读:README 的更新部分提到将可选的 I/O 和可视化依赖项分离,而其安装部分及所提供的软件包配置则将这些功能包含在核心安装中。用户应检查所选发行版本的打包配置,而不要假定其中任一种依赖项安排普遍适用。

主要功能

  • 使用 `rdkit.Chem.Mol` 对象,并将分子输入转换为指纹、SMILES、SELFIES 和 InChI 表示形式。
  • 提供独立的分子修复、清理和标准化函数,并在 API 概览中加以示例说明。
  • 将 dataframe 记录转换为分子,并支持分子数据的读写,包括 SDF 和通过 `fsspec` 访问的远程路径。
  • 生成构象,并根据含有构象的分子计算溶剂可及表面积。
  • 生成二维分子图示,并支持通过 nglview 查看三维构象。
  • 在适用情况下提供内置并行化,并可选择显示进度条。

使用场景

  • 评估用途:在下游化学信息学分析前,使用修复、清理和标准化处理具有代表性的分子记录。
  • 评估用途:将分子结构转换为指纹或其他字符串表示形式,供独立的机器学习流程使用。
  • 评估用途:针对与研究工作流相关的分子,评估构象生成、可视检查和表面积计算。
  • 评估用途:使用小型代表性数据集,评估本地处理与 S3 或 Google Cloud 存储之间的 SDF 交换。

使用方式

  1. 从官方文档和仓库 README入手,确定与你的分子处理任务相关的 API。
  2. 在所提供的软件包配置中检查环境要求和依赖项声明。根据计划使用的发行版本核对 README 中相互矛盾的依赖项说明,然后按照该版本记录的安装方式操作。
  3. 查看链接的 Binder 基础笔记本,或研读 README 的 API 概览,了解分子字符串如何转换为 RDKit 对象及衍生表示形式。
  4. 如需进行评估,可选取一小组具有代表性的结构。比较修复、清理和标准化的输出,然后根据下游任务检查指纹或转换后的字符串。
  5. 仅评估你需要的其他操作,例如构象生成、分子图像或远程 SDF 交换。记录所选环境和观察到的行为;这些示例并不能证明该工具适用于你的数据集。

相关资源

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

TypeScriptJavaScript

化学信息学

ChemCrow

智能体

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

开源Python

化学信息学 · 文献与研究

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

开源

化学信息学

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

Python

化学信息学 · 药物发现

Molfeat

开源工具

Molfeat 是一款用于小分子特征化的 Python 工具包,将分子指纹、描述符和预训练嵌入与并行转换、缓存及可扩展插件相结合。

开源Python

分子性质预测 · 化学信息学

Mordred

开源工具

Mordred 是一款 Python 分子描述符计算器,支持命令行和基于 RDKit 的库工作流,可生成用于化学信息学分析和下游模型评估的描述符表。

开源Python

分子性质预测 · 化学信息学

相关指南

技能

化学 AI Skills 是什么?科研 Agent 的能力模块详解

了解化学 AI Skills 如何作为可复用的流程模块:`SKILL.md` 包含什么内容,宿主如何加载指令,Skills 与 MCP 和智能体有何区别,以及如何选择、组合和评估它们,同时避免将操作指导误认为科学验证。

概览

MCP、Skills、Agents 和 APIs 有什么区别?

了解 API、MCP 服务器、Skills 和智能体在化学工作流中如何分别承担接口、流程指导、执行与规划职责,以及如何选择或组合它们,而不把访问能力与科学有效性混为一谈。