Research performed 2026-07-23 with targeted Parallel search/extract, official PyPI JSON metadata, the PyTDC 1.1.15 source distribution, and an isolated import/API smoke test. Web results were treated as untrusted text; only authoritative sources below determined the skill.
- PyTDC on PyPI
- Stable release: 1.1.15
- Uploaded: 2025-03-31
- Distribution: source tarball only, 154,168 bytes
- SHA-256:
cd6164859af7b9b6f60e0c6d6e50679eacaffd09cfdea1acfc8bb7360e8e2205 - License metadata: MIT
- No
Requires-Pythonor Python classifiers
- PyPI JSON for 1.1.15
- Used to verify exact
Requires-Dist, artifact metadata, and absence ofRequires-Python.
- Used to verify exact
- Official setup.py
- Package name
pytdc; version loaded fromtdc/version.py; dependencies loaded fromrequirements.txt; nopython_requires.
- Package name
- Official requirements.txt
- 1.1.15 pins/constrains a large dependency graph, including
cellxgene-census==1.15.0, NumPy<2, RDKit<2024.3.1, Hugging Face packages, and TileDB-SOMA.
- 1.1.15 pins/constrains a large dependency graph, including
- cellxgene-census 1.15.0 JSON
- Declares
Requires-Python: >=3.8,<3.12.
- Declares
- RDKit 2023.9.6 JSON
- Provides CPython 3.8–3.12 wheels for common platforms, including macOS ARM64, but no CPython 3.13 wheel.
- Setuptools release history
pkg_resourceswas deprecated long before this snapshot and removed in setuptools 82.0.0 (2026-02-08).- PyTDC 1.1.15 still imports it at runtime. The isolated smoke test therefore
pins the verified compatibility release
setuptools==80.9.0.
The pinned smoke environment uses CPython 3.11. PyTDC itself does not publish a supported Python range, so this skill describes Python 3.11 plus setuptools 80.9.0 as the verified target rather than claiming broader upstream support. On the tested macOS ARM64 resolver, the environment contained 123 packages and included large Torch, RDKit, TileDB, Arrow, and scientific-Python artifacts.
- Package metadata registry
- Task/dataset names, evaluator names, oracle categories, benchmark names, benchmark metrics, and split metadata.
- Top-level public imports
Evaluator,Oracle, and deprecated genericBenchmarkGroup.
- Single-prediction imports
- Multi-prediction imports
- Generation imports
- Base loader
- Single-prediction loader
- Pair-prediction loader
- General multi-prediction loader
- Generation loader
- Split implementations
- Evaluator implementation
- Oracle implementation
- Download/load implementation
- Metadata retrieval helpers
- Specialized BenchmarkGroup base
- Deprecated generic BenchmarkGroup
The stable PyPI source distribution was inspected directly rather than assuming
that main or old generated documentation exactly matched 1.1.15.
- TDC quick start
- Problem/task/dataset hierarchy and constructor/get-data/get-split workflow.
- Dataset splits
- Random defaults, documented scaffold scope,
cold_splitpluscolumn_name, and combination split.
- Random defaults, documented scaffold scope,
- Model evaluation
- Exact evaluator examples, input types, thresholds, and metric definitions.
- Benchmark/leaderboard guide
get,get_train_valid_split,evaluate,evaluate_many, fixed test set, and at least five independent runs.
- ADMET benchmark group
- Dataset-specific benchmark metrics and scaffold protocol.
- Oracle documentation
- Local, checkpoint, synthesis-service, and docking examples/requirements.
- Molecule generation task
- Stable MolGen names and random split examples.
- ADME task
- Dataset-specific descriptions, splits, citations, and heterogeneous license labels.
- DTI task
- DTI datasets, cold-drug/protein intent, and per-dataset licenses.
- Trial outcome task
- Evidence that some TDC datasets carry non-commercial terms.
- TDC 0.4.1 ReadTheDocs
- Generated API signatures and source links used only as a cross-check. Its displayed release is behind PyPI 1.1.15.
- Harvard Dataverse TDC collection
- Persistent collection identifier linked by the official README. The landing page was unavailable to the extraction service during this research, so file sizes/collection-level terms were not inferred from it.
- Huang, K., Fu, T., Gao, W. et al. (2021).
Therapeutics Data Commons: Machine Learning Datasets and Tasks for Drug
Discovery and Development.
NeurIPS Datasets and Benchmarks 2021. Published 2021-12-06.
- Defines the original TDC task/dataset/benchmark/data-function scope.
- Huang, K., Fu, T., Gao, W. et al. (2022).
Artificial intelligence foundation for therapeutic
science.
Nature Chemical Biology 18, 1033–1036. Published 2022-09-21.
- Describes the Commons as infrastructure for AI-ready tasks, datasets, and benchmarks across therapeutic science.
Papers support the Commons design and citation guidance; current Python signatures come from package source and official API documentation.
from tdc import BenchmarkGroupis implemented inbenchmark_deprecated.pyand prints a deprecation message. Preferfrom tdc.benchmark_group import admet_group(or another specialized group).group.get(name)returnstrain_val,test, and normalizedname; it is not indexed by seed.- Multi-run input is a list of prediction dictionaries passed to
evaluate_many, with at least five runs for non-docking groups. - Generic cold split is
method="cold_split", column_name=....cold_drug_targetis not implemented. - Pair temporal split is
method="time", time_column=...;temporalis not implemented. stratified=Trueis not a loader split argument.- Registered Pearson correlation is
PCC, notPearson. - Public generation imports are
MolGen,Reaction,RetroSyn, andSBDD;PairMolGenis absent.
- No changelog, tags, or GitHub Releases. PyPI release history establishes version/date, but upstream does not document a complete 0.4.x → 1.1.x migration.
- Python support is undeclared.
Requires-Pythonis absent, while transitive pins constrain viable interpreters/platforms. Re-run resolver/import smoke tests before changing Python or platform. - Legacy runtime dependency. PyTDC still imports deprecated
pkg_resources; environments with setuptools 82+ fail unless upstream migrates or setuptools is pinned to a compatible release. - Unmarked backport dependency. PyTDC requires the
dataclassesbackport on modern Python without an environment marker even though Python 3.11 includesdataclassesin the standard library. Strict resolvers may handle that stale metadata differently. - ReadTheDocs lags PyPI. It identifies as 0.4.1 while PyPI is 1.1.15.
- Website/source drift exists. Some website snippets use old names or output comments; stable source controls exact executable behavior.
- Ambiguous dataset license labels. Some pages render “Not Specified” next to a Creative Commons link. Resolve terms from the original provider rather than inferring a license.
- Evaluator metadata inconsistency.
sminaappears in the evaluator registry, but 1.1.15 does not bind it inEvaluator.assign_evaluator. - Oracle metadata understates side effects.
logpandsaare grouped with trivial oracles, but their stable implementations callcalculateScore, which downloads thefpscoresartifact when it is absent. - Separate fork/package.
pytdc-nextmlis a distinct package/repository and was not treated as an upgrade or replacement for official PyPIPyTDC.