GenMol
Generate novel molecules using masked discrete diffusion on SAFE representations.
GenMol generates novel, drug-like small molecules by working directly on fragment-level SAFE tokens, giving you structurally new candidates when your existing compounds don't fit. Reach for it as the preferred generator when you want de novo molecules, fragment-constrained designs, or goal-directed optimization; where REINVENT steers generation with reinforcement learning toward a scoring objective, GenMol samples via masked discrete diffusion. See what you can achieve for the full set.
What GenMol does
GenMol is NVIDIA's generative chemistry model that creates novel drug-like molecules using masked discrete diffusion on SAFE (Sequential Attachment-based Fragment Embedding) representations. Unlike SMILES-based generators, GenMol operates directly on fragment-level tokens, enabling fine-grained control over molecular substructures during generation.
Citations
Noutahi E, Gabellini C, Craig M, Lim JSC, Tossou P. Gotta be SAFE: a new framework for molecular design. Digital Discovery. 2024;3(4):796-804. doi: 10.1039/D4DD00019F
Lee S, Kreis K, Veccham SP, Liu M, Reidenbach D, Peng Y, Paliwal S, Nie W, Vahdat A. GenMol: A Drug Discovery Generalist with Discrete Diffusion. 2025. arXiv: 2501.06158
Key achievements
- Fragment-native generation: Operates on SAFE notation, which decomposes molecules into chemically meaningful fragments with attachment points, rather than character-level SMILES
- Controllable design: Supports nine modes from fully unconstrained generation to fragment-constrained and goal-directed optimization
- High reported validity: the model's authors report 95.6-100% chemically valid outputs depending on the sampling temperature and randomness settings. On this platform
enforce_validityis on by default, so unparseable molecules are removed from the returned set while the validity rate still reports what the model generated - SAFE fragment auto-ingestion: Generated molecules are automatically decomposed into fragments and ingested into the project fragment library for reuse
Generated molecules are not validated
Nothing about a generated molecule has been measured. No published study has synthesized or assayed a GenMol-designed compound, and NVIDIA's own model card notes that "the model may produce molecules that are difficult or impossible in synthesis". Read how GenMol results compare to the bench before acting on a result.
Core capabilities
- De novo generation: Generate entirely novel molecules without seed structures
- Lead optimization: Create analogs of a starting molecule within a specified Tanimoto similarity threshold
- Scaffold decoration: Attach drug-like fragments to a core scaffold using SAFE attachment points
- Linker design: Connect two fragments by generating a molecular linker between them
- Motif extension: Grow molecules outward from a conserved motif or pharmacophore
- PMO (Practical Molecular Optimization): Goal-directed generation targeting specific oracle scores (QED, GSK3B, JNK3, DRD2, etc.)
- Fragment-constrained generation: Fix specific SAFE fragments while allowing the rest of the molecule to be generated freely
Technical approach
GenMol uses a masked discrete diffusion process adapted for molecular generation:
- Forward process: Molecular SAFE tokens are progressively masked with noise, replacing fragment tokens with a [MASK] token
- Reverse process: A trained transformer predicts the original tokens at each masked position, iteratively denoising the sequence
- Sampling: Multiple denoising steps produce candidate molecules, which are decoded from SAFE back to SMILES
- Property computation: each molecule is parsed with RDKit, flagged valid or invalid, and annotated with QED, molecular weight, logP, TPSA, hydrogen-bond donors and acceptors, rotatable bonds and ring count, plus a synthetic-accessibility score from RDKit's SA_Score
- Quality filtering: the requested filters (
enforce_validityandenforce_uniquenesson by default, plusapply_druglikeness_filter,min_qedandmax_sa_scorewhen you set them) are applied to the assembled set, so the metrics, the preview and the artifacts all describe the molecules you receive
The model learns the distribution of its training corpus, which lets it generate structurally novel strings that resemble that corpus. Whether a given molecule satisfies medicinal chemistry constraints is a question for your own filters and a chemist, not something generation establishes.
When to use GenMol
Primary use cases
Hit generation campaigns
- Target-agnostic exploration: Generate diverse chemical libraries for phenotypic screening
- Chemical space expansion: Explore regions of chemical space underrepresented in existing compound libraries
- Fragment-based drug design: Start from fragment hits and grow them into drug-like molecules
Lead optimization
- Analog generation: Create structurally similar analogs of a lead compound to explore SAR
- Property optimization: Generate molecules targeting specific property profiles (logP, MW, TPSA)
- Scaffold hopping: Maintain pharmacophoric features while changing the core scaffold
Fragment-based workflows
- Scaffold decoration: Attach new R-groups to a validated scaffold
- Linker design: Connect fragment hits identified by fragment screening
- Motif extension: Grow molecules from a pharmacophore motif while maintaining key interactions
Goal-directed optimization (PMO)
- Oracle-guided generation: Optimize molecules toward specific computational endpoints
- Multi-objective optimization: Balance multiple property objectives simultaneously
- Benchmark comparison: Evaluate generation performance against established PMO benchmarks
Webapp integration and workflow
Input methods in .bloom*
De novo mode (no input required):
- Select "de novo" mode and set the desired molecule count
- Optionally configure quality filters (drug-likeness, SA score thresholds)
- Submit to generate a diverse set of novel molecules
Scaffold/fragment modes:
- Enter a SMILES string for the starting scaffold, fragment, or seed molecule
- For linker design, provide two fragment SMILES separated by the designated delimiter
- For lead optimization, provide a reference SMILES and a similarity threshold (0.0-1.0)
From previous jobs:
- Import scaffolds or fragments from fragment library, PubChem lookups, or other GenMol runs
- Chain from fragment extraction or fragment search results
- Provenance tracking maintains connection to the original data source
Advanced job configuration
Generation parameters:
- num_molecules: Number of molecules to generate (1-10,000)
- num_steps: Diffusion steps per molecule (higher = slower but more diverse)
- temperature: Sampling temperature controlling diversity vs. quality tradeoff
- quality_filter: Enable/disable automatic drug-likeness and validity filtering
Mode-specific parameters:
- similarity_threshold (lead optimization): Minimum Tanimoto similarity to seed molecule
- oracle (PMO mode): Target scoring function (qed, gsk3b, jnk3, drd2, etc.)
- fragment_constraints (fragment modes): SAFE-encoded fixed fragments
Integration with .bloom* ecosystem
Upstream data sources
Fragment libraries:
- Project fragment library (SAFE fragments from previous jobs)
- PubChem substructure search results
- Fragment extraction from docking hits
Compound databases:
- PubChem compound lookup for seed molecules
- ChEMBL activity data for lead optimization starting points
- Previous GenMol runs for iterative optimization
Downstream applications
Property prediction:
- ADMET-AI and ADMETLab3 for ADMET property screening
- DeepChem for custom property prediction models
- ProTox-3 for toxicity estimation
Synthesis planning:
- AiZynthFinder for retrosynthetic analysis of generated molecules
- ZINC for purchasability checks
- Compound Passport for comprehensive drug-likeness assessment
Structural hypotheses:
- DiffDock to propose a binding pose for a generated molecule — a geometric hypothesis, not evidence of binding
- MM-GBSA to minimize a docked complex and report its energy. It returns no binding free energy on this platform, so it cannot rank affinity
Workflow chaining
- Feeds into: ADMET-AI/ADMETLab3 (screening), AiZynthFinder (synthesis), DiffDock (docking), Compound Passport
- Accepts from: Fragment library (scaffolds), PubChem (starting molecules), fragment extraction (fragments)
- SAFE fragments: Generated molecules natively emit SAFE notation and are auto-ingested into the fragment library
Best paired with
- ADMET prediction: screen generated molecules for predicted ADMET liabilities before synthesis
- Retrosynthetic analysis: check synthetic feasibility with AiZynthFinder — the only makeability check available here
- Molecular docking: propose a binding pose with DiffDock. Docking does not establish that a compound binds
- Property prediction: score custom endpoints with DeepChem models
Scope and limitations
Supported inputs
Molecule formats
- SMILES: Standard single-line notation for all modes requiring seed molecules
- SAFE: Native SAFE notation with attachment points for fragment-constrained modes
- No input (de novo): Fully unconstrained generation requires no seed
Size constraints
- Molecule count: 1-10,000 per job
- SMILES length: Up to ~200 characters for seed molecules
- Fragment count: Up to 10 fixed fragments per constrained generation
Generation limitations
Quality considerations
- Chemical validity: the authors report 95.6-100% of raw outputs valid at their published settings. With
enforce_validityon (the default) invalid molecules are removed from the returned set, and the validity rate reports the generated figure - Drug-likeness: not all generated molecules satisfy Lipinski's Rule of Five.
apply_druglikeness_filteris off by default andmin_qedis unset, so set them if you want that bound enforced rather than reported - Novelty: molecules may resemble training data, and
novelty_rateis not computed on this platform. Check for IP conflicts with prior art searches - Synthetic accessibility: some generated molecules will be difficult or impossible to synthesize.
sa_scoreis a structural heuristic that ranks within a series better than across series, so use AiZynthFinder for a real retrosynthesis check before you act on it
Mode-specific constraints
- Lead optimization: Very high similarity thresholds (>0.9) reduce diversity significantly
- Linker design: Linker length is not directly controllable; results may include short or long linkers
- PMO mode: Oracle-guided generation may converge to narrow regions of chemical space
- Scaffold decoration: Decoration points must be specified as SAFE attachment points
Performance characteristics
Speed and scaling
- Typical runtime: 30 seconds to 5 minutes depending on molecule count and diffusion steps
- Scaling: Roughly linear with molecule count
- GPU acceleration: All generation runs on GPU for fast diffusion sampling
Reproducibility
- Seed parameter: Set a random seed for reproducible generation runs
- Temperature sensitivity: Small temperature changes can significantly affect output diversity
- Stochastic process: Without a fixed seed, results vary between runs
Chat usage
Example prompts
- "Generate 100 molecules using GenMol de novo mode"
- "Use GenMol to decorate this scaffold with drug-like fragments: c1ccc(cc1)N"
- "Run GenMol lead optimization on gefitinib with 0.7 similarity threshold"
- "Generate 50 linkers connecting these two fragments"
- "Run PMO optimization targeting QED > 0.7 with GenMol"
Workflow chaining
- Feeds into: ADMET-AI/ADMETLab3 (screening), AiZynthFinder (synthesis), Compound Passport
- Accepts from: Fragment library (scaffolds for decoration), PubChem (starting molecules for lead optimization)
- SAFE fragments: Generated molecules natively emit SAFE notation and are auto-ingested into the fragment library
FAQ
Read next
Reading a GenMol result against the bench
Why every published GenMol figure is an in silico benchmark, and what that means for molecules you are deciding whether to make.
REINVENT
Design molecules with REINVENT 4 reinforcement learning.
AiZynthFinder
Break a target SMILES into purchasable starting materials.
Which tool?
Match a scientific goal to the tool that answers it.
Workflows
Guided pipelines and copy-and-adapt prompt recipes for common goals.
Was this page helpful?