orbax  by google

Checkpointing and persistence for JAX ML models

Created 4 years ago
526 stars

Top 59.2% on SourcePulse

GitHubView on GitHub
1 Expert Loves This Project
Project Summary

Orbax provides essential checkpointing and persistence utilities specifically designed for JAX users, enabling robust saving and loading of model states. It targets researchers and engineers working with JAX-based machine learning frameworks, offering a flexible and composable API to manage complex training states, thereby simplifying experimentation and deployment.

How It Works

Orbax offers a checkpointing library built for JAX, supporting asynchronous operations, custom data types, and flexible storage formats. Its core design emphasizes a highly customizable and composable API, allowing seamless integration with diverse JAX frameworks and use cases. This approach maximizes flexibility and efficiency in managing large-scale model checkpoints.

Quick Start & Requirements

  • Installation:
    • pip install orbax-checkpoint
    • pip install 'git+https://github.com/google/orbax/#subdirectory=checkpoint'
    • pip install orbax-export (for exporting utilities)
  • Prerequisites: JAX is the primary dependency. GPU acceleration is recommended for performance but not strictly required for basic checkpointing.
  • Documentation: https://orbax.readthedocs.io/en/latest/

Highlighted Details

  • Extensively used across major JAX ML frameworks including Flax, Gemma, Kauldron, PaxML, T5X, MaxText, MaxDiffusion, Tunix, AXLearn, and openpi.
  • Supports asynchronous checkpointing, custom data types, and flexible storage formats.
  • Features a composable API designed for maximum flexibility across diverse use cases.

Maintenance & Community

  • Support: Issues and feature requests should be filed via the GitHub issue tracker. Direct inquiries can be sent to orbax-dev@google.com.
  • Contributors: Developed by a team at Google, with authors listed in the associated arXiv paper citation. No specific community channels (e.g., Slack, Discord) are mentioned.

Licensing & Compatibility

  • The provided README does not specify a license. This is a critical omission for evaluating adoption, especially regarding commercial use or linking with closed-source projects.

Limitations & Caveats

  • The README does not detail any specific limitations, known bugs, or unsupported platforms. The absence of explicit licensing information presents a significant adoption blocker that requires clarification.
Health Check
Last Commit

1 day ago

Responsiveness

Inactive

Pull Requests (30d)
101
Issues (30d)
2
Star History
12 stars in the last 30 days

Explore Similar Projects

Starred by Luis Capelo Luis Capelo(Cofounder of Lightning AI), Sasha Rush Sasha Rush(Research Scientist at Cursor; Professor at Cornell Tech), and
3 more.

jax-js by ekzhang

1.4%
862
JAX-style ML framework for the web
Created 1 year ago
Updated 3 days ago
Starred by Wes McKinney Wes McKinney(Author of Pandas), Edward Sun Edward Sun(Research Scientist at Meta Superintelligence Lab), and
2 more.

grain by google

0.3%
750
Python library for ML training data pipelines
Created 3 years ago
Updated 1 day ago
Starred by Matthew Johnson Matthew Johnson(Coauthor of JAX; Research Scientist at Google Brain), Roy Frostig Roy Frostig(Coauthor of JAX; Research Scientist at Google DeepMind), and
3 more.

sglang-jax by sgl-project

1.3%
302
High-performance LLM inference engine for JAX/TPU serving
Created 11 months ago
Updated 1 day ago
Feedback? Help us improve.