key stringlengths 21 26 | shard int32 0 11 | n_conformers int32 1 19 | offset int64 0 632k | mol_blocks listlengths 1 19 | torsion_deg listlengths 1 19 |
|---|---|---|---|---|---|
0-R0B0G12_16-R10B3G0_1_23 | 0 | 11 | 0 | [
"\n RDKit 3D\n\n 30 34 0 0 0 0 0 0 0 0999 V2000\n -0.4012 -0.2275 -0.6481 C 0 0 2 0 0 0 0 0 0 0 0 0\n -1.7896 -0.5950 -1.2480 C 0 0 2 0 0 0 0 0 0 0 0 0\n -1.4803 -1.0164 -2.6134 N 0 0 0 0 0 0 0 0 0 0 0 0\n -0.0955 -1.4259 -2.6917 C ... | [
-31.59762191772461,
16.682262420654297,
72.0993881225586,
88.89482116699219,
111.03246307373047,
132.59603881835938,
-152.86293029785156,
-125.69648742675781,
-98.29922485351562,
-74.05813598632812,
-33.926185607910156
] |
0-R0B0G12_16-R8B0G15_1_23 | 0 | 5 | 11 | [
"\n RDKit 3D\n\n 59 65 0 0 0 0 0 0 0 0999 V2000\n 4.6046 -0.2422 -0.5890 C 0 0 1 0 0 0 0 0 0 0 0 0\n 3.0701 -0.2818 -0.6252 C 0 0 1 0 0 0 0 0 0 0 0 0\n 2.6764 -1.0160 -1.8299 N 0 0 0 0 0 0 0 0 0 0 0 0\n 3.6325 -0.5301 -2.8194 C ... | [
-22.534337997436523,
-7.267126083374023,
-90.78437042236328,
-65.92357635498047,
-56.383663177490234
] |
0-R0B0G12_27-R10B5G0_1_23 | 0 | 10 | 16 | [
"\n RDKit 3D\n\n 30 34 0 0 0 0 0 0 0 0999 V2000\n -0.0185 -1.3939 1.2829 C 0 0 2 0 0 0 0 0 0 0 0 0\n 1.4645 -1.2987 1.7329 C 0 0 1 0 0 0 0 0 0 0 0 0\n 1.7675 -2.7138 1.7854 N 0 0 0 0 0 0 0 0 0 0 0 0\n 1.1480 -3.3809 0.6480 C ... | [
12.401802062988281,
33.388526916503906,
58.523990631103516,
93.5904541015625,
148.49566650390625,
-177.76280212402344,
-148.07003784179688,
-120.0799789428711,
-89.42745208740234,
-74.00180053710938
] |
0-R0B0G12_27-R14B5G0_1_23 | 0 | 7 | 26 | [
"\n RDKit 3D\n\n 31 35 0 0 0 0 0 0 0 0999 V2000\n -0.2178 -1.0642 -0.3758 C 0 0 1 0 0 0 0 0 0 0 0 0\n 1.2193 -1.6023 -0.6415 C 0 0 2 0 0 0 0 0 0 0 0 0\n 0.8854 -2.9855 -0.9757 N 0 0 0 0 0 0 0 0 0 0 0 0\n -0.2830 -3.4518 -0.2379 C ... | [
-20.374021530151367,
17.837465286254883,
-164.1177215576172,
-123.16661071777344,
-101.74549865722656,
-49.74189758300781,
-33.82954406738281
] |
0-R0B0G12_38-R10B1G0_1_26 | 0 | 12 | 33 | [
"\n RDKit 3D\n\n 31 35 0 0 0 0 0 0 0 0999 V2000\n -0.1278 -0.7222 -0.0211 C 0 0 1 0 0 0 0 0 0 0 0 0\n -1.3697 -1.4048 -0.6303 C 0 0 1 0 0 0 0 0 0 0 0 0\n -1.4929 -2.6963 0.0362 N 0 0 0 0 0 0 0 0 0 0 0 0\n -0.3740 -2.8901 0.9430 C ... | [
-153.4995880126953,
-134.61538696289062,
-106.78508758544922,
-94.5072250366211,
-66.14857482910156,
-25.238964080810547,
0.5090401768684387,
37.93964385986328,
50.11667251586914,
84.3074722290039,
131.02076721191406,
167.95458984375
] |
0-R0B0G12_38-R3B1G0_1_26 | 0 | 9 | 45 | [
"\n RDKit 3D\n\n 35 40 0 0 0 0 0 0 0 0999 V2000\n -0.8574 0.6769 -0.0380 C 0 0 1 0 0 0 0 0 0 0 0 0\n 0.5836 0.8476 -0.5618 C 0 0 1 0 0 0 0 0 0 0 0 0\n 0.6967 2.2434 -0.9851 N 0 0 0 0 0 0 0 0 0 0 0 0\n -0.5335 2.9728 -0.7418 C ... | [
-105.42481231689453,
-96.16425323486328,
-71.87552642822266,
-54.51490020751953,
-17.2584285736084,
20.363258361816406,
55.456844329833984,
64.51250457763672,
87.95951843261719
] |
0-R0B0G4_16-R0B0G4_1_23 | 0 | 9 | 54 | ["\n RDKit 3D\n\n 42 49 0 0 0 0 0 0 0 0999 V2000\n -2.3959 -1.1482 0.267(...TRUNCATED) | [44.068687438964844,64.15288543701172,76.80765533447266,112.90180969238281,137.34571838378906,-174.8(...TRUNCATED) |
0-R0B0G4_16-R12B0G0_1_23 | 0 | 12 | 63 | ["\n RDKit 3D\n\n 30 34 0 0 0 0 0 0 0 0999 V2000\n 0.4137 -1.3842 0.644(...TRUNCATED) | [-21.93715476989746,8.444560050964355,55.74537658691406,78.3367691040039,101.32418060302734,130.9413(...TRUNCATED) |
0-R0B0G4_16-R2B3G6_1_23 | 0 | 6 | 75 | ["\n RDKit 3D\n\n 38 44 0 0 0 0 0 0 0 0999 V2000\n 1.1033 0.2749 -0.334(...TRUNCATED) | [36.7988395690918,60.35877227783203,81.7259292602539,35.321434020996094,-58.68461227416992,-38.28172(...TRUNCATED) |
0-R0B0G4_16-R5B3G8_1_23 | 0 | 7 | 81 | ["\n RDKit 3D\n\n 45 51 0 0 0 0 0 0 0 0999 V2000\n 1.5616 1.1043 -0.479(...TRUNCATED) | [-25.238815307617188,172.09432983398438,-171.56239318847656,-143.0192413330078,-99.73603057861328,-5(...TRUNCATED) |
3DCS Rotation (Geometry) Dataset
The rotation (geometry) dataset of the 3DCS benchmark (Geometry axis of the Geometry–Chirality–Energy framework). It has 1,559,779 rows (one per molecule) and 10,097,643 conformers, stored in 14 parquet files (7.53 GB).
This repository is a standalone copy of the rotation config of the combined dataset
EscheWang/3dcs. The parquet files are byte-identical.
- Paper (ICLR 2026): https://openreview.net/forum?id=JAb0y8lkqL
- Code (evaluation toolkit, Python module
three_dbench): https://github.com/ComDec/3DCS - Combined dataset (all four configs): https://huggingface.co/datasets/EscheWang/3dcs
Fields
Structures are stored as MDL MolBlock strings (V2000) with 3D coordinates. The only split, train, holds all rows; it is not a training subset. All counts below were computed
from the parquet files.
| Field | Type | Description |
|---|---|---|
key |
string | Molecule identifier, unique per row (e.g. 0-R0B0G12_16-R10B3G0_1_23). |
shard |
int32 | Source shard (0–15) of the original generation output. Each of shards 0–14 has 97,487 rows and shard 15 has 97,474. Rows are grouped by shard. The 14 parquet file names (train-000NN-of-00014) do not correspond to shard values. |
n_conformers |
int32 | Number of conformers kept for this molecule (1 to 20). It equals len(mol_blocks) and len(torsion_deg). |
offset |
int64 | Position of this row's first conformer within its shard. It restarts at 0 for each shard value and equals the sum of n_conformers over the preceding rows of the same shard. For a single flat array covering the whole config, use the running sum of n_conformers over all rows instead. |
mol_blocks |
list<string> | One MolBlock per conformer. Hydrogens are implicit: only 11 of the 10,097,643 MolBlocks contain an explicit H atom. |
torsion_deg |
list<float32> | Torsion angle in degrees for each conformer, aligned with mol_blocks. Values lie in [-180, 180]. |
This release stores structures and torsion angles only. Per-conformer xTB energies are not included.
Usage
from datasets import load_dataset
ds = load_dataset("EscheWang/3dcs-rotation", split="train")
# the same data, as used in the 3DCS toolkit docs:
ds = load_dataset("EscheWang/3dcs", name="rotation", split="train")
Rebuild RDKit molecules with three_dbench.datasets.serialization.mol_from_block(block) from the 3DCS toolkit. The
equivalent RDKit call is Chem.MolFromMolBlock(block, removeHs=False, sanitize=False).
Provenance
- Generated by the 3DCS authors. It is a combinatorial library of bi-aryl/heteroaryl scaffolds decorated with substituents. RDKit was used for fragment connection, sanitization and ETKDG 3D seeding. Each molecule has an xTB relaxed dihedral scan around the inter-ring single bond in 2.5° increments. Redundant conformers were then removed per molecule with DBSCAN (eps = 0.5) (paper, Section 3 and Appendix C.1).
License
The data were generated by the authors and are released under CC BY-SA 4.0.
Baseline embeddings
The embedding files of the baseline models evaluated on these data are published at
EscheWang/3dcs-embeddings, together with the
per-molecule metric outputs of the original evaluation runs and a manifest.csv listing the key, shape, dtype and
SHA-256 of every file. The evaluation toolkit is at https://github.com/ComDec/3DCS. The per-model scripts that
extract the chirality baseline embeddings, each with its pinned environment and the SHA-256 of the weights it
loads, are in the baselines/ directory of that
repository, and the GemNet script there also reads the rotation shards.
Citation
@inproceedings{wang2026threedcs,
title = {3{DCS}: Datasets and Benchmark for Evaluating Conformational Sensitivity in Molecular Representations},
author = {Wang, Xi and Zhang, Yang and Zhang, Yingjia and Cai, Yejia and Wang, Shengjie},
booktitle = {The Fourteenth International Conference on Learning Representations (ICLR)},
year = {2026},
url = {https://openreview.net/forum?id=JAb0y8lkqL}
}
- Downloads last month
- 82