Overview
REINVENT is a command-line molecular-design toolkit, rather than a single predictive model. Its documented scope includes de novo design, scaffold hopping, R-group replacement, linker design and molecule optimization. It combines generative models with reinforcement learning to direct molecule generation toward a user-defined property profile expressed through a multi-component score. Transfer learning provides a separate route for adapting or pre-training a model toward a supplied set of molecules.
The workflow starts with a selected model and run mode, configured primarily through TOML; JSON and YAML are also supported. The repository supplies configuration examples and accompanying guidance, while public prior models are linked through Zenodo. Users must adapt example file paths to their local installation. Outputs include generated molecules and diagnostic logging, with logs directed either to a file or to standard error. The scoring subsystem also supports custom Python plugins without requiring changes to REINVENT's core code.
The README specifies Python 3.11 or later and CPU or GPU execution, with automatic CPU fallback when no GPU is installed. It recommends a GPU particularly for transfer learning and model training, while noting that many reinforcement-learning scoring components run on the CPU. Platform validation is source-reported: Linux is described as fully validated, whereas Windows is less tested and has limited support. Optional OpenEye functionality requires a separate licence. The source excerpts do not establish benchmark performance or experimental success for generated molecules; evaluation should therefore distinguish configured scoring objectives from independently demonstrated chemical outcomes.
Key Features
- Reinforcement-learning optimization against a user-defined property profile represented by a multi-component score.
- Transfer learning to create or pre-train a generative model toward a set of input molecules.
- Documented support for de novo design, scaffold hopping, R-group replacement, linker design and molecule optimization.
- Command-line workflows configured through TOML, JSON or YAML, with sample configurations for all run modes.
- Extensible scoring through Python namespace-package plugins that do not require modifications to core REINVENT code.
- CPU and GPU execution, with command-line controls for device selection, random seed and logging.
Use Cases
- Intended evaluation: assess de novo molecular generation against a project-specific multi-component property score, then independently examine the resulting candidates.
- Intended evaluation: compare scaffold-hopping, R-group replacement or linker-design workflows for a small-molecule research problem using the appropriate documented model and run mode.
- Intended evaluation: adapt a generative model toward a supplied molecular set through transfer learning and assess how the generated candidates relate to that input set.
- Intended evaluation: integrate a project-specific scoring component through the plugin mechanism and verify its behavior before using it in optimization.
How to Use
- Read the official README and choose a design task, model and run mode. Review the repository's
configs/examples and their accompanying Markdown guidance before preparing a configuration. - Follow the documented installation procedure in an isolated Python environment using Python 3.11 or later. Match the processor backend to your hardware using the linked PyTorch guidance; the README labels the uv route experimental.
- Obtain an appropriate public prior from Zenodo, or consult the documented internal-prior registry. Check model terms separately from the repository code licence.
- Adjust local file paths and configure the relevant scoring profile or transfer-learning inputs. Confirm separate licensing requirements if using OpenEye-dependent functionality.
- Run the configured workflow through the documented command-line interface, retaining configuration, seed and logs for evaluation. Inspect generated molecules and scoring behavior; treat chemical suitability as a separate assessment rather than an established result.