Instructions to use TomLjm/MUGen-VR-AnyFlow-Conditioner with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Diffusers
How to use TomLjm/MUGen-VR-AnyFlow-Conditioner with Diffusers:
pip install -U diffusers transformers accelerate
import torch from diffusers import DiffusionPipeline from diffusers.utils import load_image, export_to_video # switch to "mps" for apple devices pipe = DiffusionPipeline.from_pretrained("TomLjm/MUGen-VR-AnyFlow-Conditioner", dtype=torch.bfloat16, device_map="cuda") pipe.to("cuda") prompt = "A man with short gray hair plays a red electric guitar." image = load_image( "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/guitar-man.png" ) output = pipe(image=image, prompt=prompt).frames[0] export_to_video(output, "output.mp4") - Notebooks
- Google Colab
- Kaggle
Add files using upload-large-folder tool
Browse files- MANIFEST.json +35 -0
- README.md +61 -1
- conditioner.pt +3 -0
- evaluation.json +152 -0
- mugen_config.json +29 -0
- pytorch_lora_weights.safetensors +3 -0
MANIFEST.json
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"schema_version": 1,
|
| 3 |
+
"files": [
|
| 4 |
+
{
|
| 5 |
+
"name": "README.md",
|
| 6 |
+
"bytes": 2855,
|
| 7 |
+
"sha256": "8c711dd06411fb869070e8ed6cee0fa02b73ec545dba7220c602eea82f3aad52"
|
| 8 |
+
},
|
| 9 |
+
{
|
| 10 |
+
"name": "conditioner.pt",
|
| 11 |
+
"bytes": 128615217,
|
| 12 |
+
"sha256": "77c38f544576c26c80e0c1767bfb02802572266c9de95baf99265d18eafda909"
|
| 13 |
+
},
|
| 14 |
+
{
|
| 15 |
+
"name": "evaluation.json",
|
| 16 |
+
"bytes": 4790,
|
| 17 |
+
"sha256": "626a5bb0a49e5f01457a2cc707c2a00a82f4359f38638a3f37e10f1ea3626130"
|
| 18 |
+
},
|
| 19 |
+
{
|
| 20 |
+
"name": "mugen_config.json",
|
| 21 |
+
"bytes": 679,
|
| 22 |
+
"sha256": "427f0e93dea1e4715bcf0f2adf710fe6a16f046bd55dfab35a4b043ae01b9bfa"
|
| 23 |
+
},
|
| 24 |
+
{
|
| 25 |
+
"name": "pytorch_lora_weights.safetensors",
|
| 26 |
+
"bytes": 11824784,
|
| 27 |
+
"sha256": "9d164a72cca4195070da8d1ccc2b42258673f4c64e88c3304eba32ea78e0fcfd"
|
| 28 |
+
}
|
| 29 |
+
],
|
| 30 |
+
"forbidden_files_absent": [
|
| 31 |
+
"optimizer.pt",
|
| 32 |
+
"AnyFlow base weights",
|
| 33 |
+
"dataset media"
|
| 34 |
+
]
|
| 35 |
+
}
|
README.md
CHANGED
|
@@ -1,5 +1,65 @@
|
|
| 1 |
---
|
|
|
|
| 2 |
license: other
|
| 3 |
license_name: mit-code-with-noncommercial-upstream-weight-restrictions
|
| 4 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 5 |
---
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
---
|
| 2 |
+
library_name: diffusers
|
| 3 |
license: other
|
| 4 |
license_name: mit-code-with-noncommercial-upstream-weight-restrictions
|
| 5 |
+
base_model: nvidia/AnyFlow-FAR-Wan2.1-1.3B-Diffusers
|
| 6 |
+
pipeline_tag: image-to-video
|
| 7 |
+
tags:
|
| 8 |
+
- multimodal
|
| 9 |
+
- video-generation
|
| 10 |
+
- lora
|
| 11 |
+
- retrieval
|
| 12 |
---
|
| 13 |
+
|
| 14 |
+
# MUGen-VR
|
| 15 |
+
|
| 16 |
+
MUGen-VR adds project-owned multimodal condition modules to AnyFlow-FAR. ImageBind
|
| 17 |
+
encodes text, image, and audio; InternVideo2 encodes videos and retrieved references.
|
| 18 |
+
Three hierarchical fusion tokens and four score-aware reference tokens are projected
|
| 19 |
+
to the 4096-dimensional UMT5 prompt space and appended to AnyFlow `prompt_embeds`.
|
| 20 |
+
|
| 21 |
+
## Published files
|
| 22 |
+
|
| 23 |
+
The Hugging Face release contains only MUGen-owned lightweight files:
|
| 24 |
+
|
| 25 |
+
- Fusion and Reference Adapter weights.
|
| 26 |
+
- The condition projector and modality/type embeddings.
|
| 27 |
+
- AnyFlow cross-attention LoRA weights.
|
| 28 |
+
- Training configuration, encoder/data versions, and evaluation metadata.
|
| 29 |
+
|
| 30 |
+
It does not contain AnyFlow, ImageBind, InternVideo2, MSR-VTT media, or cached third-party
|
| 31 |
+
features. Users must obtain those assets under their upstream terms.
|
| 32 |
+
|
| 33 |
+
## Evaluation
|
| 34 |
+
|
| 35 |
+
The practical project evaluation compares four variants on 40 fixed held-out samples
|
| 36 |
+
with generation seed 42:
|
| 37 |
+
|
| 38 |
+
Condition scale `0.1` was selected on eight validation samples before the fixed test run.
|
| 39 |
+
|
| 40 |
+
| Variant | Definition | VBench | Retrieval MRR | Audio-flow | Latency |
|
| 41 |
+
|---|---|---:|---:|---:|---:|
|
| 42 |
+
| B0 | AnyFlow image + original prompt | 0.7600 | n/a | 0.0179 | 4.42 s |
|
| 43 |
+
| B1 | prompt rewrite prototype | 0.7511 | n/a | 0.0363 | 4.26 s |
|
| 44 |
+
| B2 | Fusion tokens without audio/reference | 0.7596 | 1.0000 | -0.0012 | 4.28 s |
|
| 45 |
+
| B3 | full Fusion + audio + reference | 0.7570 | 0.9813 | 0.0046 | 4.31 s |
|
| 46 |
+
|
| 47 |
+
The completion check passed for all 40 pairs, four variants, one seed, required metrics,
|
| 48 |
+
and eight showcase cases. B0 remained the strongest VBench baseline. B2 preserved quality
|
| 49 |
+
within 0.0004, while audio/reference conditioning in B3 did not improve retrieval, audio
|
| 50 |
+
control, or aggregate video quality. The release therefore claims a reproducible real
|
| 51 |
+
condition path and an honest negative result, not a generation-quality gain.
|
| 52 |
+
|
| 53 |
+
## Limitations
|
| 54 |
+
|
| 55 |
+
- The base AnyFlow model is restricted to non-commercial use under NVIDIA NSCLv1.
|
| 56 |
+
- ImageBind is also governed by non-commercial research terms.
|
| 57 |
+
- Audio control is indirect through condition tokens; it does not synthesize an output soundtrack.
|
| 58 |
+
- Retrieval quality depends on the licensed local reference gallery.
|
| 59 |
+
- On this checkpoint, adding audio and reference tokens slightly reduced aggregate VBench and retrieval MRR.
|
| 60 |
+
- The project is evaluated as an internship portfolio system, not a paper-scale benchmark.
|
| 61 |
+
|
| 62 |
+
## Citation
|
| 63 |
+
|
| 64 |
+
Please cite the upstream AnyFlow, ImageBind, InternVideo2, MSR-VTT, and VBench projects.
|
| 65 |
+
See `THIRD_PARTY_NOTICES.md` and `docs/third_party_commits.md` in the source repository.
|
conditioner.pt
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:77c38f544576c26c80e0c1767bfb02802572266c9de95baf99265d18eafda909
|
| 3 |
+
size 128615217
|
evaluation.json
ADDED
|
@@ -0,0 +1,152 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"schema_version": 1,
|
| 3 |
+
"summary": {
|
| 4 |
+
"B0": {
|
| 5 |
+
"description": "AnyFlow image + original prompt",
|
| 6 |
+
"count": 40,
|
| 7 |
+
"means": {
|
| 8 |
+
"latency_seconds": 4.415573643179959,
|
| 9 |
+
"generated_fps": 5.700837394230057,
|
| 10 |
+
"peak_vram_gib": 15.610107421875,
|
| 11 |
+
"subject_consistency": 0.884030045941472,
|
| 12 |
+
"motion_smoothness": 0.984162795787803,
|
| 13 |
+
"temporal_flickering": 0.9728844855112184,
|
| 14 |
+
"aesthetic_quality": 0.4435853444039819,
|
| 15 |
+
"imaging_quality": 0.5152302944946286,
|
| 16 |
+
"vbench_total": 0.759978593227821,
|
| 17 |
+
"imagebind_audio_video_alignment": 0.2249340817797929,
|
| 18 |
+
"onset_flow_correlation": 0.01786091947584697
|
| 19 |
+
}
|
| 20 |
+
},
|
| 21 |
+
"B1": {
|
| 22 |
+
"description": "prompt rewrite prototype",
|
| 23 |
+
"count": 40,
|
| 24 |
+
"means": {
|
| 25 |
+
"latency_seconds": 4.26074977768003,
|
| 26 |
+
"generated_fps": 5.877865403882483,
|
| 27 |
+
"peak_vram_gib": 15.610107421875,
|
| 28 |
+
"subject_consistency": 0.8433478668642538,
|
| 29 |
+
"motion_smoothness": 0.9751392628313267,
|
| 30 |
+
"temporal_flickering": 0.9570126858178301,
|
| 31 |
+
"aesthetic_quality": 0.45098427012562714,
|
| 32 |
+
"imaging_quality": 0.5291726571655279,
|
| 33 |
+
"vbench_total": 0.7511313485609136,
|
| 34 |
+
"imagebind_audio_video_alignment": 0.23401265256106854,
|
| 35 |
+
"onset_flow_correlation": 0.03631851392772683
|
| 36 |
+
}
|
| 37 |
+
},
|
| 38 |
+
"B2": {
|
| 39 |
+
"description": "fusion tokens without audio or reference",
|
| 40 |
+
"count": 40,
|
| 41 |
+
"means": {
|
| 42 |
+
"latency_seconds": 4.279900551162427,
|
| 43 |
+
"generated_fps": 5.849079877479161,
|
| 44 |
+
"peak_vram_gib": 15.610107421875,
|
| 45 |
+
"subject_consistency": 0.8709420069120819,
|
| 46 |
+
"motion_smoothness": 0.9821310122763294,
|
| 47 |
+
"temporal_flickering": 0.9698621026908654,
|
| 48 |
+
"aesthetic_quality": 0.44844568669796,
|
| 49 |
+
"imaging_quality": 0.5265446289634709,
|
| 50 |
+
"vbench_total": 0.7595850875081422,
|
| 51 |
+
"imagebind_audio_video_alignment": 0.2250766169745475,
|
| 52 |
+
"onset_flow_correlation": -0.0011641985030232075,
|
| 53 |
+
"retrieval_rank": 1.0,
|
| 54 |
+
"retrieval_mrr": 1.0
|
| 55 |
+
}
|
| 56 |
+
},
|
| 57 |
+
"B3": {
|
| 58 |
+
"description": "full fusion + audio + reference",
|
| 59 |
+
"count": 40,
|
| 60 |
+
"means": {
|
| 61 |
+
"latency_seconds": 4.309116636033286,
|
| 62 |
+
"generated_fps": 5.810298692646417,
|
| 63 |
+
"peak_vram_gib": 15.610107421875,
|
| 64 |
+
"subject_consistency": 0.8677799109912785,
|
| 65 |
+
"motion_smoothness": 0.9811141542968373,
|
| 66 |
+
"temporal_flickering": 0.9684628730077376,
|
| 67 |
+
"aesthetic_quality": 0.44271424114704105,
|
| 68 |
+
"imaging_quality": 0.524960030918121,
|
| 69 |
+
"vbench_total": 0.7570062420722037,
|
| 70 |
+
"imagebind_audio_video_alignment": 0.22060853205621242,
|
| 71 |
+
"onset_flow_correlation": 0.0046293259929009465,
|
| 72 |
+
"retrieval_rank": 1.075,
|
| 73 |
+
"retrieval_mrr": 0.98125
|
| 74 |
+
}
|
| 75 |
+
}
|
| 76 |
+
},
|
| 77 |
+
"paired_bootstrap_advisory": {
|
| 78 |
+
"generated_fps": {
|
| 79 |
+
"best_baseline": "B1",
|
| 80 |
+
"pairs": 40,
|
| 81 |
+
"delta": -0.06756671123606395,
|
| 82 |
+
"ci_lower": -0.13503826082529,
|
| 83 |
+
"ci_upper": -0.0009061307435047152,
|
| 84 |
+
"confidence": 0.95,
|
| 85 |
+
"bootstrap_samples": 10000
|
| 86 |
+
},
|
| 87 |
+
"imagebind_audio_video_alignment": {
|
| 88 |
+
"best_baseline": "B1",
|
| 89 |
+
"pairs": 40,
|
| 90 |
+
"delta": -0.01340412050485611,
|
| 91 |
+
"ci_lower": -0.027256709835492065,
|
| 92 |
+
"ci_upper": -0.000871459546033293,
|
| 93 |
+
"confidence": 0.95,
|
| 94 |
+
"bootstrap_samples": 10000
|
| 95 |
+
},
|
| 96 |
+
"latency_seconds": {
|
| 97 |
+
"best_baseline": "B1",
|
| 98 |
+
"pairs": 40,
|
| 99 |
+
"delta": -0.04836685835325625,
|
| 100 |
+
"ci_lower": -0.09987435037262912,
|
| 101 |
+
"ci_upper": 0.0023366264591459175,
|
| 102 |
+
"confidence": 0.95,
|
| 103 |
+
"bootstrap_samples": 10000
|
| 104 |
+
},
|
| 105 |
+
"onset_flow_correlation": {
|
| 106 |
+
"best_baseline": "B1",
|
| 107 |
+
"pairs": 40,
|
| 108 |
+
"delta": -0.031689187934825884,
|
| 109 |
+
"ci_lower": -0.08407993431787751,
|
| 110 |
+
"ci_upper": 0.020294409306492248,
|
| 111 |
+
"confidence": 0.95,
|
| 112 |
+
"bootstrap_samples": 10000
|
| 113 |
+
},
|
| 114 |
+
"peak_vram_gib": {
|
| 115 |
+
"best_baseline": "B0",
|
| 116 |
+
"pairs": 40,
|
| 117 |
+
"delta": 0.0,
|
| 118 |
+
"ci_lower": 0.0,
|
| 119 |
+
"ci_upper": 0.0,
|
| 120 |
+
"confidence": 0.95,
|
| 121 |
+
"bootstrap_samples": 10000
|
| 122 |
+
},
|
| 123 |
+
"retrieval_mrr": {
|
| 124 |
+
"best_baseline": "B2",
|
| 125 |
+
"pairs": 40,
|
| 126 |
+
"delta": -0.01875,
|
| 127 |
+
"ci_lower": -0.05625,
|
| 128 |
+
"ci_upper": 0.0,
|
| 129 |
+
"confidence": 0.95,
|
| 130 |
+
"bootstrap_samples": 10000
|
| 131 |
+
},
|
| 132 |
+
"retrieval_rank": {
|
| 133 |
+
"best_baseline": "B2",
|
| 134 |
+
"pairs": 40,
|
| 135 |
+
"delta": 0.075,
|
| 136 |
+
"ci_lower": 0.0,
|
| 137 |
+
"ci_upper": 0.225,
|
| 138 |
+
"confidence": 0.95,
|
| 139 |
+
"bootstrap_samples": 10000
|
| 140 |
+
}
|
| 141 |
+
},
|
| 142 |
+
"completion_check": {
|
| 143 |
+
"checks": {
|
| 144 |
+
"held_out_pairs_30_to_50": true,
|
| 145 |
+
"all_pairs_have_b0_to_b3": true,
|
| 146 |
+
"uniform_generation_seed": true,
|
| 147 |
+
"required_metrics_present": true,
|
| 148 |
+
"side_by_side_cases_6_to_10": true
|
| 149 |
+
},
|
| 150 |
+
"passed": true
|
| 151 |
+
}
|
| 152 |
+
}
|
mugen_config.json
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"schema_version": 1,
|
| 3 |
+
"base_model": "nvidia/AnyFlow-FAR-Wan2.1-1.3B-Diffusers",
|
| 4 |
+
"checkpoint_step": 300,
|
| 5 |
+
"condition_scale": 0.1,
|
| 6 |
+
"reference_tokens": 4,
|
| 7 |
+
"reference_top_k": 3,
|
| 8 |
+
"lora": {
|
| 9 |
+
"rank": 16,
|
| 10 |
+
"alpha": 32
|
| 11 |
+
},
|
| 12 |
+
"generation": {
|
| 13 |
+
"num_frames": 25,
|
| 14 |
+
"height": 256,
|
| 15 |
+
"width": 448,
|
| 16 |
+
"latent_chunk_size": 2
|
| 17 |
+
},
|
| 18 |
+
"encoder_versions": {
|
| 19 |
+
"imagebind": "ImageBind@53680b0",
|
| 20 |
+
"internvideo": "InternVideo@3965eef:Stage2-1B-224p-f4"
|
| 21 |
+
},
|
| 22 |
+
"feature_rows": 6000,
|
| 23 |
+
"training_metrics": {
|
| 24 |
+
"train_loss": 0.23321709036827087,
|
| 25 |
+
"validation_loss": 0.4095851182937622
|
| 26 |
+
},
|
| 27 |
+
"upstream_weights_included": false,
|
| 28 |
+
"optimizer_state_included": false
|
| 29 |
+
}
|
pytorch_lora_weights.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:9d164a72cca4195070da8d1ccc2b42258673f4c64e88c3304eba32ea78e0fcfd
|
| 3 |
+
size 11824784
|