📢 KerasNLP is now KerasHub 📢
mattdangerw opened this issue · 1 comments
tl;dr
- We have consolidated KerasNLP and KerasCV into a new KerasHub package.
- We have renamed the
keras-nlp
GitHub repository tokeras-hub
. - All existing usages will continue to work!
- You can still run
pip install keras-nlp
&import keras_nlp
—nothing will break. The same applies tokeras_cv
.
- You can still run
What's happening
Popular pretrained models are increasingly becoming multi-modal. In the text domain, chat LLMs are adding support for image and audio inputs and outputs. In the vision domain, using text encoders is common for a wide range of tasks from image segmentation to image generation.
We no longer believe any particular division of pretrained models will serve the Keras ecosystem effectively going forward. Distinctions between model architectures (transformers vs. convnets vs. diffusion models) are becoming blurred, as are divisions between modalities.
By consolidating into a single library focused on easy-to-use, pretrained architectures and weights, we can deliver better features that apply across all pretrained models—easy model publishing and sharing, PEFT and quantization support, and scaled multi-host training.
To this end, we have consolidated KerasNLP and KerasCV into the KerasHub package.
The plan
We’ve started by renaming the KerasNLP library to KerasHub. KerasNLP already supports multiple modalities with models like PaliGemma
, alongside many features (like easy model publishing) that we are extending to CV models.
- The repository has been renamed to
keras-hub
. Library symbols have been renamed fromkeras_nlp
tokeras_hub
. - A
keras_nlp
package remains, maintaining backward compatibility with all previous imports. - To migrate from
keras_nlp
tokeras_hub
, you can simply find and replace all instances ofkeras_nlp
withkeras_hub
in your code. keras_cv
models will gradually move tokeras_hub
. You can expect some usage changes to CV models to ensure a consistent user experience across modalities.
When is this happening
The repository now serves as a preview for the official KerasHub release. However, the keras-hub
package has not yet had its official release. If you'd like to try things out as we continue building, you can do so by installing our nightly package: pip install keras-hub-nightly
.
We’re aiming for an official release of KerasHub by mid-October.
Feedback and help
We greatly value any feedback from the community! Please feel free to share your thoughts here.
Additionally, we have a number of issues related to the migration with the contributions welcome tag.
Update: we have now renamed the repository and code to keras-hub
, but we have not yet released the KerasHub package.
If you would like to try things out as we build, use the nightly package: pip install keras-hub-nightly
. If you want the backwards compatible keras_nlp
imports, you can try that on nightly too: pip install keras-nlp-nightly
.
Lastly, if you were building the package from source, and want to keep things working with the old imports, you will need to install as follows:
!pip install "git+https://github.com/keras-team/keras-hub" "git+https://github.com/keras-team/keras-hub#subdirectory=keras_nlp"
That will install both the new keras_hub
source, as well as a keras_nlp
shim package.
As always, feedback welcome!