-
Notifications
You must be signed in to change notification settings - Fork 31
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Release of v1.0 of BioNeMo Modular Co-Design (MoCo) (#575)
Release of v1.0 of BioNeMo Modular Co-Design (MoCo) Introduces modular interpolants for various popular generative model frameworks including continuous and discrete diffusion and flow matching. --- ## Summary Introduces MoCo. ## Details See documentation.md for details. ## Usage pip install bionemo-moco ```python from bionemo.moco.interpolants import ContinuousFlowMatcher from bionemo.moco.distributions.time import UniformTimeDistribution from bionemo.moco.distributions.prior import GaussianPrior uniform_time = UniformTimeDistribution() moon_prior = GaussianPrior() sigma = 0.1 cfm = ContinuousFlowMatcher(time_distribution=uniform_time, prior_distribution=moon_prior, sigma=sigma, prediction_type="velocity") ``` see examples directory for notebook tutorials ## Testing Unit tests for all key functions. Tests for these changes can be run via: ```shell pytest -v tests ``` --------- Signed-off-by: Danny <[email protected]> Signed-off-by: Peter St. John <[email protected]> Co-authored-by: Peter St. John <[email protected]>
- Loading branch information
1 parent
448f353
commit c868563
Showing
84 changed files
with
17,595 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Validating CODEOWNERS rules …
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
../../LICENSE/license.txt |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
# Modular Co-Design (MoCo) Interpolants | ||
|
||
## Description | ||
MoCo enables abstracted interpolants for building and sampling from a variety of popular generative model frameworks. Specifically, MoCo supports interpolants for both continuous and discrete data types. | ||
|
||
### Continuous Data Interpolants | ||
MoCo currently supports the following continuous data interpolants: | ||
- DDPM (Denoising Diffusion Probabilistic Models) | ||
- VDM (Variational Diffusion Models) | ||
- CFM (Conditional Flow Matching) | ||
|
||
### Discrete Data Interpolants | ||
MoCo also supports the following discrete data interpolants: | ||
- D3PM (Discrete Denoising Diffusion Probabilistic Models) | ||
- MDLM (Markov Diffusion Language Models) | ||
- DFM (Discrete Flow Matching) | ||
|
||
### Useful Abstractions | ||
MoCo also provides useful wrappers for customizable time distributions and inference time schedules. | ||
|
||
### Extendible | ||
If the desired interpolant or sampling method is not already supported, MoCo was designed to be easily extended. | ||
|
||
## Installation | ||
For Conda environment setup, please refer to the `environment` directory for specific instructions. | ||
|
||
Once your environment is set up, you can install this project by running the following command: | ||
|
||
```bash | ||
pip install -e . | ||
``` | ||
This will install the project in editable mode, allowing you to make changes and see them reflected immediately. | ||
|
||
## Examples | ||
Please see examples of all interpolants in the [examples directory](./examples). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
../../VERSION |
Oops, something went wrong.