Add JoyAI-Video-Edit pipeline - #14526
Open
feice-huang wants to merge 1 commit into
Open
Conversation
Integrate JoyAI-Video-Edit with a causal streaming VAE, dual-stream 3D transformer, MiMo-VL prompt and image conditioning, chunk-wise KV caching, optional reference-image conditioning, and memory-efficient chunked decoding. Add checkpoint conversion with the model mixed-precision policy, lazy imports, API documentation, and comprehensive model and pipeline tests covering serialization, compilation, batching, callbacks, cache lifecycle, and CPU and group offloading.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
We are the JoyAI Team, and this is the Diffusers implementation for the JoyAI-Video-Edit model.
What does this PR do?
Fixes #14524
Overview
This PR adds Diffusers support for JoyAI-Video-Edit.
JoyAI-Video-Edit is an instruction-guided video editing model built around causal autoregressive diffusion. It combines:
The model supports open-ended editing instructions such as subject modification, local object editing, background replacement, style transfer, motion changes, and reference-image-guided editing.
Its causal design allows each generated chunk to reuse previously denoised context without depending on future generated frames. A sliding context window keeps the attention state bounded, while an optional global sink chunk helps retain long-range consistency.
What is added
This PR introduces:
JoyVideoEditTransformer3DModelAutoencoderKLJoyVideoEditJoyVideoEditPipelineJoyVideoEditKVCacheConfigand its Diffusers cache hookThe converted checkpoint can be loaded through the standard Diffusers API:
Example
Self-review
Blocking issues
None.
Non-blocking issues
None.
Dead code review
autoencoder_kl_joyvideoedit.py:162self.in_channelsprovides conventional channel metadata for module introspection and custom attention processors. It is not considered dead code.Summary
Verdict: READY
origin/main.make qualitycheck passes.This self-review can be added to the PR description or posted as a PR comment.
Before submitting
self-reviewskill on the diff?documentation guidelines, and
here are tips on formatting docstrings.
Who can review?