---
title: GenMol quickstart
description: Step-by-step guide to generating your first molecules with GenMol on the platform.
tags:
  - genmol
  - quickstart
---

You want to generate novel drug-like molecules with [GenMol](/docs/genmol); this walks you through your first run in five steps — select a mode, set the parameters, submit, and review the output. Start in **de novo** mode to see the full pipeline without needing any input molecules.

## Quick molecule generation with .bloom* platform

GenMol uses NVIDIA's masked discrete diffusion model on SAFE molecular representations to generate novel drug-like molecules. This guide walks through your first generation run, from selecting a mode to interpreting the output molecules.

## Step-by-step generation workflow

### 1. Access the GenMol tool

Navigate to **GenMol** in the .bloom* tool selector, or ask Ivy directly:

- "Generate 100 drug-like molecules with GenMol"
- "Run GenMol in de novo mode"

### 2. Select a generation mode

GenMol supports nine run modes. Choose the one that matches your workflow:

| Mode | When to use | Required input |
|------|-------------|----------------|
| **de novo** | Explore novel chemical space without constraints | None |
| **lead optimization** | Create analogs of a known hit | Seed SMILES + similarity threshold |
| **scaffold decoration** | Attach fragments to a core scaffold | Scaffold SMILES with attachment points |
| **linker design** | Connect two fragment hits | Two fragment SMILES |
| **motif extension** | Grow a pharmacophore motif into a full molecule | Motif SMILES |
| **PMO** | Optimize toward a scoring oracle | Oracle name (qed, gsk3b, etc.) |
| **fragment constrained** | Fix specific fragments, generate the rest | SAFE-encoded fixed fragments |

For your first run, start with **de novo** mode to see the full pipeline without needing input molecules.

### 3. Configure generation parameters

**Basic settings (recommended for first run):**
- **Mode**: de novo
- **Number of molecules**: 100 (good balance of speed and diversity)
- **Quality filter**: Enabled (filters out invalid and non-drug-like molecules)
- **Job name**: Enter a descriptive name or leave blank for auto-generation

**Advanced settings (via gear icon):**
- **num_steps**: Diffusion steps per molecule (default is fine for most runs)
- **temperature**: Controls diversity vs. quality tradeoff (default: 1.0; lower = more conservative, higher = more diverse)
- **seed**: Set for reproducible results

### 4. Submit and monitor the job

- Click **Generate Molecules** to start the job
- .bloom* shows real-time progress with live ETA
- Typical completion: 30 seconds to 2 minutes for 100 molecules
- Job status updates appear in the job panel and as notifications

### 5. Review and analyze results

**Canvas visualization:**
- A result card appears on the canvas showing a 2D molecule grid
- Each molecule displays its structure, QED score, and SA score
- Property histograms show the distribution of molecular weight, logP, and TPSA across all generated molecules
- SAFE fragment decomposition view shows how molecules break down into reusable fragments

**Quality metrics panel:**
- **Validity rate**: percentage of chemically valid molecules generated. Invalid ones are removed from the returned set unless you turn `enforce_validity` off
- **Uniqueness rate**: percentage of unique (non-duplicate) molecules
- **QED mean**: average RDKit drug-likeness estimate across the set
- **Diversity index**: mean pairwise Tanimoto distance across the generated set

None of these is a measurement. They describe the structures, not any property anyone observed — see [how GenMol results compare to the bench](/docs/genmol/translatability).

**Download options:**
- **CSV**: SMILES, SAFE notation, and all computed property scores
- **SDF**: 3D coordinates for downstream docking or visualization
- **JSON**: Full structured results with metadata

## Common generation scenarios

### De novo exploration
1. Select "de novo" mode with 500-1,000 molecules
2. Enable drug-likeness filter for a cleaner output set
3. Sort results by QED or diversity score
4. Pick top candidates for ADMET screening or docking

### Lead optimization
1. Enter the SMILES of your lead compound (e.g., `CC(=O)Oc1ccccc1C(=O)O` for aspirin)
2. Set similarity threshold to 0.6-0.8 (lower = more diverse analogs)
3. Generate 200-500 analogs
4. Compare analogs side-by-side in the canvas grid
5. Feed top hits to ADMET-AI for property profiling

### Scaffold decoration
1. Enter your scaffold SMILES with SAFE attachment points
2. Generate 100-300 decorated molecules
3. Review the R-group variations in the molecule grid
4. Export decorated scaffolds for retrosynthetic analysis with AiZynthFinder

### Fragment linking
1. Provide two fragment SMILES from your fragment screening campaign
2. Generate 100-200 linked molecules
3. Filter for drug-likeness and synthetic accessibility
4. Dock top linkers against the target protein with DiffDock

## Quality control checklist

### Before submission
- [ ] Correct generation mode selected for your use case
- [ ] Seed SMILES is valid (check with PubChem or RDKit)
- [ ] Similarity threshold is reasonable (0.5-0.8 for lead optimization)
- [ ] Molecule count is appropriate (100 for quick exploration, 1,000+ for campaigns)
- [ ] Quality filters enabled if you want drug-like output

### After generation
- [ ] Validity rate is &gt;90% (if lower, check seed SMILES or constraints)
- [ ] Uniqueness rate is &gt;80% (low uniqueness may indicate constrained generation)
- [ ] You have read the `quality_filters` block to see how many molecules the filters removed
- [ ] Generated molecules are structurally reasonable (spot-check 2D structures; this catches what no metric reports)
- [ ] Property distributions match your target profile
- [ ] You are treating the set as a hypothesis pool, not as candidates that have been shown to be makeable or active

## Next steps after generation

**Property screening:**
- Run ADMET-AI or ADMETLab3 on generated molecules for absorption, distribution, metabolism, excretion, and toxicity predictions
- Use ProTox-3 for toxicity endpoint estimation
- Apply DeepChem for custom property prediction

**Synthetic feasibility:**
- Run [AiZynthFinder](/docs/aizynthfinder) on top candidates for retrosynthetic analysis — this is the only makeability check available here
- Check ZINC for purchasable building blocks
- Have a chemist read the structures before anything is ordered. Treat `sa_score` as a within-series ranking hint, not a makeability verdict

**Structural validation:**
- Dock generated molecules against target proteins using DiffDock
- Minimize docked poses with MM-GBSA, which reports complex energies rather than a binding free energy
- Build a Compound Passport for comprehensive drug-likeness assessment

**Iterative optimization:**
- Use top-scoring molecules as seeds for a second round of lead optimization
- Extract promising fragments and use them as constraints for fragment-constrained generation
- Run PMO mode targeting specific property improvements

## Read next
