Skip to main content

Flow Gym

Project description

Flow Gym

License Code style: ruff

flowgym is a library for reward adaptation of any pre-trained flow model on any data modality.

Installation

In order to install flowgym, execute the following command:

pip install flowgym

flowgym requires PyTorch 2.3.1, and there may be other hard dependencies. Please open an issue if installation fails through the above command.

Molecule environments depend on FlowMol, which currently needs to be installed manually:

pip install git+https://github.com/cristianpjensen/FlowMol.git@8f4c98cbe68111e4e63480b250d925b6d960d3bc

Some image rewards depend on the clip package, which needs to be installed manually as well:

pip install git+https://github.com/openai/CLIP.git

High-level overview

Diffusion and flow models are largely agnostic to their data modality. They only require that the underlying data type supports a small set of operations. Building on this idea, flowgym is designed to be fully modular. You only need to provide the following:

  • Data type YourDataType that implements FlowProtocol, which defines some functions necessary for interacting with it as a flow model.
  • Base model BaseModel[YourDataType], which defines the scheduler, how to sample $p_0$, how to compute the forward pass, and how to preprocess and postprocess data.
  • Reward function Reward[YourDataType].

Once these are defined, you can sample from the flow model and apply reward adaptation methods, such as Value Matching.

Documentation

Much more information can be found in the documentation, including tutorials and API references.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

flowgym-1.7.tar.gz (5.8 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

flowgym-1.7-py3-none-any.whl (1.5 MB view details)

Uploaded Python 3

File details

Details for the file flowgym-1.7.tar.gz.

File metadata

  • Download URL: flowgym-1.7.tar.gz
  • Upload date:
  • Size: 5.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for flowgym-1.7.tar.gz
Algorithm Hash digest
SHA256 6d2d43f6a1773c43f6bd7fbd2d14b166607c66de66845854921c8017c1165c0a
MD5 7644d5444d40675d286e6469c51a756c
BLAKE2b-256 9d42518c9a79ffb938fc164bd0657ecf23110bc33f280b571455ea32e6862d6b

See more details on using hashes here.

File details

Details for the file flowgym-1.7-py3-none-any.whl.

File metadata

  • Download URL: flowgym-1.7-py3-none-any.whl
  • Upload date:
  • Size: 1.5 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for flowgym-1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 ce1d6836319fe971a5591ca421c609dc0d07d2e5bdd4f796ca604dbeff428cf3
MD5 ab41de97f5edb78e7c83647a0b96d2c0
BLAKE2b-256 a9f8aac60c76940e4acd4e8adfa45bf4b2e6058c3bae3694a6554fcb51e70846

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page