Skip to main content

Implementation of Rectified Flows in JAX and Equinox.

Project description

Rectified Flow Matching

Cutting-edge and feature-rich implementation of Rectified Flows from Flow Straight and Fast: Learning to Generate and Transfer Data with Rectified Flows in jax and equinox.

Features

  • Deterministic and stochastic sampling of the associated ODE and SDE respectively,
  • Mixed precision optimisation,
  • Array-typed to-the-teeth for dependable execution with jaxtyping and beartype.

To implement:

  • Guidance by score of conditioning
  • Mixed precision
  • EMA
  • AdaLayerNorm
  • Stochastic sampling
  • ODE Sampling
  • Likelihoods
  • DiT
  • Hyperparameter/model saving

Usage

pip install rectified_flows

Your image description

Citations

@misc{liu2022flowstraightfastlearning,
      title={Flow Straight and Fast: Learning to Generate and Transfer Data with Rectified Flow}, 
      author={Xingchao Liu and Chengyue Gong and Qiang Liu},
      year={2022},
      eprint={2209.03003},
      archivePrefix={arXiv},
      primaryClass={cs.LG},
      url={https://arxiv.org/abs/2209.03003}, 
}
@misc{lipman2023flowmatchinggenerativemodeling,
    title={Flow Matching for Generative Modeling}, 
    author={Yaron Lipman and Ricky T. Q. Chen and Heli Ben-Hamu and Maximilian Nickel and Matt Le},
    year={2023},
    eprint={2210.02747},
    archivePrefix={arXiv},
    primaryClass={cs.LG},
    url={https://arxiv.org/abs/2210.02747}, 
}
@misc{singh2024stochasticsamplingdeterministicflow,
      title={Stochastic Sampling from Deterministic Flow Models}, 
      author={Saurabh Singh and Ian Fischer},
      year={2024},
      eprint={2410.02217},
      archivePrefix={arXiv},
      primaryClass={cs.LG},
      url={https://arxiv.org/abs/2410.02217}, 
}
@misc{yang2024consistencyflowmatchingdefining,
      title={Consistency Flow Matching: Defining Straight Flows with Velocity Consistency}, 
      author={Ling Yang and Zixiang Zhang and Zhilong Zhang and Xingchao Liu and Minkai Xu and Wentao Zhang and Chenlin Meng and Stefano Ermon and Bin Cui},
      year={2024},
      eprint={2407.02398},
      archivePrefix={arXiv},
      primaryClass={cs.CV},
      url={https://arxiv.org/abs/2407.02398}, 
}
@misc{peebles2023scalablediffusionmodelstransformers,
      title={Scalable Diffusion Models with Transformers}, 
      author={William Peebles and Saining Xie},
      year={2023},
      eprint={2212.09748},
      archivePrefix={arXiv},
      primaryClass={cs.CV},
      url={https://arxiv.org/abs/2212.09748}, 
}

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

rectified_flows-0.0.12.tar.gz (9.9 MB view details)

Uploaded Source

Built Distribution

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

rectified_flows-0.0.12-py3-none-any.whl (2.9 kB view details)

Uploaded Python 3

File details

Details for the file rectified_flows-0.0.12.tar.gz.

File metadata

  • Download URL: rectified_flows-0.0.12.tar.gz
  • Upload date:
  • Size: 9.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.15

File hashes

Hashes for rectified_flows-0.0.12.tar.gz
Algorithm Hash digest
SHA256 68d956bd438a40d1079c9978a2594345e0f00619b4635e1316e8dcf30c0f4201
MD5 842912abfb4018343d9f4fe29a288d4f
BLAKE2b-256 73cc2470776b735400179467481800e0755e1aeeafe95b05623a13d9a4ed3eec

See more details on using hashes here.

File details

Details for the file rectified_flows-0.0.12-py3-none-any.whl.

File metadata

File hashes

Hashes for rectified_flows-0.0.12-py3-none-any.whl
Algorithm Hash digest
SHA256 be82894d4ec120f197a86a87bd5a04f7737407063c38e71634a74d167ae07634
MD5 7aff2fcb4f80614ab3b4725f9a99eb7f
BLAKE2b-256 144e96779bbdc5a7500b4f6d5101bb967e7825c92ad672d23cd7977aa63ec27b

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