Skip to content

Pipeline deprecations #11354

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

Open
wants to merge 33 commits into
base: main
Choose a base branch
from
Open

Pipeline deprecations #11354

wants to merge 33 commits into from

Conversation

DN6
Copy link
Collaborator

@DN6 DN6 commented Apr 17, 2025

What does this PR do?

  • Deprecate low usage pipelines to ease maintenance burden and reduce testing load in CI.
  • Introduce a few changes to pipeline loading utils that allow deprecated pipeline modules to be loaded properly.

Fixes # (issue)

Before submitting

Who can review?

Anyone in the community is free to review the PR once the tests have passed. Feel free to tag
members/contributors who may be interested in your PR.

@HuggingFaceDocBuilderDev

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.

@DN6 DN6 changed the title [WIP] Pipeline deprecations Pipeline deprecations Apr 21, 2025
@@ -25,7 +25,7 @@
):
raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
from ...utils import dummy_torch_and_transformers_and_k_diffusion_objects # noqa F403
from ....utils import dummy_torch_and_transformers_and_k_diffusion_objects # noqa F403

_dummy_objects.update(get_objects_from_module(dummy_torch_and_transformers_and_k_diffusion_objects))
else:
Copy link
Collaborator Author

@DN6 DN6 Apr 28, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure whether to deprecate K Diffusion. The approach is still reasonably popular. It's just that the original implementation isn't very actively maintained, so thought it made sense to move ours to deprecated as well. I'm cool moving it back if we feel strongly against deprecating.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it's ok! it's not that they cannot use it anymore

Copy link
Member

@sayakpaul sayakpaul left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! Massive work. Will try to think of a systematic way of doing this from time to time.

@@ -333,7 +333,7 @@ def prepare_extra_step_kwargs(self, generator, eta):
extra_step_kwargs["generator"] = generator
return extra_step_kwargs

# Copied from diffusers.pipelines.latte.pipeline_latte.LattePipeline.check_inputs
# Copied from diffusers.pipelines.deprecated.latte.pipeline_latte.LattePipeline.check_inputs
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure how much usage does this pipeline have but maybe we could move this one to deprecated too in view of CogView4?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

wdyt @a-r-r-o-w?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sounds good, CogView3Plus has very few downloads compared to CogView4. I'm still not sure why we need to deprecate pipelines though. If it's to release stress from the CI, we could just disable the tests, no? Do we plan to support these via modular diffusers, or completely discontinue/remove support eventually?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, I think the idea would be to transition them out of src to community pipelines by release 1.0.0. They could also be turned into modular components if there is interest.

Deprecation is just to communicate that the maintainers won't be updating or fixing stuff in these pipelines moving forward.

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

Successfully merging this pull request may close these issues.

5 participants