An experimental library that converts TensorFlow functions and graphs into JAX functions for reuse and fine-tuning within JAX codebases.
TF2JAX is an experimental library that converts TensorFlow functions and computational graphs into equivalent JAX functions. It solves the problem of reusing existing TensorFlow models and code within JAX ecosystems, enabling developers to apply JAX's powerful transformations like automatic differentiation and vectorization to TensorFlow-based workflows.
Machine learning researchers and engineers who work with both TensorFlow and JAX, particularly those looking to migrate TensorFlow models to JAX or integrate TensorFlow components into JAX pipelines.
TF2JAX provides a transparent conversion process that maintains debuggability while enabling full interoperability between TensorFlow and JAX, unlike alternative approaches that treat converted functions as black boxes. It supports important serialization formats and allows fine-tuning of converted models within JAX codebases.
TF2JAX is an experimental library that transforms TensorFlow functions and graphs into equivalent JAX functions. This enables developers to reuse existing TensorFlow models, including SavedModel and TensorFlow Hub modules, within JAX codebases while maintaining the ability to apply JAX transforms.
tf.function and TensorFlow graphs into pure JAX functions that can be used with JAX transforms like jit, grad, and vmap.jax2tf.convert back into JAX, enabling full interoperability between the two frameworks.TF2JAX aims to provide a transparent conversion pathway that maintains debuggability and introspection while enabling seamless integration between TensorFlow and JAX ecosystems.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
The conversion process maintains introspection capabilities, allowing developers to debug and understand resulting JAX functions easily, as highlighted in the philosophy section.
Directly works with TensorFlow SavedModel and TF-Hub formats, enabling reuse of existing models without retraining, as shown in the serialization examples.
Converted functions can be used with JAX transforms like jit, grad, and vmap, preserving JAX workflow flexibility, as demonstrated in quick start examples.
Offers options to convert constants to bfloat16 and control dtype checks, facilitating mixed-precision computing, as detailed in the configuration section.
The library is explicitly marked as experimental with no API stability guarantees, making it risky for long-term or production projects, as stated in the disclaimer.
Only a subset of TensorFlow ops are supported, and functionalities may be missing, requiring community contributions or workarounds, as admitted in the limitations section.
There may be differences in performance and numerical outputs compared to native TensorFlow, potentially affecting model accuracy, as warned in the limitations.