Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

📢 KerasCV is migrating to KerasHub 📢 #2497

Open
sachinprasadhs opened this issue Oct 15, 2024 · 0 comments
Open

📢 KerasCV is migrating to KerasHub 📢 #2497

sachinprasadhs opened this issue Oct 15, 2024 · 0 comments
Assignees

Comments

@sachinprasadhs
Copy link
Collaborator

tl;dr

  • We are consolidating KerasNLP and KerasCV into a new KerasHub package.
  • Users will find KerasCV functionalities and new features incorporated into the KerasHub package moving forward.
  • keras-nlp GitHub repository has been renamed to keras-hub.
  • All existing usages will continue to work!
    • You can keep running pip install keras-nlp & import keras_nlp—nothing will break. Same with keras_cv.

What's happening

Popular pretrained models are frequently 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 do not believe any particular division of pretrained models will help the Keras ecosystem going forward. Distinctions between model architectures (transformers vs convnets vs diffision models) become fuzzy, as do divisions between modalities.

By consolidating to a single library that focuses on easy-to-use, pretrained architectures and weights, we can better deliver a set of features that apply to all pretrained models—easy model publishing and sharing, PEFT and quantization support, scaled up muli-host training.

To that end, we are consolidating KerasNLP and KerasCV into a KerasHub package.

The plan

We will begin porting backbones, segmentation tasks, and object detection tasks to keras_hub on an ongoing basis. Most of the utility functions will be moved to Keras Core.

You can expect some changes to how CV models are used in keras_hub, as we strive for a consistent user experience across all modalities.

Many existing CV models have already been made available in keras_hub along with their presets.

  • keras-nlp has been renamed to keras-hub. Library symbols will be renamed from keras_nlp to keras_hub.
  • We will keep a keras_nlp package with all the old imports. This change will be fully backward compatible.
  • To move from keras_nlp to keras_hub, you should be able to simply find and replace all instances of keras_nlp with keras_hub in code.
  • Any new features or bug reports for models that are made available on keras_hub can be created directly in keras_hub. Existing issues related to models that are now available on keras_hub will be moved to the keras_hub repository.

When is this happening

The repository is now a preview for the upcoming KerasHub release, but we have not yet made an official release of the keras-hub package. If you would like to try things out as we build, you can do so by trying our nightly package: pip install keras-hub-nightly.

We are tentatively aiming for a end October release of KerasHub.

Feedback and help

We would appreciate any feedback from the community on this! Please feel free to use this issue to send us thoughts.

We have a number of issues related to the port with the contributions welcome tag.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants