Add Echo-Memory community pipeline for Wan 2.1 1.3B - #14471
Conversation
Overlay the released context_k1 row onto official Diffusers Wan weights after remapping original DiffSynth/Wan keys. Extra action/SSM slots stay in the Echo-Memory research stack. Co-authored-by: Cursor <cursoragent@cursor.com>
|
ok |
|
Hi @WayneJin0918, thanks for the PR! It does not appear to link an issue it fixes. If this PR addresses an existing issue, please add a closing keyword (e.g. |
Replace print logging and guard an empty transformer so the overlay matches community pipeline conventions. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Thanks for the reminder. This PR is a community-pipeline addition rather than a bugfix, so I opened a tracking issue and linked it: Fixes #14482 Also updated the description to the contributor template (AI-agent checklist + self-review notes) and switched the overlay helper from |
|
Following the guidance on #14482: the usable path is the Hub repo, not this Live pipeline: https://huggingface.co/Wayne-King/echo-memory-diffusers I commented on the issue as an author and tagged @asomoza. Happy to close this PR if you prefer Hub / Modular only, or to keep it if you still want the GitHub community example. |
What does this PR do?
Adds a GitHub community pipeline that overlays the released Echo-Memory
context_k1DiT fine-tune onto officialWan-AI/Wan2.1-T2V-1.3B-Diffusers.This is a community overlay, not a new official Wan checkpoint. Extra action-MLP / SSM slots stay in the Echo-Memory research stack (arXiv:2606.09803).
Fixes #14482
Before submitting
self-reviewskill on the diff?documentation guidelines, and
here are tips on formatting docstrings.
Self-review notes
WanPipelineon purpose..ai/pipelines.mdsays not to subclass sibling pipelines insidesrc/;examples/communityis the documented place for overlays.load_echo_memory_weightsmutatesself.transformerin place. That is the overlay. Call it once afterfrom_pretrained.scripts/convert_wan_to_diffusers.pybecause that script is not importable. Offline check: 825 / 825 official Wan 1.3B transformer keys match after remap; 360 action/SSM extras are skipped.src/changes. No GPU generation test in this PR; remap helpers were checked locally with dummy tensors and against the official Diffusers weight map.from_echo_memoryas a convenience constructor. Happy to drop it if reviewers prefer onlyload_*.Test plan
self_attn.q→attn1.to_q,norm2/norm3swap,action_mlp/self_attn_with_actionskippedcontext_k1keys ==Wan-AI/Wan2.1-T2V-1.3B-Diffuserstransformerweight_map(825 / 825)DiffusionPipeline.from_pretrained("Wan-AI/Wan2.1-T2V-1.3B-Diffusers", custom_pipeline="pipeline_echo_memory")pipe.load_echo_memory_weights()orpipe.load_converted_echo_memory_weights()Converted weights and the same pipeline class:
Wayne-King/echo-memory-diffusers.Who can review?
@asomoza (community pipelines)