RDKit

RDKit is a cheminformatics toolkit commonly used to parse molecules, standardize chemical records, compute descriptors and fingerprints, build molecular graphs, search substructures, and generate conformers. In this wiki, RDKit belongs under reusable molecular modeling concepts, not under paper notes.

The main role of RDKit in ML workflows is to define a deterministic transformation:

where is a raw record such as SMILES or SDF, is a standardized molecule, is a feature such as a graph, fingerprint, descriptor vector, or conformer, and is metadata about the protocol.

Common Uses

UseOutputMain Risk
parsing and sanitizationmolecule objectsilent drop or repair policy changes dataset
standardizationcanonical identityover-collapsing salts, tautomers, stereo, or charge
fingerprintingbit/count vectorradius, bit length, chirality, and collisions change similarity
descriptorsnumeric feature vectormissing/NaN handling and version drift
substructure searchmatch setquery semantics and aromaticity policy
conformer generation3D coordinatesseed, protonation, force field, and failure policy dominate

Standardization Boundary

RDKit can clean up and canonicalize molecular records, but the chemical policy is still a modeling decision. A typical pipeline is:

This pipeline should run before deduplication and split assignment. If split keys are built from raw records but features are built from standardized records, equivalent molecules can appear on both sides of train/test.

Featurization Contract

For every RDKit-derived feature, record:

FieldExample
input identitycanonical SMILES or standardized molecule hash
standardization protocolsalt, tautomer, charge, stereo policy
feature familyMorgan fingerprint, descriptor vector, graph, conformer
feature parametersradius, bit length, count/binary, chirality flag
software versionRDKit version and wrapper code version
failure policyparse failure, sanitization failure, conformer failure
cache keyhash of standardized molecule plus featurizer version

The cache key should change whenever either molecule identity or featurizer parameters change:

ML Checks

  • Standardize before deduplication and split construction.
  • Compute scaffold or cluster split on the same standardized molecule used by the model.
  • Do not silently drop invalid molecules without recording denominator changes.
  • State whether chirality and bond stereo are preserved.
  • State fingerprint radius, bit length, count/binary mode, and chirality flag.
  • State whether conformer generation is deterministic, seeded, minimized, and available at inference.
  • Re-run cheap RDKit baselines when the split, standardization, or featurizer changes.

Where It Does Not Belong

RDKit itself is not a paper result. Put reusable protocol notes here. Put a paper under Papers only when the page is about a specific method, benchmark, or empirical claim.