news 2026/9/18 7:07:10

基于 fairchem 的 ODAC25 数据集全解:近 7000 万次 DFT 计算驱动的 MOF 直接空气捕获吸附势能库

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
基于 fairchem 的 ODAC25 数据集全解:近 7000 万次 DFT 计算驱动的 MOF 直接空气捕获吸附势能库

基于 fairchem 的 ODAC25 数据集全解:近 7000 万次 DFT 计算驱动的 MOF 直接空气捕获吸附势能库

【免费下载链接】ocpFAIR Chemistry's library of machine learning methods for chemistry项目地址: https://gitcode.com/GitHub_Trending/oc/ocp

ODAC25(Open DAC 2025)是 FAIR Chemistry fairchem 仓库中用于直接空气捕获(Direct Air Capture, DAC)吸附剂发现的旗舰数据集,包含近 7000 万次 DFT 单点计算,覆盖 CO₂、H₂O、N₂、O₂ 四种吸附质在近 15000 个金属有机框架(MOF)中的吸附构型。本文以 docs/dac/datasets/odac25.md 为骨架,结合仓库中的模型配置、评测配置、VASP 计算脚本与配套资源,系统讲解该数据集的规模与构成、*.aselmdb数据格式、PBE+D3 计算标签、下载与加载方式、配套预训练模型选择以及 MOF 吸附能计算的完整实战方案。

数据集概览

ODAC25 数据集的核心属性如下表所示,这些属性直接决定了它面向的训练任务(能量与力的回归)和适用场景(DAC 吸附剂高通量筛选):

属性
规模约 7000 万次 DFT 计算
领域金属有机框架(MOFs)
吸附质CO2、H2O、N2、O2
MOF 结构数约 15000 个
标签总能(eV)、原子受力(eV/Å)
理论级别PBE+D3(VASP)
许可CC BY 4.0
下载Hugging Face 平台 facebook/ODAC25 仓库

ODAC25 包含 CO₂、H₂O、N₂、O₂ 四种吸附质在近 15000 个 MOF 中的吸附体系 DFT 单点计算结果,可用于训练面向 DAC 应用的 SOTA 机器学习原子间势(MLIP)。所有结构均带有使用 VASP 以 PBE+D3 泛函计算得到的总能(eV)与原子力(eV/Å)。数据集的完整信息可在官方 Hugging Face 站点获取;使用过程中如有问题,可在本仓库提交 GitHub Issue。

从 ODAC23 到 ODAC25:一次规模与化学多样性的双重扩展

ODAC25 是 ODAC23 数据集 的显著扩展版本。仓库在 ODAC23 文档中明确标注其为Deprecated(已弃用),并建议所有新项目改用 ODAC25。ODAC23 提供约 100 万条 S2EF 结构(约 1 万条 IS2RE 结构)、仅覆盖 CO₂ 吸附质,而 ODAC25 将规模提升至近 7000 万条 DFT 计算并扩展至四种吸附质。

在化学与构型多样性方面,ODAC25 的扩展体现在三个方向:

  1. 功能化 MOF(functionalized MOFs):引入官能团修饰的框架结构,拓展配体化学空间;
  2. 高能 GCMC 放置构型(high-energy GCMC-derived placements):通过巨正则蒙特卡洛(GCMC)模拟生成高能吸附位点构型,覆盖能量更高的吸附状态;
  3. 合成生成框架(synthetically generated frameworks):使用合成方法程序化生成的新颖框架结构。

这种多样性设计使得在 ODAC25 上训练的模型对未见过的 MOF 化学环境具有更好的外推能力,这正是 DAC 吸附剂筛选任务中 OOD(out-of-distribution)泛化所必需的。

数据格式:ASE DB 兼容的*.aselmdb文件

ODAC25 数据集以ASE DB 兼容的 LMDB 文件*.aselmdb)形式提供。LMDB(Lightning Memory-Mapped Database)是一种内存映射数据库,适合存储海量结构-标签对,并支持随机访问,配合 PyTorch DataLoader 可高效进行批量训练与评测。

仓库中用于评测的配置直接体现了这种格式的加载方式。以 odac-s2ef-id.yaml 为例,评测流程通过AseDBDataset加载aselmdb文件,并用AdsorptionSinglePointRunner执行单点能量/力预测:

runner: _target_: fairchem.core.components.calculate.AdsorptionSinglePointRunner calculator: ${calculator} evaluate_total_energy: False adsorption_energy_model: False input_data: _target_: fairchem.core.datasets.atoms_sequence.AtomsDatasetSequence dataset: _target_: fairchem.core.datasets.ase_datasets.AseDBDataset config: src: ${cluster.data_root_dir}/odac/s2ef/test reducer: _target_: fairchem.core.components.benchmark.JsonDFReducer target_data_keys: ["energy", "forces"] benchmark_name: ${benchmark_name} index_name: sid

从该配置可以确认两点实现事实:

  • 加载入口AseDBDataset(位于 ase_datasets.py)是读取*.aselmdb的标准数据集类,通过src指向数据文件所在目录;
  • 评测目标JsonDFReducertarget_data_keys: ["energy", "forces"]明确对应数据集的两种标签,评测指标以sid作为结构索引。

同目录下的 odac-s2ef-ood.yaml 采用了完全相同的 runner/reducer 结构,仅将数据源切换为ood_linker_topology这类域外测试集,说明 ODAC 系列数据遵循统一的"域内 + 多域外"评测约定。

标签与计算设置:PBE+D3(VASP)单点计算

数据集所有结构均标注了总能(eV)与原子力(eV/Å),计算级别为PBE+D3(VASP)。仓库中的 setup_vasp.py 脚本展示了与这一理论级别一致的 VASP 参数设置,可用于复现 MOF 与 MOF+吸附质体系的弛豫:

calc = Vasp( nwrite=2, istart=0, gga="PE", # PBE 泛函 ivdw=12, # DFT-D3 色散修正 encut=600.0, # 平面波截断能 600 eV ismear=0, sigma=0.2, ispin=2, # 自旋极化 prec="Accurate", ediff=1e-5, ediffg=-0.05, nsw=2000, ibrion=2, isif=3, # 空 MOF:同时弛豫原子位置与晶胞 kpts=((1, 1, 1),), # 单 k 点(大晶胞 MOF 的常见选择) gamma=True, isym=0, ... )

脚本中gga="PE"对应 PBE 泛函、ivdw=12对应 DFT-D3 色散修正,与数据集声明的 PBE+D3 理论级别一致;脚本同时提供了两类弛豫模式:空 MOF 使用isif=3(同时弛豫原子位置与晶胞参数),已预弛豫的 MOF+吸附质体系使用isif=2(仅弛豫原子位置)。需要注意的是,该脚本面向 ODAC 系列数据生成过程中的结构弛豫流程;而 ODAC25 数据集中直接提供的标签来自单点计算(single-point calculations),即对固定几何结构计算能量与力。

下载与加载

ODAC25 数据集托管于 Hugging Face 平台facebook/ODAC25仓库。除直接下载外,仓库还提供了统一的批量下载脚本。对于 ODAC 系列的大型数据文件,可从仓库根目录运行:

python src/fairchem/core/scripts/download_large_files.py odac

该命令由 src/fairchem/data/odac/README.md 文档说明,用于下载 ODAC 相关的大型数据资源(包括超胞信息等辅助文件)。下载完成后,即可通过上文的AseDBDataset配置直接接入训练或评测管线,无需额外的格式转换。

配套预训练模型:UMA 与 eSEN 的选择策略

针对 ODAC25 数据集,仓库在 docs/dac/models.md 中发布了两套预训练模型,并给出了明确的选型建议:

吸附质推荐模型说明
CO₂、H₂OUMA在全部 FAIR Chemistry 数据集(含 ODAC25 子集)上训练
N₂、O₂eSEN(ODAC25 专用)仅在 ODAC25 上训练

选型逻辑非常清晰:UMA 只在 CO₂ 和 H₂O 两种吸附质上训练过,且对这两种吸附质与 eSEN 性能相当;由于 UMA 未覆盖 N₂ 和 O₂,这两类吸附质强烈建议使用专门的 eSEN 模型。

从 pretrained_models.json 可以确认 eSEN 模型的具体注册信息:

"esen-sm-filtered-odac25": { "filename": "esen_sm_odac25_filtered.pt", "repo_id": "facebook/ODAC25", ... "element_refs": { "filename": "odac_elem_refs.yaml" } }, "esen-sm-full-odac25": { "filename": "esen_sm_odac25_full.pt", "repo_id": "facebook/ODAC25", ... }

可见 eSEN 提供了esen-sm-filtered-odac25(过滤版)与esen-sm-full-odac25(完整版)两个变体,且均从facebook/ODAC25拉取权重,并配套odac_elem_refs.yaml元素参考能量文件用于能量标签的归一化对齐。ODAC25 相关论文与模型的引用信息详见 models.md 与 fair_chemistry_papers.md。

实战应用:基于 ODAC 数据的 MOF 吸附能计算

ODAC 系列数据集与预训练模型最典型的应用是计算 MOF 中的气体吸附能。仓库在 adsorption_energy.md 教程中给出了完整方案。对于单个吸附质分子在 MOF 中的吸附能,定义为:

$$ E_{\mathrm{ads}} = E_{\mathrm{MOF+CO2}} - E_{\mathrm{MOF}} - E_{\mathrm{CO2}} $$

其中每个能量项均为对应化学体系弛豫态的能量。

刚体 MOF 场景:Mg-MOF-74 中的 CO₂ 吸附能

教程首先以 Mg-MOF-74(CSD 码OPAGIX,文献报道 CO₂ 吸附能约 -0.40 eV)为例演示刚体假设下的单点计算。加载预训练模型并挂载到 ASE 结构上:

from fairchem.core import FAIRChemCalculator, pretrained_mlip predictor = pretrained_mlip.get_predict_unit("uma-s-1p2") calc = FAIRChemCalculator(predictor, task_name="odac") mof_co2.calc = calc mof.calc = calc co2.calc = calc E_ads = ( mof_co2.get_potential_energy() - mof.get_potential_energy() - co2.get_potential_energy() ) print(f"Adsorption energy of CO2 in Mg-MOF-74: {E_ads:.3f} eV")

其中task_name="odac"将计算器指向 ODAC 任务专用的能量归一化与元素参考设置。教程配套的输入结构文件位于 structures 目录(OPAGIX.cifOPAGIX_w_CO2.cifco2.xyz)。

柔性 MOF 场景:WOBHEB 中的 H₂O 吸附能

刚体假设会忽略吸附质诱导的 MOF 形变。教程进一步演示了柔性 MOF 处理流程:先分别弛豫空 MOF 与 MOF+吸附质体系,再从吸附态几何中剥离吸附质、对空 MOF 进行二次弛豫,并以空 MOF 原始弛豫能量与二次弛豫能量的较小者作为参考能量 $E_{\mathrm{MOF}}$(对应代码中的E_mof = min(E_mof_empty, E_mof_rerelax))。以 CSD 码WOBHEB的缺陷结构WOBHEB_0.11_0为例,H₂O 吸附能计算结果与 DFT 参考值(-0.699 eV)高度接近。

教程还将吸附能分解为宿主-客体相互作用项与 MOF 形变项:

$$ E_{\mathrm{int}} = E_{\mathrm{MOF+H2O}}(r_{\mathrm{MOF+H2O}}) - E_{\mathrm{MOF}}(r_{\mathrm{MOF+H2O}}) - E_{\mathrm{H2O}}(r_{\mathrm{MOF+H2O}}) $$

$$ E_{\mathrm{MOF,deform}} = E_{\mathrm{MOF}}(r_{\mathrm{MOF+H2O}}) - E_{\mathrm{MOF}}(r_{\mathrm{MOF}}) $$

当 MOF 视为刚体时 $E_{\mathrm{int}}$ 即等于 $E_{\mathrm{ads}}$;若不考虑吸附质诱导形变,会高估吸附能的绝对大小。这一完整工作流正是 ODAC25 大规模数据所要支撑的核心物理量预测。

仓库配套资源

除数据集本身外,src/fairchem/data/odac/ 目录还沉淀了 ODAC 系列的衍生产物:

  • promising_mof/:ODAC 论文发现的高潜力 MOF 清单,包含完整(pristine)与缺陷(defective)结构的 CSV 列表及对应 CIF 结构文件(promising_pristine_MOFs.csvpromising_defective_MOFs.csv),可直接用于下游筛选验证;
  • force_field/:经典力场(FF)对标分析资源,README 说明其包含 FF 交互能计算数据(data_w_ml.json)、复现论文 Figure 5 的 FF_analysis.py 脚本,以及基于 LAMMPS Interface 与 UFF4MOF 力场的 CO₂/H₂O 示例计算(FF_calcs/目录下的in.lammpsdata.frame等文件);
  • setup_vasp.py:上文提到的 VASP 弛豫配置脚本,支持从 CIF 生成 MOF 与 MOF+吸附质两套 VASP 输入。

许可与引用

ODAC25 数据集采用Creative Commons Attribution 4.0 License(CC BY 4.0)许可发布。任何使用该数据集或相关模型的出版物,请引用以下文献:

@misc{sriram2025odac25, title={The Open DAC 2025 Dataset for Sorbent Discovery in Direct Air Capture}, author={Anuroop Sriram and Logan M. Brabson and Xiaohan Yu and Sihoon Choi and Kareem Abdelmaqsoud and Elias Moubarak and Pim de Haan and Sindy Löwe and Johann Brehmer and John R. Kitchin and Max Welling and C. Lawrence Zitnick and Zachary Ulissi and Andrew J. Medford and David S. Sholl}, year={2025}, eprint={}, archivePrefix={arXiv}, primaryClass={}, url={}, }

综合来看,ODAC25 凭借其近 7000 万次 DFT 计算的规模、四种吸附质与功能化/合成 MOF 带来的化学多样性,以及*.aselmdb标准格式与 fairchem 数据管线(AseDBDataset)的无缝衔接,已成为 DAC 吸附剂筛选场景下训练与评测 MLIP 的核心数据资产——配合 UMA/eSEN 预训练模型,开发者可直接在 MOF 体系上完成吸附能预测、OOD 泛化评测与高潜力吸附剂初筛。

【免费下载链接】ocpFAIR Chemistry's library of machine learning methods for chemistry项目地址: https://gitcode.com/GitHub_Trending/oc/ocp

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/18 7:07:04

抖音下载器完全指南:从单条无水印视频到批量收藏一次讲清

抖音下载器完全指南:从单条无水印视频到批量收藏一次讲清 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback su…

作者头像 李华
网站建设 2026/9/18 7:05:53

Claude Code 从安装配置到实战:高频报错排查与效率技巧

1. 为什么写“Claude-Red”这份实践记录Claude从去年开始就成了我工作台上离不开的搭档。所谓“Claude-Red”,算是我给自己这套实操笔记起的内部代号,“Red”一方面代表踩坑时标红的那些红线,另一方面也代表一个个真实跑通过的案例记录。今天…

作者头像 李华
网站建设 2026/9/18 7:04:51

MiroFish:本地文件元数据索引与关系视图工具

MiroFish 这个名字第一次被我注意到的时候,我脑子里蹦出来的画面是一条在镜面水池里游动的鱼——安静、自洽、只观察自己周围那一小片水域。后来跟几个做本地工具的朋友聊起来,发现大家对这个代号的理解出奇一致:它不是一个要冲到聚光灯下的产…

作者头像 李华
网站建设 2026/9/18 7:03:30

5G NR PDCCH与DCI:CORESET、盲检、聚合等级与排障

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/18 7:03:04

给E900V21D电视盒刷Armbian:S905L3-B盒改Linux服务器完整教程

给E900V21D电视盒刷Armbian:S905L3-B盒改Linux服务器完整教程 【免费下载链接】amlogic-s9xxx-armbian Supports running Armbian on Amlogic, Allwinner, and Rockchip devices. Support a311d, s922x, s905x3, s905x2, s912, s905d, s905x, s905w, s905, s905l, r…

作者头像 李华