Upload folder using huggingface_hub
Browse filesThis view is limited to 50 files because it contains too many changes. See raw diff
- .gitattributes +520 -0
- Wan2.1-T2V-1.3B/.gitattributes +47 -0
- Wan2.1-T2V-1.3B/LICENSE.txt +201 -0
- Wan2.1-T2V-1.3B/README.md +298 -0
- Wan2.1-T2V-1.3B/Wan2.1_VAE.pth +3 -0
- Wan2.1-T2V-1.3B/assets/.DS_Store +0 -0
- Wan2.1-T2V-1.3B/assets/comp_effic.png +3 -0
- Wan2.1-T2V-1.3B/assets/data_for_diff_stage.jpg +3 -0
- Wan2.1-T2V-1.3B/assets/i2v_res.png +3 -0
- Wan2.1-T2V-1.3B/assets/logo.png +0 -0
- Wan2.1-T2V-1.3B/assets/t2v_res.jpg +3 -0
- Wan2.1-T2V-1.3B/assets/vben_1.3b_vs_sota.png +3 -0
- Wan2.1-T2V-1.3B/assets/vben_vs_sota.png +3 -0
- Wan2.1-T2V-1.3B/assets/video_dit_arch.jpg +3 -0
- Wan2.1-T2V-1.3B/assets/video_vae_res.jpg +3 -0
- Wan2.1-T2V-1.3B/config.json +14 -0
- Wan2.1-T2V-1.3B/diffusion_pytorch_model.safetensors +3 -0
- Wan2.1-T2V-1.3B/examples/i2v_input.JPG +3 -0
- Wan2.1-T2V-1.3B/google/umt5-xxl/special_tokens_map.json +308 -0
- Wan2.1-T2V-1.3B/google/umt5-xxl/spiece.model +3 -0
- Wan2.1-T2V-1.3B/google/umt5-xxl/tokenizer.json +3 -0
- Wan2.1-T2V-1.3B/google/umt5-xxl/tokenizer_config.json +2748 -0
- Wan2.1-T2V-1.3B/models_t5_umt5-xxl-enc-bf16.pth +3 -0
- diffsynth-studio/.github/workflows/logo.gif +3 -0
- diffsynth-studio/.github/workflows/publish.yaml +29 -0
- diffsynth-studio/.gitignore +11 -0
- diffsynth-studio/.vscode/settings.json +5 -0
- diffsynth-studio/LICENSE +201 -0
- diffsynth-studio/README_zh.md +478 -0
- diffsynth-studio/apps/gradio/DiffSynth_Studio.py +252 -0
- diffsynth-studio/apps/gradio/entity_level_control.py +390 -0
- diffsynth-studio/apps/streamlit/DiffSynth_Studio.py +15 -0
- diffsynth-studio/apps/streamlit/pages/1_Image_Creator.py +362 -0
- diffsynth-studio/apps/streamlit/pages/2_Video_Creator.py +197 -0
- diffsynth-studio/diffsynth.egg-info/PKG-INFO +32 -0
- diffsynth-studio/diffsynth.egg-info/SOURCES.txt +252 -0
- diffsynth-studio/diffsynth.egg-info/dependency_links.txt +1 -0
- diffsynth-studio/diffsynth.egg-info/requires.txt +16 -0
- diffsynth-studio/diffsynth.egg-info/top_level.txt +1 -0
- diffsynth-studio/diffsynth/__init__.py +6 -0
- diffsynth-studio/diffsynth/__pycache__/__init__.cpython-310.pyc +0 -0
- diffsynth-studio/diffsynth/__pycache__/__init__.cpython-311.pyc +0 -0
- diffsynth-studio/diffsynth/configs/__init__.py +0 -0
- diffsynth-studio/diffsynth/configs/__pycache__/__init__.cpython-310.pyc +0 -0
- diffsynth-studio/diffsynth/configs/__pycache__/__init__.cpython-311.pyc +0 -0
- diffsynth-studio/diffsynth/configs/__pycache__/model_config.cpython-310.pyc +0 -0
- diffsynth-studio/diffsynth/configs/__pycache__/model_config.cpython-311.pyc +0 -0
- diffsynth-studio/diffsynth/configs/model_config.py +843 -0
- diffsynth-studio/diffsynth/controlnets/__init__.py +2 -0
- diffsynth-studio/diffsynth/controlnets/__pycache__/__init__.cpython-310.pyc +0 -0
.gitattributes
CHANGED
|
@@ -33,3 +33,523 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
|
| 33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
| 36 |
+
Wan2.1-T2V-1.3B/assets/comp_effic.png filter=lfs diff=lfs merge=lfs -text
|
| 37 |
+
Wan2.1-T2V-1.3B/assets/data_for_diff_stage.jpg filter=lfs diff=lfs merge=lfs -text
|
| 38 |
+
Wan2.1-T2V-1.3B/assets/i2v_res.png filter=lfs diff=lfs merge=lfs -text
|
| 39 |
+
Wan2.1-T2V-1.3B/assets/t2v_res.jpg filter=lfs diff=lfs merge=lfs -text
|
| 40 |
+
Wan2.1-T2V-1.3B/assets/vben_1.3b_vs_sota.png filter=lfs diff=lfs merge=lfs -text
|
| 41 |
+
Wan2.1-T2V-1.3B/assets/vben_vs_sota.png filter=lfs diff=lfs merge=lfs -text
|
| 42 |
+
Wan2.1-T2V-1.3B/assets/video_dit_arch.jpg filter=lfs diff=lfs merge=lfs -text
|
| 43 |
+
Wan2.1-T2V-1.3B/assets/video_vae_res.jpg filter=lfs diff=lfs merge=lfs -text
|
| 44 |
+
Wan2.1-T2V-1.3B/examples/i2v_input.JPG filter=lfs diff=lfs merge=lfs -text
|
| 45 |
+
Wan2.1-T2V-1.3B/google/umt5-xxl/tokenizer.json filter=lfs diff=lfs merge=lfs -text
|
| 46 |
+
diffsynth-studio/.github/workflows/logo.gif filter=lfs diff=lfs merge=lfs -text
|
| 47 |
+
diffsynth-studio/diffsynth/models/__pycache__/sd3_text_encoder.cpython-310.pyc filter=lfs diff=lfs merge=lfs -text
|
| 48 |
+
diffsynth-studio/diffsynth/models/__pycache__/sd3_text_encoder.cpython-311.pyc filter=lfs diff=lfs merge=lfs -text
|
| 49 |
+
diffsynth-studio/diffsynth/models/__pycache__/sd_unet.cpython-311.pyc filter=lfs diff=lfs merge=lfs -text
|
| 50 |
+
diffsynth-studio/diffsynth/models/__pycache__/sdxl_unet.cpython-310.pyc filter=lfs diff=lfs merge=lfs -text
|
| 51 |
+
diffsynth-studio/diffsynth/models/__pycache__/sdxl_unet.cpython-311.pyc filter=lfs diff=lfs merge=lfs -text
|
| 52 |
+
diffsynth-studio/diffsynth/models/__pycache__/svd_unet.cpython-310.pyc filter=lfs diff=lfs merge=lfs -text
|
| 53 |
+
diffsynth-studio/diffsynth/models/__pycache__/svd_unet.cpython-311.pyc filter=lfs diff=lfs merge=lfs -text
|
| 54 |
+
diffsynth-studio/diffsynth/tokenizer_configs/hunyuan_video/tokenizer_2/tokenizer.json filter=lfs diff=lfs merge=lfs -text
|
| 55 |
+
diffsynth-studio/diffsynth/tokenizer_configs/kolors/tokenizer/vocab.txt filter=lfs diff=lfs merge=lfs -text
|
| 56 |
+
result/0GER2Qd0vFw_0/00000.jpg filter=lfs diff=lfs merge=lfs -text
|
| 57 |
+
result/0GER2Qd0vFw_0/00001.jpg filter=lfs diff=lfs merge=lfs -text
|
| 58 |
+
result/0GER2Qd0vFw_0/00002.jpg filter=lfs diff=lfs merge=lfs -text
|
| 59 |
+
result/0GER2Qd0vFw_0/00003.jpg filter=lfs diff=lfs merge=lfs -text
|
| 60 |
+
result/0GER2Qd0vFw_0/00004.jpg filter=lfs diff=lfs merge=lfs -text
|
| 61 |
+
result/0GER2Qd0vFw_0/00005.jpg filter=lfs diff=lfs merge=lfs -text
|
| 62 |
+
result/0GER2Qd0vFw_0/00006.jpg filter=lfs diff=lfs merge=lfs -text
|
| 63 |
+
result/0GER2Qd0vFw_0/00007.jpg filter=lfs diff=lfs merge=lfs -text
|
| 64 |
+
result/0GER2Qd0vFw_0/00008.jpg filter=lfs diff=lfs merge=lfs -text
|
| 65 |
+
result/0GER2Qd0vFw_0/00009.jpg filter=lfs diff=lfs merge=lfs -text
|
| 66 |
+
result/0GER2Qd0vFw_0/00010.jpg filter=lfs diff=lfs merge=lfs -text
|
| 67 |
+
result/0GER2Qd0vFw_0/00011.jpg filter=lfs diff=lfs merge=lfs -text
|
| 68 |
+
result/0GER2Qd0vFw_0/00012.jpg filter=lfs diff=lfs merge=lfs -text
|
| 69 |
+
result/0GER2Qd0vFw_0/00013.jpg filter=lfs diff=lfs merge=lfs -text
|
| 70 |
+
result/0GER2Qd0vFw_0/00014.jpg filter=lfs diff=lfs merge=lfs -text
|
| 71 |
+
result/0GER2Qd0vFw_0/00015.jpg filter=lfs diff=lfs merge=lfs -text
|
| 72 |
+
result/0GER2Qd0vFw_0/00016.jpg filter=lfs diff=lfs merge=lfs -text
|
| 73 |
+
result/0GER2Qd0vFw_0/00017.jpg filter=lfs diff=lfs merge=lfs -text
|
| 74 |
+
result/0GER2Qd0vFw_0/00018.jpg filter=lfs diff=lfs merge=lfs -text
|
| 75 |
+
result/0GER2Qd0vFw_0/00019.jpg filter=lfs diff=lfs merge=lfs -text
|
| 76 |
+
result/0HBDWix1LAk_1/00000.jpg filter=lfs diff=lfs merge=lfs -text
|
| 77 |
+
result/0HBDWix1LAk_1/00001.jpg filter=lfs diff=lfs merge=lfs -text
|
| 78 |
+
result/0HBDWix1LAk_1/00002.jpg filter=lfs diff=lfs merge=lfs -text
|
| 79 |
+
result/0HBDWix1LAk_1/00003.jpg filter=lfs diff=lfs merge=lfs -text
|
| 80 |
+
result/0HBDWix1LAk_1/00004.jpg filter=lfs diff=lfs merge=lfs -text
|
| 81 |
+
result/0HBDWix1LAk_1/00005.jpg filter=lfs diff=lfs merge=lfs -text
|
| 82 |
+
result/0HBDWix1LAk_1/00006.jpg filter=lfs diff=lfs merge=lfs -text
|
| 83 |
+
result/0HBDWix1LAk_1/00007.jpg filter=lfs diff=lfs merge=lfs -text
|
| 84 |
+
result/0HBDWix1LAk_1/00008.jpg filter=lfs diff=lfs merge=lfs -text
|
| 85 |
+
result/0HBDWix1LAk_1/00009.jpg filter=lfs diff=lfs merge=lfs -text
|
| 86 |
+
result/0HBDWix1LAk_1/00010.jpg filter=lfs diff=lfs merge=lfs -text
|
| 87 |
+
result/0HBDWix1LAk_1/00011.jpg filter=lfs diff=lfs merge=lfs -text
|
| 88 |
+
result/0HBDWix1LAk_1/00012.jpg filter=lfs diff=lfs merge=lfs -text
|
| 89 |
+
result/0HBDWix1LAk_1/00013.jpg filter=lfs diff=lfs merge=lfs -text
|
| 90 |
+
result/0HBDWix1LAk_1/00014.jpg filter=lfs diff=lfs merge=lfs -text
|
| 91 |
+
result/0HBDWix1LAk_1/00015.jpg filter=lfs diff=lfs merge=lfs -text
|
| 92 |
+
result/0HBDWix1LAk_1/00016.jpg filter=lfs diff=lfs merge=lfs -text
|
| 93 |
+
result/0HBDWix1LAk_1/00017.jpg filter=lfs diff=lfs merge=lfs -text
|
| 94 |
+
result/0HBDWix1LAk_1/00018.jpg filter=lfs diff=lfs merge=lfs -text
|
| 95 |
+
result/0HBDWix1LAk_1/00019.jpg filter=lfs diff=lfs merge=lfs -text
|
| 96 |
+
result/3DE9R-UpL7w_0/00000.jpg filter=lfs diff=lfs merge=lfs -text
|
| 97 |
+
result/3DE9R-UpL7w_0/00001.jpg filter=lfs diff=lfs merge=lfs -text
|
| 98 |
+
result/3DE9R-UpL7w_0/00002.jpg filter=lfs diff=lfs merge=lfs -text
|
| 99 |
+
result/3DE9R-UpL7w_0/00003.jpg filter=lfs diff=lfs merge=lfs -text
|
| 100 |
+
result/3DE9R-UpL7w_0/00004.jpg filter=lfs diff=lfs merge=lfs -text
|
| 101 |
+
result/3DE9R-UpL7w_0/00005.jpg filter=lfs diff=lfs merge=lfs -text
|
| 102 |
+
result/3DE9R-UpL7w_0/00006.jpg filter=lfs diff=lfs merge=lfs -text
|
| 103 |
+
result/3DE9R-UpL7w_0/00007.jpg filter=lfs diff=lfs merge=lfs -text
|
| 104 |
+
result/3DE9R-UpL7w_0/00008.jpg filter=lfs diff=lfs merge=lfs -text
|
| 105 |
+
result/3DE9R-UpL7w_0/00009.jpg filter=lfs diff=lfs merge=lfs -text
|
| 106 |
+
result/3DE9R-UpL7w_0/00010.jpg filter=lfs diff=lfs merge=lfs -text
|
| 107 |
+
result/3DE9R-UpL7w_0/00011.jpg filter=lfs diff=lfs merge=lfs -text
|
| 108 |
+
result/3DE9R-UpL7w_0/00012.jpg filter=lfs diff=lfs merge=lfs -text
|
| 109 |
+
result/3DE9R-UpL7w_0/00013.jpg filter=lfs diff=lfs merge=lfs -text
|
| 110 |
+
result/3DE9R-UpL7w_0/00014.jpg filter=lfs diff=lfs merge=lfs -text
|
| 111 |
+
result/3DE9R-UpL7w_0/00015.jpg filter=lfs diff=lfs merge=lfs -text
|
| 112 |
+
result/3DE9R-UpL7w_0/00016.jpg filter=lfs diff=lfs merge=lfs -text
|
| 113 |
+
result/3DE9R-UpL7w_0/00017.jpg filter=lfs diff=lfs merge=lfs -text
|
| 114 |
+
result/3DE9R-UpL7w_0/00018.jpg filter=lfs diff=lfs merge=lfs -text
|
| 115 |
+
result/3DE9R-UpL7w_0/00019.jpg filter=lfs diff=lfs merge=lfs -text
|
| 116 |
+
result/3PVAsqby4jk_0/00000.jpg filter=lfs diff=lfs merge=lfs -text
|
| 117 |
+
result/3PVAsqby4jk_0/00001.jpg filter=lfs diff=lfs merge=lfs -text
|
| 118 |
+
result/3PVAsqby4jk_0/00002.jpg filter=lfs diff=lfs merge=lfs -text
|
| 119 |
+
result/3PVAsqby4jk_0/00003.jpg filter=lfs diff=lfs merge=lfs -text
|
| 120 |
+
result/3PVAsqby4jk_0/00004.jpg filter=lfs diff=lfs merge=lfs -text
|
| 121 |
+
result/3PVAsqby4jk_0/00005.jpg filter=lfs diff=lfs merge=lfs -text
|
| 122 |
+
result/3PVAsqby4jk_0/00006.jpg filter=lfs diff=lfs merge=lfs -text
|
| 123 |
+
result/3PVAsqby4jk_0/00007.jpg filter=lfs diff=lfs merge=lfs -text
|
| 124 |
+
result/3PVAsqby4jk_0/00008.jpg filter=lfs diff=lfs merge=lfs -text
|
| 125 |
+
result/3PVAsqby4jk_0/00009.jpg filter=lfs diff=lfs merge=lfs -text
|
| 126 |
+
result/3PVAsqby4jk_0/00010.jpg filter=lfs diff=lfs merge=lfs -text
|
| 127 |
+
result/3PVAsqby4jk_0/00011.jpg filter=lfs diff=lfs merge=lfs -text
|
| 128 |
+
result/3PVAsqby4jk_0/00012.jpg filter=lfs diff=lfs merge=lfs -text
|
| 129 |
+
result/3PVAsqby4jk_0/00013.jpg filter=lfs diff=lfs merge=lfs -text
|
| 130 |
+
result/3PVAsqby4jk_0/00014.jpg filter=lfs diff=lfs merge=lfs -text
|
| 131 |
+
result/3PVAsqby4jk_0/00015.jpg filter=lfs diff=lfs merge=lfs -text
|
| 132 |
+
result/3PVAsqby4jk_0/00016.jpg filter=lfs diff=lfs merge=lfs -text
|
| 133 |
+
result/3PVAsqby4jk_0/00017.jpg filter=lfs diff=lfs merge=lfs -text
|
| 134 |
+
result/3PVAsqby4jk_0/00018.jpg filter=lfs diff=lfs merge=lfs -text
|
| 135 |
+
result/3PVAsqby4jk_0/00019.jpg filter=lfs diff=lfs merge=lfs -text
|
| 136 |
+
result/3jdzVaWohVw_0/00000.jpg filter=lfs diff=lfs merge=lfs -text
|
| 137 |
+
result/3jdzVaWohVw_0/00001.jpg filter=lfs diff=lfs merge=lfs -text
|
| 138 |
+
result/3jdzVaWohVw_0/00002.jpg filter=lfs diff=lfs merge=lfs -text
|
| 139 |
+
result/3jdzVaWohVw_0/00003.jpg filter=lfs diff=lfs merge=lfs -text
|
| 140 |
+
result/3jdzVaWohVw_0/00004.jpg filter=lfs diff=lfs merge=lfs -text
|
| 141 |
+
result/3jdzVaWohVw_0/00005.jpg filter=lfs diff=lfs merge=lfs -text
|
| 142 |
+
result/3jdzVaWohVw_0/00006.jpg filter=lfs diff=lfs merge=lfs -text
|
| 143 |
+
result/3jdzVaWohVw_0/00007.jpg filter=lfs diff=lfs merge=lfs -text
|
| 144 |
+
result/3jdzVaWohVw_0/00008.jpg filter=lfs diff=lfs merge=lfs -text
|
| 145 |
+
result/3jdzVaWohVw_0/00009.jpg filter=lfs diff=lfs merge=lfs -text
|
| 146 |
+
result/3jdzVaWohVw_0/00010.jpg filter=lfs diff=lfs merge=lfs -text
|
| 147 |
+
result/3jdzVaWohVw_0/00011.jpg filter=lfs diff=lfs merge=lfs -text
|
| 148 |
+
result/3jdzVaWohVw_0/00012.jpg filter=lfs diff=lfs merge=lfs -text
|
| 149 |
+
result/3jdzVaWohVw_0/00013.jpg filter=lfs diff=lfs merge=lfs -text
|
| 150 |
+
result/3jdzVaWohVw_0/00014.jpg filter=lfs diff=lfs merge=lfs -text
|
| 151 |
+
result/3jdzVaWohVw_0/00015.jpg filter=lfs diff=lfs merge=lfs -text
|
| 152 |
+
result/3jdzVaWohVw_0/00016.jpg filter=lfs diff=lfs merge=lfs -text
|
| 153 |
+
result/3jdzVaWohVw_0/00017.jpg filter=lfs diff=lfs merge=lfs -text
|
| 154 |
+
result/3jdzVaWohVw_0/00018.jpg filter=lfs diff=lfs merge=lfs -text
|
| 155 |
+
result/3jdzVaWohVw_0/00019.jpg filter=lfs diff=lfs merge=lfs -text
|
| 156 |
+
result/4e0D1OyvPrI_0/00000.jpg filter=lfs diff=lfs merge=lfs -text
|
| 157 |
+
result/4e0D1OyvPrI_0/00001.jpg filter=lfs diff=lfs merge=lfs -text
|
| 158 |
+
result/4e0D1OyvPrI_0/00002.jpg filter=lfs diff=lfs merge=lfs -text
|
| 159 |
+
result/4e0D1OyvPrI_0/00003.jpg filter=lfs diff=lfs merge=lfs -text
|
| 160 |
+
result/4e0D1OyvPrI_0/00004.jpg filter=lfs diff=lfs merge=lfs -text
|
| 161 |
+
result/4e0D1OyvPrI_0/00005.jpg filter=lfs diff=lfs merge=lfs -text
|
| 162 |
+
result/4e0D1OyvPrI_0/00006.jpg filter=lfs diff=lfs merge=lfs -text
|
| 163 |
+
result/4e0D1OyvPrI_0/00007.jpg filter=lfs diff=lfs merge=lfs -text
|
| 164 |
+
result/4e0D1OyvPrI_0/00008.jpg filter=lfs diff=lfs merge=lfs -text
|
| 165 |
+
result/4e0D1OyvPrI_0/00009.jpg filter=lfs diff=lfs merge=lfs -text
|
| 166 |
+
result/4e0D1OyvPrI_0/00010.jpg filter=lfs diff=lfs merge=lfs -text
|
| 167 |
+
result/4e0D1OyvPrI_0/00011.jpg filter=lfs diff=lfs merge=lfs -text
|
| 168 |
+
result/4e0D1OyvPrI_0/00012.jpg filter=lfs diff=lfs merge=lfs -text
|
| 169 |
+
result/4e0D1OyvPrI_0/00013.jpg filter=lfs diff=lfs merge=lfs -text
|
| 170 |
+
result/4e0D1OyvPrI_0/00014.jpg filter=lfs diff=lfs merge=lfs -text
|
| 171 |
+
result/4e0D1OyvPrI_0/00015.jpg filter=lfs diff=lfs merge=lfs -text
|
| 172 |
+
result/4e0D1OyvPrI_0/00016.jpg filter=lfs diff=lfs merge=lfs -text
|
| 173 |
+
result/4e0D1OyvPrI_0/00017.jpg filter=lfs diff=lfs merge=lfs -text
|
| 174 |
+
result/4e0D1OyvPrI_0/00018.jpg filter=lfs diff=lfs merge=lfs -text
|
| 175 |
+
result/4e0D1OyvPrI_0/00019.jpg filter=lfs diff=lfs merge=lfs -text
|
| 176 |
+
result/5TqvkG4uWk0_0/00000.jpg filter=lfs diff=lfs merge=lfs -text
|
| 177 |
+
result/5TqvkG4uWk0_0/00001.jpg filter=lfs diff=lfs merge=lfs -text
|
| 178 |
+
result/5TqvkG4uWk0_0/00002.jpg filter=lfs diff=lfs merge=lfs -text
|
| 179 |
+
result/5TqvkG4uWk0_0/00003.jpg filter=lfs diff=lfs merge=lfs -text
|
| 180 |
+
result/5TqvkG4uWk0_0/00004.jpg filter=lfs diff=lfs merge=lfs -text
|
| 181 |
+
result/5TqvkG4uWk0_0/00005.jpg filter=lfs diff=lfs merge=lfs -text
|
| 182 |
+
result/5TqvkG4uWk0_0/00006.jpg filter=lfs diff=lfs merge=lfs -text
|
| 183 |
+
result/5TqvkG4uWk0_0/00007.jpg filter=lfs diff=lfs merge=lfs -text
|
| 184 |
+
result/5TqvkG4uWk0_0/00008.jpg filter=lfs diff=lfs merge=lfs -text
|
| 185 |
+
result/5TqvkG4uWk0_0/00009.jpg filter=lfs diff=lfs merge=lfs -text
|
| 186 |
+
result/5TqvkG4uWk0_0/00010.jpg filter=lfs diff=lfs merge=lfs -text
|
| 187 |
+
result/5TqvkG4uWk0_0/00011.jpg filter=lfs diff=lfs merge=lfs -text
|
| 188 |
+
result/5TqvkG4uWk0_0/00012.jpg filter=lfs diff=lfs merge=lfs -text
|
| 189 |
+
result/5TqvkG4uWk0_0/00013.jpg filter=lfs diff=lfs merge=lfs -text
|
| 190 |
+
result/5TqvkG4uWk0_0/00014.jpg filter=lfs diff=lfs merge=lfs -text
|
| 191 |
+
result/5TqvkG4uWk0_0/00015.jpg filter=lfs diff=lfs merge=lfs -text
|
| 192 |
+
result/5TqvkG4uWk0_0/00016.jpg filter=lfs diff=lfs merge=lfs -text
|
| 193 |
+
result/5TqvkG4uWk0_0/00017.jpg filter=lfs diff=lfs merge=lfs -text
|
| 194 |
+
result/5TqvkG4uWk0_0/00018.jpg filter=lfs diff=lfs merge=lfs -text
|
| 195 |
+
result/5TqvkG4uWk0_0/00019.jpg filter=lfs diff=lfs merge=lfs -text
|
| 196 |
+
result/6XEKPSnk1QQ_0/00000.jpg filter=lfs diff=lfs merge=lfs -text
|
| 197 |
+
result/6XEKPSnk1QQ_0/00001.jpg filter=lfs diff=lfs merge=lfs -text
|
| 198 |
+
result/6XEKPSnk1QQ_0/00002.jpg filter=lfs diff=lfs merge=lfs -text
|
| 199 |
+
result/6XEKPSnk1QQ_0/00003.jpg filter=lfs diff=lfs merge=lfs -text
|
| 200 |
+
result/6XEKPSnk1QQ_0/00004.jpg filter=lfs diff=lfs merge=lfs -text
|
| 201 |
+
result/6XEKPSnk1QQ_0/00005.jpg filter=lfs diff=lfs merge=lfs -text
|
| 202 |
+
result/6XEKPSnk1QQ_0/00006.jpg filter=lfs diff=lfs merge=lfs -text
|
| 203 |
+
result/6XEKPSnk1QQ_0/00007.jpg filter=lfs diff=lfs merge=lfs -text
|
| 204 |
+
result/6XEKPSnk1QQ_0/00008.jpg filter=lfs diff=lfs merge=lfs -text
|
| 205 |
+
result/6XEKPSnk1QQ_0/00009.jpg filter=lfs diff=lfs merge=lfs -text
|
| 206 |
+
result/6XEKPSnk1QQ_0/00010.jpg filter=lfs diff=lfs merge=lfs -text
|
| 207 |
+
result/6XEKPSnk1QQ_0/00011.jpg filter=lfs diff=lfs merge=lfs -text
|
| 208 |
+
result/6XEKPSnk1QQ_0/00012.jpg filter=lfs diff=lfs merge=lfs -text
|
| 209 |
+
result/6XEKPSnk1QQ_0/00013.jpg filter=lfs diff=lfs merge=lfs -text
|
| 210 |
+
result/6XEKPSnk1QQ_0/00014.jpg filter=lfs diff=lfs merge=lfs -text
|
| 211 |
+
result/6XEKPSnk1QQ_0/00015.jpg filter=lfs diff=lfs merge=lfs -text
|
| 212 |
+
result/6XEKPSnk1QQ_0/00016.jpg filter=lfs diff=lfs merge=lfs -text
|
| 213 |
+
result/6XEKPSnk1QQ_0/00017.jpg filter=lfs diff=lfs merge=lfs -text
|
| 214 |
+
result/6XEKPSnk1QQ_0/00018.jpg filter=lfs diff=lfs merge=lfs -text
|
| 215 |
+
result/6XEKPSnk1QQ_0/00019.jpg filter=lfs diff=lfs merge=lfs -text
|
| 216 |
+
result/9F6LlyZ1GRI_0/00000.jpg filter=lfs diff=lfs merge=lfs -text
|
| 217 |
+
result/9F6LlyZ1GRI_0/00001.jpg filter=lfs diff=lfs merge=lfs -text
|
| 218 |
+
result/9F6LlyZ1GRI_0/00002.jpg filter=lfs diff=lfs merge=lfs -text
|
| 219 |
+
result/9F6LlyZ1GRI_0/00003.jpg filter=lfs diff=lfs merge=lfs -text
|
| 220 |
+
result/9F6LlyZ1GRI_0/00004.jpg filter=lfs diff=lfs merge=lfs -text
|
| 221 |
+
result/9F6LlyZ1GRI_0/00005.jpg filter=lfs diff=lfs merge=lfs -text
|
| 222 |
+
result/9F6LlyZ1GRI_0/00006.jpg filter=lfs diff=lfs merge=lfs -text
|
| 223 |
+
result/9F6LlyZ1GRI_0/00007.jpg filter=lfs diff=lfs merge=lfs -text
|
| 224 |
+
result/9F6LlyZ1GRI_0/00008.jpg filter=lfs diff=lfs merge=lfs -text
|
| 225 |
+
result/9F6LlyZ1GRI_0/00009.jpg filter=lfs diff=lfs merge=lfs -text
|
| 226 |
+
result/9F6LlyZ1GRI_0/00010.jpg filter=lfs diff=lfs merge=lfs -text
|
| 227 |
+
result/9F6LlyZ1GRI_0/00011.jpg filter=lfs diff=lfs merge=lfs -text
|
| 228 |
+
result/9F6LlyZ1GRI_0/00012.jpg filter=lfs diff=lfs merge=lfs -text
|
| 229 |
+
result/9F6LlyZ1GRI_0/00013.jpg filter=lfs diff=lfs merge=lfs -text
|
| 230 |
+
result/9F6LlyZ1GRI_0/00014.jpg filter=lfs diff=lfs merge=lfs -text
|
| 231 |
+
result/9F6LlyZ1GRI_0/00015.jpg filter=lfs diff=lfs merge=lfs -text
|
| 232 |
+
result/9F6LlyZ1GRI_0/00016.jpg filter=lfs diff=lfs merge=lfs -text
|
| 233 |
+
result/9F6LlyZ1GRI_0/00017.jpg filter=lfs diff=lfs merge=lfs -text
|
| 234 |
+
result/9F6LlyZ1GRI_0/00018.jpg filter=lfs diff=lfs merge=lfs -text
|
| 235 |
+
result/9F6LlyZ1GRI_0/00019.jpg filter=lfs diff=lfs merge=lfs -text
|
| 236 |
+
result/9HizwmZHguc_0/00000.jpg filter=lfs diff=lfs merge=lfs -text
|
| 237 |
+
result/9HizwmZHguc_0/00001.jpg filter=lfs diff=lfs merge=lfs -text
|
| 238 |
+
result/9HizwmZHguc_0/00002.jpg filter=lfs diff=lfs merge=lfs -text
|
| 239 |
+
result/9HizwmZHguc_0/00003.jpg filter=lfs diff=lfs merge=lfs -text
|
| 240 |
+
result/9HizwmZHguc_0/00004.jpg filter=lfs diff=lfs merge=lfs -text
|
| 241 |
+
result/9HizwmZHguc_0/00005.jpg filter=lfs diff=lfs merge=lfs -text
|
| 242 |
+
result/9HizwmZHguc_0/00006.jpg filter=lfs diff=lfs merge=lfs -text
|
| 243 |
+
result/9HizwmZHguc_0/00007.jpg filter=lfs diff=lfs merge=lfs -text
|
| 244 |
+
result/9HizwmZHguc_0/00008.jpg filter=lfs diff=lfs merge=lfs -text
|
| 245 |
+
result/9HizwmZHguc_0/00009.jpg filter=lfs diff=lfs merge=lfs -text
|
| 246 |
+
result/9HizwmZHguc_0/00010.jpg filter=lfs diff=lfs merge=lfs -text
|
| 247 |
+
result/9HizwmZHguc_0/00011.jpg filter=lfs diff=lfs merge=lfs -text
|
| 248 |
+
result/9HizwmZHguc_0/00012.jpg filter=lfs diff=lfs merge=lfs -text
|
| 249 |
+
result/9HizwmZHguc_0/00013.jpg filter=lfs diff=lfs merge=lfs -text
|
| 250 |
+
result/9HizwmZHguc_0/00014.jpg filter=lfs diff=lfs merge=lfs -text
|
| 251 |
+
result/9HizwmZHguc_0/00015.jpg filter=lfs diff=lfs merge=lfs -text
|
| 252 |
+
result/9HizwmZHguc_0/00016.jpg filter=lfs diff=lfs merge=lfs -text
|
| 253 |
+
result/9HizwmZHguc_0/00017.jpg filter=lfs diff=lfs merge=lfs -text
|
| 254 |
+
result/9HizwmZHguc_0/00018.jpg filter=lfs diff=lfs merge=lfs -text
|
| 255 |
+
result/9HizwmZHguc_0/00019.jpg filter=lfs diff=lfs merge=lfs -text
|
| 256 |
+
result/B7BM97SFv-E_0/00000.jpg filter=lfs diff=lfs merge=lfs -text
|
| 257 |
+
result/B7BM97SFv-E_0/00001.jpg filter=lfs diff=lfs merge=lfs -text
|
| 258 |
+
result/B7BM97SFv-E_0/00002.jpg filter=lfs diff=lfs merge=lfs -text
|
| 259 |
+
result/B7BM97SFv-E_0/00003.jpg filter=lfs diff=lfs merge=lfs -text
|
| 260 |
+
result/B7BM97SFv-E_0/00004.jpg filter=lfs diff=lfs merge=lfs -text
|
| 261 |
+
result/B7BM97SFv-E_0/00005.jpg filter=lfs diff=lfs merge=lfs -text
|
| 262 |
+
result/B7BM97SFv-E_0/00006.jpg filter=lfs diff=lfs merge=lfs -text
|
| 263 |
+
result/B7BM97SFv-E_0/00007.jpg filter=lfs diff=lfs merge=lfs -text
|
| 264 |
+
result/B7BM97SFv-E_0/00008.jpg filter=lfs diff=lfs merge=lfs -text
|
| 265 |
+
result/B7BM97SFv-E_0/00009.jpg filter=lfs diff=lfs merge=lfs -text
|
| 266 |
+
result/B7BM97SFv-E_0/00010.jpg filter=lfs diff=lfs merge=lfs -text
|
| 267 |
+
result/B7BM97SFv-E_0/00011.jpg filter=lfs diff=lfs merge=lfs -text
|
| 268 |
+
result/B7BM97SFv-E_0/00012.jpg filter=lfs diff=lfs merge=lfs -text
|
| 269 |
+
result/B7BM97SFv-E_0/00013.jpg filter=lfs diff=lfs merge=lfs -text
|
| 270 |
+
result/B7BM97SFv-E_0/00014.jpg filter=lfs diff=lfs merge=lfs -text
|
| 271 |
+
result/B7BM97SFv-E_0/00015.jpg filter=lfs diff=lfs merge=lfs -text
|
| 272 |
+
result/B7BM97SFv-E_0/00016.jpg filter=lfs diff=lfs merge=lfs -text
|
| 273 |
+
result/B7BM97SFv-E_0/00017.jpg filter=lfs diff=lfs merge=lfs -text
|
| 274 |
+
result/B7BM97SFv-E_0/00018.jpg filter=lfs diff=lfs merge=lfs -text
|
| 275 |
+
result/B7BM97SFv-E_0/00019.jpg filter=lfs diff=lfs merge=lfs -text
|
| 276 |
+
result/C08QnMjDfIc_0/00000.jpg filter=lfs diff=lfs merge=lfs -text
|
| 277 |
+
result/C08QnMjDfIc_0/00001.jpg filter=lfs diff=lfs merge=lfs -text
|
| 278 |
+
result/C08QnMjDfIc_0/00002.jpg filter=lfs diff=lfs merge=lfs -text
|
| 279 |
+
result/C08QnMjDfIc_0/00003.jpg filter=lfs diff=lfs merge=lfs -text
|
| 280 |
+
result/C08QnMjDfIc_0/00004.jpg filter=lfs diff=lfs merge=lfs -text
|
| 281 |
+
result/C08QnMjDfIc_0/00005.jpg filter=lfs diff=lfs merge=lfs -text
|
| 282 |
+
result/C08QnMjDfIc_0/00006.jpg filter=lfs diff=lfs merge=lfs -text
|
| 283 |
+
result/C08QnMjDfIc_0/00007.jpg filter=lfs diff=lfs merge=lfs -text
|
| 284 |
+
result/C08QnMjDfIc_0/00008.jpg filter=lfs diff=lfs merge=lfs -text
|
| 285 |
+
result/C08QnMjDfIc_0/00009.jpg filter=lfs diff=lfs merge=lfs -text
|
| 286 |
+
result/C08QnMjDfIc_0/00010.jpg filter=lfs diff=lfs merge=lfs -text
|
| 287 |
+
result/C08QnMjDfIc_0/00011.jpg filter=lfs diff=lfs merge=lfs -text
|
| 288 |
+
result/C08QnMjDfIc_0/00012.jpg filter=lfs diff=lfs merge=lfs -text
|
| 289 |
+
result/C08QnMjDfIc_0/00013.jpg filter=lfs diff=lfs merge=lfs -text
|
| 290 |
+
result/C08QnMjDfIc_0/00014.jpg filter=lfs diff=lfs merge=lfs -text
|
| 291 |
+
result/C08QnMjDfIc_0/00015.jpg filter=lfs diff=lfs merge=lfs -text
|
| 292 |
+
result/C08QnMjDfIc_0/00016.jpg filter=lfs diff=lfs merge=lfs -text
|
| 293 |
+
result/C08QnMjDfIc_0/00017.jpg filter=lfs diff=lfs merge=lfs -text
|
| 294 |
+
result/C08QnMjDfIc_0/00018.jpg filter=lfs diff=lfs merge=lfs -text
|
| 295 |
+
result/C08QnMjDfIc_0/00019.jpg filter=lfs diff=lfs merge=lfs -text
|
| 296 |
+
result/CL55sbrvhrM_0/00000.jpg filter=lfs diff=lfs merge=lfs -text
|
| 297 |
+
result/CL55sbrvhrM_0/00001.jpg filter=lfs diff=lfs merge=lfs -text
|
| 298 |
+
result/CL55sbrvhrM_0/00002.jpg filter=lfs diff=lfs merge=lfs -text
|
| 299 |
+
result/CL55sbrvhrM_0/00003.jpg filter=lfs diff=lfs merge=lfs -text
|
| 300 |
+
result/CL55sbrvhrM_0/00004.jpg filter=lfs diff=lfs merge=lfs -text
|
| 301 |
+
result/CL55sbrvhrM_0/00005.jpg filter=lfs diff=lfs merge=lfs -text
|
| 302 |
+
result/CL55sbrvhrM_0/00006.jpg filter=lfs diff=lfs merge=lfs -text
|
| 303 |
+
result/CL55sbrvhrM_0/00007.jpg filter=lfs diff=lfs merge=lfs -text
|
| 304 |
+
result/CL55sbrvhrM_0/00008.jpg filter=lfs diff=lfs merge=lfs -text
|
| 305 |
+
result/CL55sbrvhrM_0/00009.jpg filter=lfs diff=lfs merge=lfs -text
|
| 306 |
+
result/CL55sbrvhrM_0/00010.jpg filter=lfs diff=lfs merge=lfs -text
|
| 307 |
+
result/CL55sbrvhrM_0/00011.jpg filter=lfs diff=lfs merge=lfs -text
|
| 308 |
+
result/CL55sbrvhrM_0/00012.jpg filter=lfs diff=lfs merge=lfs -text
|
| 309 |
+
result/CL55sbrvhrM_0/00013.jpg filter=lfs diff=lfs merge=lfs -text
|
| 310 |
+
result/CL55sbrvhrM_0/00014.jpg filter=lfs diff=lfs merge=lfs -text
|
| 311 |
+
result/CL55sbrvhrM_0/00015.jpg filter=lfs diff=lfs merge=lfs -text
|
| 312 |
+
result/CL55sbrvhrM_0/00016.jpg filter=lfs diff=lfs merge=lfs -text
|
| 313 |
+
result/CL55sbrvhrM_0/00017.jpg filter=lfs diff=lfs merge=lfs -text
|
| 314 |
+
result/CL55sbrvhrM_0/00018.jpg filter=lfs diff=lfs merge=lfs -text
|
| 315 |
+
result/CL55sbrvhrM_0/00019.jpg filter=lfs diff=lfs merge=lfs -text
|
| 316 |
+
result/HaYoSNXNZ0M_0/00000.jpg filter=lfs diff=lfs merge=lfs -text
|
| 317 |
+
result/HaYoSNXNZ0M_0/00001.jpg filter=lfs diff=lfs merge=lfs -text
|
| 318 |
+
result/HaYoSNXNZ0M_0/00002.jpg filter=lfs diff=lfs merge=lfs -text
|
| 319 |
+
result/HaYoSNXNZ0M_0/00003.jpg filter=lfs diff=lfs merge=lfs -text
|
| 320 |
+
result/HaYoSNXNZ0M_0/00004.jpg filter=lfs diff=lfs merge=lfs -text
|
| 321 |
+
result/HaYoSNXNZ0M_0/00005.jpg filter=lfs diff=lfs merge=lfs -text
|
| 322 |
+
result/HaYoSNXNZ0M_0/00006.jpg filter=lfs diff=lfs merge=lfs -text
|
| 323 |
+
result/HaYoSNXNZ0M_0/00007.jpg filter=lfs diff=lfs merge=lfs -text
|
| 324 |
+
result/HaYoSNXNZ0M_0/00008.jpg filter=lfs diff=lfs merge=lfs -text
|
| 325 |
+
result/HaYoSNXNZ0M_0/00009.jpg filter=lfs diff=lfs merge=lfs -text
|
| 326 |
+
result/HaYoSNXNZ0M_0/00010.jpg filter=lfs diff=lfs merge=lfs -text
|
| 327 |
+
result/HaYoSNXNZ0M_0/00011.jpg filter=lfs diff=lfs merge=lfs -text
|
| 328 |
+
result/HaYoSNXNZ0M_0/00012.jpg filter=lfs diff=lfs merge=lfs -text
|
| 329 |
+
result/HaYoSNXNZ0M_0/00013.jpg filter=lfs diff=lfs merge=lfs -text
|
| 330 |
+
result/HaYoSNXNZ0M_0/00014.jpg filter=lfs diff=lfs merge=lfs -text
|
| 331 |
+
result/HaYoSNXNZ0M_0/00015.jpg filter=lfs diff=lfs merge=lfs -text
|
| 332 |
+
result/HaYoSNXNZ0M_0/00016.jpg filter=lfs diff=lfs merge=lfs -text
|
| 333 |
+
result/HaYoSNXNZ0M_0/00017.jpg filter=lfs diff=lfs merge=lfs -text
|
| 334 |
+
result/HaYoSNXNZ0M_0/00018.jpg filter=lfs diff=lfs merge=lfs -text
|
| 335 |
+
result/HaYoSNXNZ0M_0/00019.jpg filter=lfs diff=lfs merge=lfs -text
|
| 336 |
+
result/IQrzZwkXQlI_0/00000.jpg filter=lfs diff=lfs merge=lfs -text
|
| 337 |
+
result/IQrzZwkXQlI_0/00001.jpg filter=lfs diff=lfs merge=lfs -text
|
| 338 |
+
result/IQrzZwkXQlI_0/00002.jpg filter=lfs diff=lfs merge=lfs -text
|
| 339 |
+
result/IQrzZwkXQlI_0/00003.jpg filter=lfs diff=lfs merge=lfs -text
|
| 340 |
+
result/IQrzZwkXQlI_0/00004.jpg filter=lfs diff=lfs merge=lfs -text
|
| 341 |
+
result/IQrzZwkXQlI_0/00005.jpg filter=lfs diff=lfs merge=lfs -text
|
| 342 |
+
result/IQrzZwkXQlI_0/00006.jpg filter=lfs diff=lfs merge=lfs -text
|
| 343 |
+
result/IQrzZwkXQlI_0/00007.jpg filter=lfs diff=lfs merge=lfs -text
|
| 344 |
+
result/IQrzZwkXQlI_0/00008.jpg filter=lfs diff=lfs merge=lfs -text
|
| 345 |
+
result/IQrzZwkXQlI_0/00009.jpg filter=lfs diff=lfs merge=lfs -text
|
| 346 |
+
result/IQrzZwkXQlI_0/00010.jpg filter=lfs diff=lfs merge=lfs -text
|
| 347 |
+
result/IQrzZwkXQlI_0/00011.jpg filter=lfs diff=lfs merge=lfs -text
|
| 348 |
+
result/IQrzZwkXQlI_0/00012.jpg filter=lfs diff=lfs merge=lfs -text
|
| 349 |
+
result/IQrzZwkXQlI_0/00013.jpg filter=lfs diff=lfs merge=lfs -text
|
| 350 |
+
result/IQrzZwkXQlI_0/00014.jpg filter=lfs diff=lfs merge=lfs -text
|
| 351 |
+
result/IQrzZwkXQlI_0/00015.jpg filter=lfs diff=lfs merge=lfs -text
|
| 352 |
+
result/IQrzZwkXQlI_0/00016.jpg filter=lfs diff=lfs merge=lfs -text
|
| 353 |
+
result/IQrzZwkXQlI_0/00017.jpg filter=lfs diff=lfs merge=lfs -text
|
| 354 |
+
result/IQrzZwkXQlI_0/00018.jpg filter=lfs diff=lfs merge=lfs -text
|
| 355 |
+
result/IQrzZwkXQlI_0/00019.jpg filter=lfs diff=lfs merge=lfs -text
|
| 356 |
+
result/OJHDGvFgFFw_0/00000.jpg filter=lfs diff=lfs merge=lfs -text
|
| 357 |
+
result/OJHDGvFgFFw_0/00001.jpg filter=lfs diff=lfs merge=lfs -text
|
| 358 |
+
result/OJHDGvFgFFw_0/00002.jpg filter=lfs diff=lfs merge=lfs -text
|
| 359 |
+
result/OJHDGvFgFFw_0/00003.jpg filter=lfs diff=lfs merge=lfs -text
|
| 360 |
+
result/OJHDGvFgFFw_0/00004.jpg filter=lfs diff=lfs merge=lfs -text
|
| 361 |
+
result/OJHDGvFgFFw_0/00005.jpg filter=lfs diff=lfs merge=lfs -text
|
| 362 |
+
result/OJHDGvFgFFw_0/00006.jpg filter=lfs diff=lfs merge=lfs -text
|
| 363 |
+
result/OJHDGvFgFFw_0/00007.jpg filter=lfs diff=lfs merge=lfs -text
|
| 364 |
+
result/OJHDGvFgFFw_0/00008.jpg filter=lfs diff=lfs merge=lfs -text
|
| 365 |
+
result/OJHDGvFgFFw_0/00009.jpg filter=lfs diff=lfs merge=lfs -text
|
| 366 |
+
result/OJHDGvFgFFw_0/00010.jpg filter=lfs diff=lfs merge=lfs -text
|
| 367 |
+
result/OJHDGvFgFFw_0/00011.jpg filter=lfs diff=lfs merge=lfs -text
|
| 368 |
+
result/OJHDGvFgFFw_0/00012.jpg filter=lfs diff=lfs merge=lfs -text
|
| 369 |
+
result/OJHDGvFgFFw_0/00013.jpg filter=lfs diff=lfs merge=lfs -text
|
| 370 |
+
result/OJHDGvFgFFw_0/00014.jpg filter=lfs diff=lfs merge=lfs -text
|
| 371 |
+
result/OJHDGvFgFFw_0/00015.jpg filter=lfs diff=lfs merge=lfs -text
|
| 372 |
+
result/OJHDGvFgFFw_0/00016.jpg filter=lfs diff=lfs merge=lfs -text
|
| 373 |
+
result/OJHDGvFgFFw_0/00017.jpg filter=lfs diff=lfs merge=lfs -text
|
| 374 |
+
result/OJHDGvFgFFw_0/00018.jpg filter=lfs diff=lfs merge=lfs -text
|
| 375 |
+
result/OJHDGvFgFFw_0/00019.jpg filter=lfs diff=lfs merge=lfs -text
|
| 376 |
+
result/PYY3bfUgooc_2/00000.jpg filter=lfs diff=lfs merge=lfs -text
|
| 377 |
+
result/PYY3bfUgooc_2/00001.jpg filter=lfs diff=lfs merge=lfs -text
|
| 378 |
+
result/PYY3bfUgooc_2/00002.jpg filter=lfs diff=lfs merge=lfs -text
|
| 379 |
+
result/PYY3bfUgooc_2/00003.jpg filter=lfs diff=lfs merge=lfs -text
|
| 380 |
+
result/PYY3bfUgooc_2/00004.jpg filter=lfs diff=lfs merge=lfs -text
|
| 381 |
+
result/PYY3bfUgooc_2/00005.jpg filter=lfs diff=lfs merge=lfs -text
|
| 382 |
+
result/PYY3bfUgooc_2/00006.jpg filter=lfs diff=lfs merge=lfs -text
|
| 383 |
+
result/PYY3bfUgooc_2/00007.jpg filter=lfs diff=lfs merge=lfs -text
|
| 384 |
+
result/PYY3bfUgooc_2/00008.jpg filter=lfs diff=lfs merge=lfs -text
|
| 385 |
+
result/PYY3bfUgooc_2/00009.jpg filter=lfs diff=lfs merge=lfs -text
|
| 386 |
+
result/PYY3bfUgooc_2/00010.jpg filter=lfs diff=lfs merge=lfs -text
|
| 387 |
+
result/PYY3bfUgooc_2/00011.jpg filter=lfs diff=lfs merge=lfs -text
|
| 388 |
+
result/PYY3bfUgooc_2/00012.jpg filter=lfs diff=lfs merge=lfs -text
|
| 389 |
+
result/PYY3bfUgooc_2/00013.jpg filter=lfs diff=lfs merge=lfs -text
|
| 390 |
+
result/PYY3bfUgooc_2/00014.jpg filter=lfs diff=lfs merge=lfs -text
|
| 391 |
+
result/PYY3bfUgooc_2/00015.jpg filter=lfs diff=lfs merge=lfs -text
|
| 392 |
+
result/PYY3bfUgooc_2/00016.jpg filter=lfs diff=lfs merge=lfs -text
|
| 393 |
+
result/PYY3bfUgooc_2/00017.jpg filter=lfs diff=lfs merge=lfs -text
|
| 394 |
+
result/PYY3bfUgooc_2/00018.jpg filter=lfs diff=lfs merge=lfs -text
|
| 395 |
+
result/PYY3bfUgooc_2/00019.jpg filter=lfs diff=lfs merge=lfs -text
|
| 396 |
+
result/VT_Bw6ANlY0_0/00000.jpg filter=lfs diff=lfs merge=lfs -text
|
| 397 |
+
result/VT_Bw6ANlY0_0/00001.jpg filter=lfs diff=lfs merge=lfs -text
|
| 398 |
+
result/VT_Bw6ANlY0_0/00002.jpg filter=lfs diff=lfs merge=lfs -text
|
| 399 |
+
result/VT_Bw6ANlY0_0/00003.jpg filter=lfs diff=lfs merge=lfs -text
|
| 400 |
+
result/VT_Bw6ANlY0_0/00004.jpg filter=lfs diff=lfs merge=lfs -text
|
| 401 |
+
result/VT_Bw6ANlY0_0/00005.jpg filter=lfs diff=lfs merge=lfs -text
|
| 402 |
+
result/VT_Bw6ANlY0_0/00006.jpg filter=lfs diff=lfs merge=lfs -text
|
| 403 |
+
result/VT_Bw6ANlY0_0/00007.jpg filter=lfs diff=lfs merge=lfs -text
|
| 404 |
+
result/VT_Bw6ANlY0_0/00008.jpg filter=lfs diff=lfs merge=lfs -text
|
| 405 |
+
result/VT_Bw6ANlY0_0/00009.jpg filter=lfs diff=lfs merge=lfs -text
|
| 406 |
+
result/VT_Bw6ANlY0_0/00010.jpg filter=lfs diff=lfs merge=lfs -text
|
| 407 |
+
result/VT_Bw6ANlY0_0/00011.jpg filter=lfs diff=lfs merge=lfs -text
|
| 408 |
+
result/VT_Bw6ANlY0_0/00012.jpg filter=lfs diff=lfs merge=lfs -text
|
| 409 |
+
result/VT_Bw6ANlY0_0/00013.jpg filter=lfs diff=lfs merge=lfs -text
|
| 410 |
+
result/VT_Bw6ANlY0_0/00014.jpg filter=lfs diff=lfs merge=lfs -text
|
| 411 |
+
result/VT_Bw6ANlY0_0/00015.jpg filter=lfs diff=lfs merge=lfs -text
|
| 412 |
+
result/VT_Bw6ANlY0_0/00016.jpg filter=lfs diff=lfs merge=lfs -text
|
| 413 |
+
result/VT_Bw6ANlY0_0/00017.jpg filter=lfs diff=lfs merge=lfs -text
|
| 414 |
+
result/VT_Bw6ANlY0_0/00018.jpg filter=lfs diff=lfs merge=lfs -text
|
| 415 |
+
result/VT_Bw6ANlY0_0/00019.jpg filter=lfs diff=lfs merge=lfs -text
|
| 416 |
+
result/_O85LwqCB7k_0/00000.jpg filter=lfs diff=lfs merge=lfs -text
|
| 417 |
+
result/_O85LwqCB7k_0/00001.jpg filter=lfs diff=lfs merge=lfs -text
|
| 418 |
+
result/_O85LwqCB7k_0/00002.jpg filter=lfs diff=lfs merge=lfs -text
|
| 419 |
+
result/_O85LwqCB7k_0/00003.jpg filter=lfs diff=lfs merge=lfs -text
|
| 420 |
+
result/_O85LwqCB7k_0/00004.jpg filter=lfs diff=lfs merge=lfs -text
|
| 421 |
+
result/_O85LwqCB7k_0/00005.jpg filter=lfs diff=lfs merge=lfs -text
|
| 422 |
+
result/_O85LwqCB7k_0/00006.jpg filter=lfs diff=lfs merge=lfs -text
|
| 423 |
+
result/_O85LwqCB7k_0/00007.jpg filter=lfs diff=lfs merge=lfs -text
|
| 424 |
+
result/_O85LwqCB7k_0/00008.jpg filter=lfs diff=lfs merge=lfs -text
|
| 425 |
+
result/_O85LwqCB7k_0/00009.jpg filter=lfs diff=lfs merge=lfs -text
|
| 426 |
+
result/_O85LwqCB7k_0/00010.jpg filter=lfs diff=lfs merge=lfs -text
|
| 427 |
+
result/_O85LwqCB7k_0/00011.jpg filter=lfs diff=lfs merge=lfs -text
|
| 428 |
+
result/_O85LwqCB7k_0/00012.jpg filter=lfs diff=lfs merge=lfs -text
|
| 429 |
+
result/_O85LwqCB7k_0/00013.jpg filter=lfs diff=lfs merge=lfs -text
|
| 430 |
+
result/_O85LwqCB7k_0/00014.jpg filter=lfs diff=lfs merge=lfs -text
|
| 431 |
+
result/_O85LwqCB7k_0/00015.jpg filter=lfs diff=lfs merge=lfs -text
|
| 432 |
+
result/_O85LwqCB7k_0/00016.jpg filter=lfs diff=lfs merge=lfs -text
|
| 433 |
+
result/_O85LwqCB7k_0/00017.jpg filter=lfs diff=lfs merge=lfs -text
|
| 434 |
+
result/_O85LwqCB7k_0/00018.jpg filter=lfs diff=lfs merge=lfs -text
|
| 435 |
+
result/_O85LwqCB7k_0/00019.jpg filter=lfs diff=lfs merge=lfs -text
|
| 436 |
+
result/jFkgSp701zg_0/00000.jpg filter=lfs diff=lfs merge=lfs -text
|
| 437 |
+
result/jFkgSp701zg_0/00001.jpg filter=lfs diff=lfs merge=lfs -text
|
| 438 |
+
result/jFkgSp701zg_0/00002.jpg filter=lfs diff=lfs merge=lfs -text
|
| 439 |
+
result/jFkgSp701zg_0/00003.jpg filter=lfs diff=lfs merge=lfs -text
|
| 440 |
+
result/jFkgSp701zg_0/00004.jpg filter=lfs diff=lfs merge=lfs -text
|
| 441 |
+
result/jFkgSp701zg_0/00005.jpg filter=lfs diff=lfs merge=lfs -text
|
| 442 |
+
result/jFkgSp701zg_0/00006.jpg filter=lfs diff=lfs merge=lfs -text
|
| 443 |
+
result/jFkgSp701zg_0/00007.jpg filter=lfs diff=lfs merge=lfs -text
|
| 444 |
+
result/jFkgSp701zg_0/00008.jpg filter=lfs diff=lfs merge=lfs -text
|
| 445 |
+
result/jFkgSp701zg_0/00009.jpg filter=lfs diff=lfs merge=lfs -text
|
| 446 |
+
result/jFkgSp701zg_0/00010.jpg filter=lfs diff=lfs merge=lfs -text
|
| 447 |
+
result/jFkgSp701zg_0/00011.jpg filter=lfs diff=lfs merge=lfs -text
|
| 448 |
+
result/jFkgSp701zg_0/00012.jpg filter=lfs diff=lfs merge=lfs -text
|
| 449 |
+
result/jFkgSp701zg_0/00013.jpg filter=lfs diff=lfs merge=lfs -text
|
| 450 |
+
result/jFkgSp701zg_0/00014.jpg filter=lfs diff=lfs merge=lfs -text
|
| 451 |
+
result/jFkgSp701zg_0/00015.jpg filter=lfs diff=lfs merge=lfs -text
|
| 452 |
+
result/jFkgSp701zg_0/00016.jpg filter=lfs diff=lfs merge=lfs -text
|
| 453 |
+
result/jFkgSp701zg_0/00017.jpg filter=lfs diff=lfs merge=lfs -text
|
| 454 |
+
result/jFkgSp701zg_0/00018.jpg filter=lfs diff=lfs merge=lfs -text
|
| 455 |
+
result/jFkgSp701zg_0/00019.jpg filter=lfs diff=lfs merge=lfs -text
|
| 456 |
+
result/k8NKq047jDk_0/00000.jpg filter=lfs diff=lfs merge=lfs -text
|
| 457 |
+
result/k8NKq047jDk_0/00001.jpg filter=lfs diff=lfs merge=lfs -text
|
| 458 |
+
result/k8NKq047jDk_0/00002.jpg filter=lfs diff=lfs merge=lfs -text
|
| 459 |
+
result/k8NKq047jDk_0/00003.jpg filter=lfs diff=lfs merge=lfs -text
|
| 460 |
+
result/k8NKq047jDk_0/00004.jpg filter=lfs diff=lfs merge=lfs -text
|
| 461 |
+
result/k8NKq047jDk_0/00005.jpg filter=lfs diff=lfs merge=lfs -text
|
| 462 |
+
result/k8NKq047jDk_0/00006.jpg filter=lfs diff=lfs merge=lfs -text
|
| 463 |
+
result/k8NKq047jDk_0/00007.jpg filter=lfs diff=lfs merge=lfs -text
|
| 464 |
+
result/k8NKq047jDk_0/00008.jpg filter=lfs diff=lfs merge=lfs -text
|
| 465 |
+
result/k8NKq047jDk_0/00009.jpg filter=lfs diff=lfs merge=lfs -text
|
| 466 |
+
result/k8NKq047jDk_0/00010.jpg filter=lfs diff=lfs merge=lfs -text
|
| 467 |
+
result/k8NKq047jDk_0/00011.jpg filter=lfs diff=lfs merge=lfs -text
|
| 468 |
+
result/k8NKq047jDk_0/00012.jpg filter=lfs diff=lfs merge=lfs -text
|
| 469 |
+
result/k8NKq047jDk_0/00013.jpg filter=lfs diff=lfs merge=lfs -text
|
| 470 |
+
result/k8NKq047jDk_0/00014.jpg filter=lfs diff=lfs merge=lfs -text
|
| 471 |
+
result/k8NKq047jDk_0/00015.jpg filter=lfs diff=lfs merge=lfs -text
|
| 472 |
+
result/k8NKq047jDk_0/00016.jpg filter=lfs diff=lfs merge=lfs -text
|
| 473 |
+
result/k8NKq047jDk_0/00017.jpg filter=lfs diff=lfs merge=lfs -text
|
| 474 |
+
result/k8NKq047jDk_0/00018.jpg filter=lfs diff=lfs merge=lfs -text
|
| 475 |
+
result/k8NKq047jDk_0/00019.jpg filter=lfs diff=lfs merge=lfs -text
|
| 476 |
+
result/lnefnJLRsv8_0/00000.jpg filter=lfs diff=lfs merge=lfs -text
|
| 477 |
+
result/lnefnJLRsv8_0/00001.jpg filter=lfs diff=lfs merge=lfs -text
|
| 478 |
+
result/lnefnJLRsv8_0/00002.jpg filter=lfs diff=lfs merge=lfs -text
|
| 479 |
+
result/lnefnJLRsv8_0/00003.jpg filter=lfs diff=lfs merge=lfs -text
|
| 480 |
+
result/lnefnJLRsv8_0/00004.jpg filter=lfs diff=lfs merge=lfs -text
|
| 481 |
+
result/lnefnJLRsv8_0/00005.jpg filter=lfs diff=lfs merge=lfs -text
|
| 482 |
+
result/lnefnJLRsv8_0/00006.jpg filter=lfs diff=lfs merge=lfs -text
|
| 483 |
+
result/lnefnJLRsv8_0/00007.jpg filter=lfs diff=lfs merge=lfs -text
|
| 484 |
+
result/lnefnJLRsv8_0/00008.jpg filter=lfs diff=lfs merge=lfs -text
|
| 485 |
+
result/lnefnJLRsv8_0/00009.jpg filter=lfs diff=lfs merge=lfs -text
|
| 486 |
+
result/lnefnJLRsv8_0/00010.jpg filter=lfs diff=lfs merge=lfs -text
|
| 487 |
+
result/lnefnJLRsv8_0/00011.jpg filter=lfs diff=lfs merge=lfs -text
|
| 488 |
+
result/lnefnJLRsv8_0/00012.jpg filter=lfs diff=lfs merge=lfs -text
|
| 489 |
+
result/lnefnJLRsv8_0/00013.jpg filter=lfs diff=lfs merge=lfs -text
|
| 490 |
+
result/lnefnJLRsv8_0/00014.jpg filter=lfs diff=lfs merge=lfs -text
|
| 491 |
+
result/lnefnJLRsv8_0/00015.jpg filter=lfs diff=lfs merge=lfs -text
|
| 492 |
+
result/lnefnJLRsv8_0/00016.jpg filter=lfs diff=lfs merge=lfs -text
|
| 493 |
+
result/lnefnJLRsv8_0/00017.jpg filter=lfs diff=lfs merge=lfs -text
|
| 494 |
+
result/lnefnJLRsv8_0/00018.jpg filter=lfs diff=lfs merge=lfs -text
|
| 495 |
+
result/lnefnJLRsv8_0/00019.jpg filter=lfs diff=lfs merge=lfs -text
|
| 496 |
+
result/rIKZtfg3d4k_1/00000.jpg filter=lfs diff=lfs merge=lfs -text
|
| 497 |
+
result/rIKZtfg3d4k_1/00001.jpg filter=lfs diff=lfs merge=lfs -text
|
| 498 |
+
result/rIKZtfg3d4k_1/00002.jpg filter=lfs diff=lfs merge=lfs -text
|
| 499 |
+
result/rIKZtfg3d4k_1/00003.jpg filter=lfs diff=lfs merge=lfs -text
|
| 500 |
+
result/rIKZtfg3d4k_1/00004.jpg filter=lfs diff=lfs merge=lfs -text
|
| 501 |
+
result/rIKZtfg3d4k_1/00005.jpg filter=lfs diff=lfs merge=lfs -text
|
| 502 |
+
result/rIKZtfg3d4k_1/00006.jpg filter=lfs diff=lfs merge=lfs -text
|
| 503 |
+
result/rIKZtfg3d4k_1/00007.jpg filter=lfs diff=lfs merge=lfs -text
|
| 504 |
+
result/rIKZtfg3d4k_1/00008.jpg filter=lfs diff=lfs merge=lfs -text
|
| 505 |
+
result/rIKZtfg3d4k_1/00009.jpg filter=lfs diff=lfs merge=lfs -text
|
| 506 |
+
result/rIKZtfg3d4k_1/00010.jpg filter=lfs diff=lfs merge=lfs -text
|
| 507 |
+
result/rIKZtfg3d4k_1/00011.jpg filter=lfs diff=lfs merge=lfs -text
|
| 508 |
+
result/rIKZtfg3d4k_1/00012.jpg filter=lfs diff=lfs merge=lfs -text
|
| 509 |
+
result/rIKZtfg3d4k_1/00013.jpg filter=lfs diff=lfs merge=lfs -text
|
| 510 |
+
result/rIKZtfg3d4k_1/00014.jpg filter=lfs diff=lfs merge=lfs -text
|
| 511 |
+
result/rIKZtfg3d4k_1/00015.jpg filter=lfs diff=lfs merge=lfs -text
|
| 512 |
+
result/rIKZtfg3d4k_1/00016.jpg filter=lfs diff=lfs merge=lfs -text
|
| 513 |
+
result/rIKZtfg3d4k_1/00017.jpg filter=lfs diff=lfs merge=lfs -text
|
| 514 |
+
result/rIKZtfg3d4k_1/00018.jpg filter=lfs diff=lfs merge=lfs -text
|
| 515 |
+
result/rIKZtfg3d4k_1/00019.jpg filter=lfs diff=lfs merge=lfs -text
|
| 516 |
+
result/wIXF1OmxzrA_0/00000.jpg filter=lfs diff=lfs merge=lfs -text
|
| 517 |
+
result/wIXF1OmxzrA_0/00001.jpg filter=lfs diff=lfs merge=lfs -text
|
| 518 |
+
result/wIXF1OmxzrA_0/00002.jpg filter=lfs diff=lfs merge=lfs -text
|
| 519 |
+
result/wIXF1OmxzrA_0/00003.jpg filter=lfs diff=lfs merge=lfs -text
|
| 520 |
+
result/wIXF1OmxzrA_0/00004.jpg filter=lfs diff=lfs merge=lfs -text
|
| 521 |
+
result/wIXF1OmxzrA_0/00005.jpg filter=lfs diff=lfs merge=lfs -text
|
| 522 |
+
result/wIXF1OmxzrA_0/00006.jpg filter=lfs diff=lfs merge=lfs -text
|
| 523 |
+
result/wIXF1OmxzrA_0/00007.jpg filter=lfs diff=lfs merge=lfs -text
|
| 524 |
+
result/wIXF1OmxzrA_0/00008.jpg filter=lfs diff=lfs merge=lfs -text
|
| 525 |
+
result/wIXF1OmxzrA_0/00009.jpg filter=lfs diff=lfs merge=lfs -text
|
| 526 |
+
result/wIXF1OmxzrA_0/00010.jpg filter=lfs diff=lfs merge=lfs -text
|
| 527 |
+
result/wIXF1OmxzrA_0/00011.jpg filter=lfs diff=lfs merge=lfs -text
|
| 528 |
+
result/wIXF1OmxzrA_0/00012.jpg filter=lfs diff=lfs merge=lfs -text
|
| 529 |
+
result/wIXF1OmxzrA_0/00013.jpg filter=lfs diff=lfs merge=lfs -text
|
| 530 |
+
result/wIXF1OmxzrA_0/00014.jpg filter=lfs diff=lfs merge=lfs -text
|
| 531 |
+
result/wIXF1OmxzrA_0/00015.jpg filter=lfs diff=lfs merge=lfs -text
|
| 532 |
+
result/wIXF1OmxzrA_0/00016.jpg filter=lfs diff=lfs merge=lfs -text
|
| 533 |
+
result/wIXF1OmxzrA_0/00017.jpg filter=lfs diff=lfs merge=lfs -text
|
| 534 |
+
result/wIXF1OmxzrA_0/00018.jpg filter=lfs diff=lfs merge=lfs -text
|
| 535 |
+
result/wIXF1OmxzrA_0/00019.jpg filter=lfs diff=lfs merge=lfs -text
|
| 536 |
+
result/y0soO7I-tjk_0/00000.jpg filter=lfs diff=lfs merge=lfs -text
|
| 537 |
+
result/y0soO7I-tjk_0/00001.jpg filter=lfs diff=lfs merge=lfs -text
|
| 538 |
+
result/y0soO7I-tjk_0/00002.jpg filter=lfs diff=lfs merge=lfs -text
|
| 539 |
+
result/y0soO7I-tjk_0/00003.jpg filter=lfs diff=lfs merge=lfs -text
|
| 540 |
+
result/y0soO7I-tjk_0/00004.jpg filter=lfs diff=lfs merge=lfs -text
|
| 541 |
+
result/y0soO7I-tjk_0/00005.jpg filter=lfs diff=lfs merge=lfs -text
|
| 542 |
+
result/y0soO7I-tjk_0/00006.jpg filter=lfs diff=lfs merge=lfs -text
|
| 543 |
+
result/y0soO7I-tjk_0/00007.jpg filter=lfs diff=lfs merge=lfs -text
|
| 544 |
+
result/y0soO7I-tjk_0/00008.jpg filter=lfs diff=lfs merge=lfs -text
|
| 545 |
+
result/y0soO7I-tjk_0/00009.jpg filter=lfs diff=lfs merge=lfs -text
|
| 546 |
+
result/y0soO7I-tjk_0/00010.jpg filter=lfs diff=lfs merge=lfs -text
|
| 547 |
+
result/y0soO7I-tjk_0/00011.jpg filter=lfs diff=lfs merge=lfs -text
|
| 548 |
+
result/y0soO7I-tjk_0/00012.jpg filter=lfs diff=lfs merge=lfs -text
|
| 549 |
+
result/y0soO7I-tjk_0/00013.jpg filter=lfs diff=lfs merge=lfs -text
|
| 550 |
+
result/y0soO7I-tjk_0/00014.jpg filter=lfs diff=lfs merge=lfs -text
|
| 551 |
+
result/y0soO7I-tjk_0/00015.jpg filter=lfs diff=lfs merge=lfs -text
|
| 552 |
+
result/y0soO7I-tjk_0/00016.jpg filter=lfs diff=lfs merge=lfs -text
|
| 553 |
+
result/y0soO7I-tjk_0/00017.jpg filter=lfs diff=lfs merge=lfs -text
|
| 554 |
+
result/y0soO7I-tjk_0/00018.jpg filter=lfs diff=lfs merge=lfs -text
|
| 555 |
+
result/y0soO7I-tjk_0/00019.jpg filter=lfs diff=lfs merge=lfs -text
|
Wan2.1-T2V-1.3B/.gitattributes
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
*.7z filter=lfs diff=lfs merge=lfs -text
|
| 2 |
+
*.arrow filter=lfs diff=lfs merge=lfs -text
|
| 3 |
+
*.bin filter=lfs diff=lfs merge=lfs -text
|
| 4 |
+
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
| 5 |
+
*.ckpt filter=lfs diff=lfs merge=lfs -text
|
| 6 |
+
*.ftz filter=lfs diff=lfs merge=lfs -text
|
| 7 |
+
*.gz filter=lfs diff=lfs merge=lfs -text
|
| 8 |
+
*.h5 filter=lfs diff=lfs merge=lfs -text
|
| 9 |
+
*.joblib filter=lfs diff=lfs merge=lfs -text
|
| 10 |
+
*.lfs.* filter=lfs diff=lfs merge=lfs -text
|
| 11 |
+
*.mlmodel filter=lfs diff=lfs merge=lfs -text
|
| 12 |
+
*.model filter=lfs diff=lfs merge=lfs -text
|
| 13 |
+
*.msgpack filter=lfs diff=lfs merge=lfs -text
|
| 14 |
+
*.npy filter=lfs diff=lfs merge=lfs -text
|
| 15 |
+
*.npz filter=lfs diff=lfs merge=lfs -text
|
| 16 |
+
*.onnx filter=lfs diff=lfs merge=lfs -text
|
| 17 |
+
*.ot filter=lfs diff=lfs merge=lfs -text
|
| 18 |
+
*.parquet filter=lfs diff=lfs merge=lfs -text
|
| 19 |
+
*.pb filter=lfs diff=lfs merge=lfs -text
|
| 20 |
+
*.pickle filter=lfs diff=lfs merge=lfs -text
|
| 21 |
+
*.pkl filter=lfs diff=lfs merge=lfs -text
|
| 22 |
+
*.pt filter=lfs diff=lfs merge=lfs -text
|
| 23 |
+
*.pth filter=lfs diff=lfs merge=lfs -text
|
| 24 |
+
*.rar filter=lfs diff=lfs merge=lfs -text
|
| 25 |
+
*.safetensors filter=lfs diff=lfs merge=lfs -text
|
| 26 |
+
saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
| 27 |
+
*.tar.* filter=lfs diff=lfs merge=lfs -text
|
| 28 |
+
*.tar filter=lfs diff=lfs merge=lfs -text
|
| 29 |
+
*.tflite filter=lfs diff=lfs merge=lfs -text
|
| 30 |
+
*.tgz filter=lfs diff=lfs merge=lfs -text
|
| 31 |
+
*.wasm filter=lfs diff=lfs merge=lfs -text
|
| 32 |
+
*.xz filter=lfs diff=lfs merge=lfs -text
|
| 33 |
+
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
+
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
+
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
| 36 |
+
google/umt5-xxl/tokenizer.json filter=lfs diff=lfs merge=lfs -text
|
| 37 |
+
assets/comp_effic.png filter=lfs diff=lfs merge=lfs -text
|
| 38 |
+
assets/data_for_diff_stage.jpg filter=lfs diff=lfs merge=lfs -text
|
| 39 |
+
assets/i2v_res.png filter=lfs diff=lfs merge=lfs -text
|
| 40 |
+
assets/logo.png filter=lfs diff=lfs merge=lfs -text
|
| 41 |
+
assets/t2v_res.jpg filter=lfs diff=lfs merge=lfs -text
|
| 42 |
+
assets/vben_vs_sota.png filter=lfs diff=lfs merge=lfs -text
|
| 43 |
+
assets/vben_vs_sota_t2i.jpg filter=lfs diff=lfs merge=lfs -text
|
| 44 |
+
assets/video_dit_arch.jpg filter=lfs diff=lfs merge=lfs -text
|
| 45 |
+
assets/video_vae_res.jpg filter=lfs diff=lfs merge=lfs -text
|
| 46 |
+
examples/i2v_input.JPG filter=lfs diff=lfs merge=lfs -text
|
| 47 |
+
assets/.DS_Store filter=lfs diff=lfs merge=lfs -text
|
Wan2.1-T2V-1.3B/LICENSE.txt
ADDED
|
@@ -0,0 +1,201 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
Apache License
|
| 2 |
+
Version 2.0, January 2004
|
| 3 |
+
http://www.apache.org/licenses/
|
| 4 |
+
|
| 5 |
+
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
| 6 |
+
|
| 7 |
+
1. Definitions.
|
| 8 |
+
|
| 9 |
+
"License" shall mean the terms and conditions for use, reproduction,
|
| 10 |
+
and distribution as defined by Sections 1 through 9 of this document.
|
| 11 |
+
|
| 12 |
+
"Licensor" shall mean the copyright owner or entity authorized by
|
| 13 |
+
the copyright owner that is granting the License.
|
| 14 |
+
|
| 15 |
+
"Legal Entity" shall mean the union of the acting entity and all
|
| 16 |
+
other entities that control, are controlled by, or are under common
|
| 17 |
+
control with that entity. For the purposes of this definition,
|
| 18 |
+
"control" means (i) the power, direct or indirect, to cause the
|
| 19 |
+
direction or management of such entity, whether by contract or
|
| 20 |
+
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
| 21 |
+
outstanding shares, or (iii) beneficial ownership of such entity.
|
| 22 |
+
|
| 23 |
+
"You" (or "Your") shall mean an individual or Legal Entity
|
| 24 |
+
exercising permissions granted by this License.
|
| 25 |
+
|
| 26 |
+
"Source" form shall mean the preferred form for making modifications,
|
| 27 |
+
including but not limited to software source code, documentation
|
| 28 |
+
source, and configuration files.
|
| 29 |
+
|
| 30 |
+
"Object" form shall mean any form resulting from mechanical
|
| 31 |
+
transformation or translation of a Source form, including but
|
| 32 |
+
not limited to compiled object code, generated documentation,
|
| 33 |
+
and conversions to other media types.
|
| 34 |
+
|
| 35 |
+
"Work" shall mean the work of authorship, whether in Source or
|
| 36 |
+
Object form, made available under the License, as indicated by a
|
| 37 |
+
copyright notice that is included in or attached to the work
|
| 38 |
+
(an example is provided in the Appendix below).
|
| 39 |
+
|
| 40 |
+
"Derivative Works" shall mean any work, whether in Source or Object
|
| 41 |
+
form, that is based on (or derived from) the Work and for which the
|
| 42 |
+
editorial revisions, annotations, elaborations, or other modifications
|
| 43 |
+
represent, as a whole, an original work of authorship. For the purposes
|
| 44 |
+
of this License, Derivative Works shall not include works that remain
|
| 45 |
+
separable from, or merely link (or bind by name) to the interfaces of,
|
| 46 |
+
the Work and Derivative Works thereof.
|
| 47 |
+
|
| 48 |
+
"Contribution" shall mean any work of authorship, including
|
| 49 |
+
the original version of the Work and any modifications or additions
|
| 50 |
+
to that Work or Derivative Works thereof, that is intentionally
|
| 51 |
+
submitted to Licensor for inclusion in the Work by the copyright owner
|
| 52 |
+
or by an individual or Legal Entity authorized to submit on behalf of
|
| 53 |
+
the copyright owner. For the purposes of this definition, "submitted"
|
| 54 |
+
means any form of electronic, verbal, or written communication sent
|
| 55 |
+
to the Licensor or its representatives, including but not limited to
|
| 56 |
+
communication on electronic mailing lists, source code control systems,
|
| 57 |
+
and issue tracking systems that are managed by, or on behalf of, the
|
| 58 |
+
Licensor for the purpose of discussing and improving the Work, but
|
| 59 |
+
excluding communication that is conspicuously marked or otherwise
|
| 60 |
+
designated in writing by the copyright owner as "Not a Contribution."
|
| 61 |
+
|
| 62 |
+
"Contributor" shall mean Licensor and any individual or Legal Entity
|
| 63 |
+
on behalf of whom a Contribution has been received by Licensor and
|
| 64 |
+
subsequently incorporated within the Work.
|
| 65 |
+
|
| 66 |
+
2. Grant of Copyright License. Subject to the terms and conditions of
|
| 67 |
+
this License, each Contributor hereby grants to You a perpetual,
|
| 68 |
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
| 69 |
+
copyright license to reproduce, prepare Derivative Works of,
|
| 70 |
+
publicly display, publicly perform, sublicense, and distribute the
|
| 71 |
+
Work and such Derivative Works in Source or Object form.
|
| 72 |
+
|
| 73 |
+
3. Grant of Patent License. Subject to the terms and conditions of
|
| 74 |
+
this License, each Contributor hereby grants to You a perpetual,
|
| 75 |
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
| 76 |
+
(except as stated in this section) patent license to make, have made,
|
| 77 |
+
use, offer to sell, sell, import, and otherwise transfer the Work,
|
| 78 |
+
where such license applies only to those patent claims licensable
|
| 79 |
+
by such Contributor that are necessarily infringed by their
|
| 80 |
+
Contribution(s) alone or by combination of their Contribution(s)
|
| 81 |
+
with the Work to which such Contribution(s) was submitted. If You
|
| 82 |
+
institute patent litigation against any entity (including a
|
| 83 |
+
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
| 84 |
+
or a Contribution incorporated within the Work constitutes direct
|
| 85 |
+
or contributory patent infringement, then any patent licenses
|
| 86 |
+
granted to You under this License for that Work shall terminate
|
| 87 |
+
as of the date such litigation is filed.
|
| 88 |
+
|
| 89 |
+
4. Redistribution. You may reproduce and distribute copies of the
|
| 90 |
+
Work or Derivative Works thereof in any medium, with or without
|
| 91 |
+
modifications, and in Source or Object form, provided that You
|
| 92 |
+
meet the following conditions:
|
| 93 |
+
|
| 94 |
+
(a) You must give any other recipients of the Work or
|
| 95 |
+
Derivative Works a copy of this License; and
|
| 96 |
+
|
| 97 |
+
(b) You must cause any modified files to carry prominent notices
|
| 98 |
+
stating that You changed the files; and
|
| 99 |
+
|
| 100 |
+
(c) You must retain, in the Source form of any Derivative Works
|
| 101 |
+
that You distribute, all copyright, patent, trademark, and
|
| 102 |
+
attribution notices from the Source form of the Work,
|
| 103 |
+
excluding those notices that do not pertain to any part of
|
| 104 |
+
the Derivative Works; and
|
| 105 |
+
|
| 106 |
+
(d) If the Work includes a "NOTICE" text file as part of its
|
| 107 |
+
distribution, then any Derivative Works that You distribute must
|
| 108 |
+
include a readable copy of the attribution notices contained
|
| 109 |
+
within such NOTICE file, excluding those notices that do not
|
| 110 |
+
pertain to any part of the Derivative Works, in at least one
|
| 111 |
+
of the following places: within a NOTICE text file distributed
|
| 112 |
+
as part of the Derivative Works; within the Source form or
|
| 113 |
+
documentation, if provided along with the Derivative Works; or,
|
| 114 |
+
within a display generated by the Derivative Works, if and
|
| 115 |
+
wherever such third-party notices normally appear. The contents
|
| 116 |
+
of the NOTICE file are for informational purposes only and
|
| 117 |
+
do not modify the License. You may add Your own attribution
|
| 118 |
+
notices within Derivative Works that You distribute, alongside
|
| 119 |
+
or as an addendum to the NOTICE text from the Work, provided
|
| 120 |
+
that such additional attribution notices cannot be construed
|
| 121 |
+
as modifying the License.
|
| 122 |
+
|
| 123 |
+
You may add Your own copyright statement to Your modifications and
|
| 124 |
+
may provide additional or different license terms and conditions
|
| 125 |
+
for use, reproduction, or distribution of Your modifications, or
|
| 126 |
+
for any such Derivative Works as a whole, provided Your use,
|
| 127 |
+
reproduction, and distribution of the Work otherwise complies with
|
| 128 |
+
the conditions stated in this License.
|
| 129 |
+
|
| 130 |
+
5. Submission of Contributions. Unless You explicitly state otherwise,
|
| 131 |
+
any Contribution intentionally submitted for inclusion in the Work
|
| 132 |
+
by You to the Licensor shall be under the terms and conditions of
|
| 133 |
+
this License, without any additional terms or conditions.
|
| 134 |
+
Notwithstanding the above, nothing herein shall supersede or modify
|
| 135 |
+
the terms of any separate license agreement you may have executed
|
| 136 |
+
with Licensor regarding such Contributions.
|
| 137 |
+
|
| 138 |
+
6. Trademarks. This License does not grant permission to use the trade
|
| 139 |
+
names, trademarks, service marks, or product names of the Licensor,
|
| 140 |
+
except as required for reasonable and customary use in describing the
|
| 141 |
+
origin of the Work and reproducing the content of the NOTICE file.
|
| 142 |
+
|
| 143 |
+
7. Disclaimer of Warranty. Unless required by applicable law or
|
| 144 |
+
agreed to in writing, Licensor provides the Work (and each
|
| 145 |
+
Contributor provides its Contributions) on an "AS IS" BASIS,
|
| 146 |
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
| 147 |
+
implied, including, without limitation, any warranties or conditions
|
| 148 |
+
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
| 149 |
+
PARTICULAR PURPOSE. You are solely responsible for determining the
|
| 150 |
+
appropriateness of using or redistributing the Work and assume any
|
| 151 |
+
risks associated with Your exercise of permissions under this License.
|
| 152 |
+
|
| 153 |
+
8. Limitation of Liability. In no event and under no legal theory,
|
| 154 |
+
whether in tort (including negligence), contract, or otherwise,
|
| 155 |
+
unless required by applicable law (such as deliberate and grossly
|
| 156 |
+
negligent acts) or agreed to in writing, shall any Contributor be
|
| 157 |
+
liable to You for damages, including any direct, indirect, special,
|
| 158 |
+
incidental, or consequential damages of any character arising as a
|
| 159 |
+
result of this License or out of the use or inability to use the
|
| 160 |
+
Work (including but not limited to damages for loss of goodwill,
|
| 161 |
+
work stoppage, computer failure or malfunction, or any and all
|
| 162 |
+
other commercial damages or losses), even if such Contributor
|
| 163 |
+
has been advised of the possibility of such damages.
|
| 164 |
+
|
| 165 |
+
9. Accepting Warranty or Additional Liability. While redistributing
|
| 166 |
+
the Work or Derivative Works thereof, You may choose to offer,
|
| 167 |
+
and charge a fee for, acceptance of support, warranty, indemnity,
|
| 168 |
+
or other liability obligations and/or rights consistent with this
|
| 169 |
+
License. However, in accepting such obligations, You may act only
|
| 170 |
+
on Your own behalf and on Your sole responsibility, not on behalf
|
| 171 |
+
of any other Contributor, and only if You agree to indemnify,
|
| 172 |
+
defend, and hold each Contributor harmless for any liability
|
| 173 |
+
incurred by, or claims asserted against, such Contributor by reason
|
| 174 |
+
of your accepting any such warranty or additional liability.
|
| 175 |
+
|
| 176 |
+
END OF TERMS AND CONDITIONS
|
| 177 |
+
|
| 178 |
+
APPENDIX: How to apply the Apache License to your work.
|
| 179 |
+
|
| 180 |
+
To apply the Apache License to your work, attach the following
|
| 181 |
+
boilerplate notice, with the fields enclosed by brackets "[]"
|
| 182 |
+
replaced with your own identifying information. (Don't include
|
| 183 |
+
the brackets!) The text should be enclosed in the appropriate
|
| 184 |
+
comment syntax for the file format. We also recommend that a
|
| 185 |
+
file or class name and description of purpose be included on the
|
| 186 |
+
same "printed page" as the copyright notice for easier
|
| 187 |
+
identification within third-party archives.
|
| 188 |
+
|
| 189 |
+
Copyright [yyyy] [name of copyright owner]
|
| 190 |
+
|
| 191 |
+
Licensed under the Apache License, Version 2.0 (the "License");
|
| 192 |
+
you may not use this file except in compliance with the License.
|
| 193 |
+
You may obtain a copy of the License at
|
| 194 |
+
|
| 195 |
+
http://www.apache.org/licenses/LICENSE-2.0
|
| 196 |
+
|
| 197 |
+
Unless required by applicable law or agreed to in writing, software
|
| 198 |
+
distributed under the License is distributed on an "AS IS" BASIS,
|
| 199 |
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
| 200 |
+
See the License for the specific language governing permissions and
|
| 201 |
+
limitations under the License.
|
Wan2.1-T2V-1.3B/README.md
ADDED
|
@@ -0,0 +1,298 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
license: apache-2.0
|
| 3 |
+
language:
|
| 4 |
+
- en
|
| 5 |
+
- zh
|
| 6 |
+
pipeline_tag: text-to-video
|
| 7 |
+
library_name: diffusers
|
| 8 |
+
tags:
|
| 9 |
+
- video
|
| 10 |
+
- video-generation
|
| 11 |
+
---
|
| 12 |
+
# Wan2.1
|
| 13 |
+
|
| 14 |
+
<p align="center">
|
| 15 |
+
<img src="assets/logo.png" width="400"/>
|
| 16 |
+
<p>
|
| 17 |
+
|
| 18 |
+
<p align="center">
|
| 19 |
+
💜 <a href=""><b>Wan</b></a>    |    🖥️ <a href="https://github.com/Wan-Video/Wan2.1">GitHub</a>    |   🤗 <a href="https://huggingface.co/Wan-AI/">Hugging Face</a>   |   🤖 <a href="https://modelscope.cn/organization/Wan-AI">ModelScope</a>   |    📑 <a href="">Paper (Coming soon)</a>    |    📑 <a href="https://wanxai.com">Blog</a>    |   💬 <a href="https://gw.alicdn.com/imgextra/i2/O1CN01tqjWFi1ByuyehkTSB_!!6000000000015-0-tps-611-1279.jpg">WeChat Group</a>   |    📖 <a href="https://discord.gg/p5XbdQV7">Discord</a>  
|
| 20 |
+
<br>
|
| 21 |
+
|
| 22 |
+
-----
|
| 23 |
+
|
| 24 |
+
[**Wan: Open and Advanced Large-Scale Video Generative Models**]("#") <be>
|
| 25 |
+
|
| 26 |
+
In this repository, we present **Wan2.1**, a comprehensive and open suite of video foundation models that pushes the boundaries of video generation. **Wan2.1** offers these key features:
|
| 27 |
+
- 👍 **SOTA Performance**: **Wan2.1** consistently outperforms existing open-source models and state-of-the-art commercial solutions across multiple benchmarks.
|
| 28 |
+
- 👍 **Supports Consumer-grade GPUs**: The T2V-1.3B model requires only 8.19 GB VRAM, making it compatible with almost all consumer-grade GPUs. It can generate a 5-second 480P video on an RTX 4090 in about 4 minutes (without optimization techniques like quantization). Its performance is even comparable to some closed-source models.
|
| 29 |
+
- 👍 **Multiple Tasks**: **Wan2.1** excels in Text-to-Video, Image-to-Video, Video Editing, Text-to-Image, and Video-to-Audio, advancing the field of video generation.
|
| 30 |
+
- 👍 **Visual Text Generation**: **Wan2.1** is the first video model capable of generating both Chinese and English text, featuring robust text generation that enhances its practical applications.
|
| 31 |
+
- 👍 **Powerful Video VAE**: **Wan-VAE** delivers exceptional efficiency and performance, encoding and decoding 1080P videos of any length while preserving temporal information, making it an ideal foundation for video and image generation.
|
| 32 |
+
|
| 33 |
+
|
| 34 |
+
This repository hosts our T2V-1.3B model, a versatile solution for video generation that is compatible with nearly all consumer-grade GPUs. In this way, we hope that **Wan2.1** can serve as an easy-to-use tool for more creative teams in video creation, providing a high-quality foundational model for academic teams with limited computing resources. This will facilitate both the rapid development of the video creation community and the swift advancement of video technology.
|
| 35 |
+
|
| 36 |
+
|
| 37 |
+
## Video Demos
|
| 38 |
+
|
| 39 |
+
<div align="center">
|
| 40 |
+
<video width="80%" controls>
|
| 41 |
+
<source src="https://cloud.video.taobao.com/vod/Jth64Y7wNoPcJki_Bo1ZJTDBvNjsgjlVKsNs05Fqfps.mp4" type="video/mp4">
|
| 42 |
+
Your browser does not support the video tag.
|
| 43 |
+
</video>
|
| 44 |
+
</div>
|
| 45 |
+
|
| 46 |
+
|
| 47 |
+
## 🔥 Latest News!!
|
| 48 |
+
|
| 49 |
+
* Feb 25, 2025: 👋 We've released the inference code and weights of Wan2.1.
|
| 50 |
+
|
| 51 |
+
|
| 52 |
+
## 📑 Todo List
|
| 53 |
+
- Wan2.1 Text-to-Video
|
| 54 |
+
- [x] Multi-GPU Inference code of the 14B and 1.3B models
|
| 55 |
+
- [x] Checkpoints of the 14B and 1.3B models
|
| 56 |
+
- [x] Gradio demo
|
| 57 |
+
- [ ] Diffusers integration
|
| 58 |
+
- [ ] ComfyUI integration
|
| 59 |
+
- Wan2.1 Image-to-Video
|
| 60 |
+
- [x] Multi-GPU Inference code of the 14B model
|
| 61 |
+
- [x] Checkpoints of the 14B model
|
| 62 |
+
- [x] Gradio demo
|
| 63 |
+
- [ ] Diffusers integration
|
| 64 |
+
- [ ] ComfyUI integration
|
| 65 |
+
|
| 66 |
+
|
| 67 |
+
## Quickstart
|
| 68 |
+
|
| 69 |
+
#### Installation
|
| 70 |
+
Clone the repo:
|
| 71 |
+
```
|
| 72 |
+
git clone https://github.com/Wan-Video/Wan2.1.git
|
| 73 |
+
cd Wan2.1
|
| 74 |
+
```
|
| 75 |
+
|
| 76 |
+
Install dependencies:
|
| 77 |
+
```
|
| 78 |
+
# Ensure torch >= 2.4.0
|
| 79 |
+
pip install -r requirements.txt
|
| 80 |
+
```
|
| 81 |
+
|
| 82 |
+
|
| 83 |
+
#### Model Download
|
| 84 |
+
|
| 85 |
+
| Models | Download Link | Notes |
|
| 86 |
+
| --------------|-------------------------------------------------------------------------------|-------------------------------|
|
| 87 |
+
| T2V-14B | 🤗 [Huggingface](https://huggingface.co/Wan-AI/Wan2.1-T2V-14B) 🤖 [ModelScope](https://www.modelscope.cn/models/Wan-AI/Wan2.1-T2V-14B) | Supports both 480P and 720P
|
| 88 |
+
| I2V-14B-720P | 🤗 [Huggingface](https://huggingface.co/Wan-AI/Wan2.1-I2V-14B-720P) 🤖 [ModelScope](https://www.modelscope.cn/models/Wan-AI/Wan2.1-I2V-14B-720P) | Supports 720P
|
| 89 |
+
| I2V-14B-480P | 🤗 [Huggingface](https://huggingface.co/Wan-AI/Wan2.1-I2V-14B-480P) 🤖 [ModelScope](https://www.modelscope.cn/models/Wan-AI/Wan2.1-I2V-14B-480P) | Supports 480P
|
| 90 |
+
| T2V-1.3B | 🤗 [Huggingface](https://huggingface.co/Wan-AI/Wan2.1-T2V-1.3B) 🤖 [ModelScope](https://www.modelscope.cn/models/Wan-AI/Wan2.1-T2V-1.3B) | Supports 480P
|
| 91 |
+
|
| 92 |
+
|
| 93 |
+
> 💡Note: The 1.3B model is capable of generating videos at 720P resolution. However, due to limited training at this resolution, the results are generally less stable compared to 480P. For optimal performance, we recommend using 480P resolution.
|
| 94 |
+
|
| 95 |
+
|
| 96 |
+
Download models using 🤗 huggingface-cli:
|
| 97 |
+
```
|
| 98 |
+
pip install "huggingface_hub[cli]"
|
| 99 |
+
huggingface-cli download Wan-AI/Wan2.1-T2V-1.3B --local-dir ./Wan2.1-T2V-1.3B
|
| 100 |
+
```
|
| 101 |
+
|
| 102 |
+
Download models using 🤖 modelscope-cli:
|
| 103 |
+
```
|
| 104 |
+
pip install modelscope
|
| 105 |
+
modelscope download Wan-AI/Wan2.1-T2V-1.3B --local_dir ./Wan2.1-T2V-1.3B
|
| 106 |
+
```
|
| 107 |
+
|
| 108 |
+
#### Run Text-to-Video Generation
|
| 109 |
+
|
| 110 |
+
This repository supports two Text-to-Video models (1.3B and 14B) and two resolutions (480P and 720P). The parameters and configurations for these models are as follows:
|
| 111 |
+
|
| 112 |
+
<table>
|
| 113 |
+
<thead>
|
| 114 |
+
<tr>
|
| 115 |
+
<th rowspan="2">Task</th>
|
| 116 |
+
<th colspan="2">Resolution</th>
|
| 117 |
+
<th rowspan="2">Model</th>
|
| 118 |
+
</tr>
|
| 119 |
+
<tr>
|
| 120 |
+
<th>480P</th>
|
| 121 |
+
<th>720P</th>
|
| 122 |
+
</tr>
|
| 123 |
+
</thead>
|
| 124 |
+
<tbody>
|
| 125 |
+
<tr>
|
| 126 |
+
<td>t2v-14B</td>
|
| 127 |
+
<td style="color: green;">✔️</td>
|
| 128 |
+
<td style="color: green;">✔️</td>
|
| 129 |
+
<td>Wan2.1-T2V-14B</td>
|
| 130 |
+
</tr>
|
| 131 |
+
<tr>
|
| 132 |
+
<td>t2v-1.3B</td>
|
| 133 |
+
<td style="color: green;">✔️</td>
|
| 134 |
+
<td style="color: red;">❌</td>
|
| 135 |
+
<td>Wan2.1-T2V-1.3B</td>
|
| 136 |
+
</tr>
|
| 137 |
+
</tbody>
|
| 138 |
+
</table>
|
| 139 |
+
|
| 140 |
+
|
| 141 |
+
##### (1) Without Prompt Extention
|
| 142 |
+
|
| 143 |
+
To facilitate implementation, we will start with a basic version of the inference process that skips the [prompt extension](#2-using-prompt-extention) step.
|
| 144 |
+
|
| 145 |
+
- Single-GPU inference
|
| 146 |
+
|
| 147 |
+
```
|
| 148 |
+
python generate.py --task t2v-1.3B --size 832*480 --ckpt_dir ./Wan2.1-T2V-1.3B --sample_shift 8 --sample_guide_scale 6 --prompt "Two anthropomorphic cats in comfy boxing gear and bright gloves fight intensely on a spotlighted stage."
|
| 149 |
+
```
|
| 150 |
+
|
| 151 |
+
If you encounter OOM (Out-of-Memory) issues, you can use the `--offload_model True` and `--t5_cpu` options to reduce GPU memory usage. For example, on an RTX 4090 GPU:
|
| 152 |
+
|
| 153 |
+
```
|
| 154 |
+
python generate.py --task t2v-1.3B --size 832*480 --ckpt_dir ./Wan2.1-T2V-1.3B --offload_model True --t5_cpu --sample_shift 8 --sample_guide_scale 6 --prompt "Two anthropomorphic cats in comfy boxing gear and bright gloves fight intensely on a spotlighted stage."
|
| 155 |
+
```
|
| 156 |
+
|
| 157 |
+
> 💡Note: If you are using the `T2V-1.3B` model, we recommend setting the parameter `--sample_guide_scale 6`. The `--sample_shift parameter` can be adjusted within the range of 8 to 12 based on the performance.
|
| 158 |
+
|
| 159 |
+
- Multi-GPU inference using FSDP + xDiT USP
|
| 160 |
+
|
| 161 |
+
```
|
| 162 |
+
pip install "xfuser>=0.4.1"
|
| 163 |
+
torchrun --nproc_per_node=8 generate.py --task t2v-1.3B --size 832*480 --ckpt_dir ./Wan2.1-T2V-1.3B --dit_fsdp --t5_fsdp --ulysses_size 8 --sample_shift 8 --sample_guide_scale 6 --prompt "Two anthropomorphic cats in comfy boxing gear and bright gloves fight intensely on a spotlighted stage."
|
| 164 |
+
```
|
| 165 |
+
|
| 166 |
+
|
| 167 |
+
##### (2) Using Prompt Extention
|
| 168 |
+
|
| 169 |
+
Extending the prompts can effectively enrich the details in the generated videos, further enhancing the video quality. Therefore, we recommend enabling prompt extension. We provide the following two methods for prompt extension:
|
| 170 |
+
|
| 171 |
+
- Use the Dashscope API for extension.
|
| 172 |
+
- Apply for a `dashscope.api_key` in advance ([EN](https://www.alibabacloud.com/help/en/model-studio/getting-started/first-api-call-to-qwen) | [CN](https://help.aliyun.com/zh/model-studio/getting-started/first-api-call-to-qwen)).
|
| 173 |
+
- Configure the environment variable `DASH_API_KEY` to specify the Dashscope API key. For users of Alibaba Cloud's international site, you also need to set the environment variable `DASH_API_URL` to 'https://dashscope-intl.aliyuncs.com/api/v1'. For more detailed instructions, please refer to the [dashscope document](https://www.alibabacloud.com/help/en/model-studio/developer-reference/use-qwen-by-calling-api?spm=a2c63.p38356.0.i1).
|
| 174 |
+
- Use the `qwen-plus` model for text-to-video tasks and `qwen-vl-max` for image-to-video tasks.
|
| 175 |
+
- You can modify the model used for extension with the parameter `--prompt_extend_model`. For example:
|
| 176 |
+
```
|
| 177 |
+
DASH_API_KEY=your_key python generate.py --task t2v-1.3B --size 832*480 --ckpt_dir ./Wan2.1-T2V-1.3B --prompt "Two anthropomorphic cats in comfy boxing gear and bright gloves fight intensely on a spotlighted stage" --use_prompt_extend --prompt_extend_method 'dashscope' --prompt_extend_target_lang 'ch'
|
| 178 |
+
```
|
| 179 |
+
|
| 180 |
+
- Using a local model for extension.
|
| 181 |
+
|
| 182 |
+
- By default, the Qwen model on HuggingFace is used for this extension. Users can choose based on the available GPU memory size.
|
| 183 |
+
- For text-to-video tasks, you can use models like `Qwen/Qwen2.5-14B-Instruct`, `Qwen/Qwen2.5-7B-Instruct` and `Qwen/Qwen2.5-3B-Instruct`
|
| 184 |
+
- For image-to-video tasks, you can use models like `Qwen/Qwen2.5-VL-7B-Instruct` and `Qwen/Qwen2.5-VL-3B-Instruct`.
|
| 185 |
+
- Larger models generally provide better extension results but require more GPU memory.
|
| 186 |
+
- You can modify the model used for extension with the parameter `--prompt_extend_model` , allowing you to specify either a local model path or a Hugging Face model. For example:
|
| 187 |
+
|
| 188 |
+
```
|
| 189 |
+
python generate.py --task t2v-1.3B --size 832*480 --ckpt_dir ./Wan2.1-T2V-1.3B --prompt "Two anthropomorphic cats in comfy boxing gear and bright gloves fight intensely on a spotlighted stage" --use_prompt_extend --prompt_extend_method 'local_qwen' --prompt_extend_target_lang 'ch'
|
| 190 |
+
```
|
| 191 |
+
|
| 192 |
+
##### (3) Runing local gradio
|
| 193 |
+
|
| 194 |
+
```
|
| 195 |
+
cd gradio
|
| 196 |
+
# if one uses dashscope’s API for prompt extension
|
| 197 |
+
DASH_API_KEY=your_key python t2v_1.3B_singleGPU.py --prompt_extend_method 'dashscope' --ckpt_dir ./Wan2.1-T2V-1.3B
|
| 198 |
+
|
| 199 |
+
# if one uses a local model for prompt extension
|
| 200 |
+
python t2v_1.3B_singleGPU.py --prompt_extend_method 'local_qwen' --ckpt_dir ./Wan2.1-T2V-1.3B
|
| 201 |
+
```
|
| 202 |
+
|
| 203 |
+
|
| 204 |
+
|
| 205 |
+
## Evaluation
|
| 206 |
+
|
| 207 |
+
We employ our **Wan-Bench** framework to evaluate the performance of the T2V-1.3B model, with the results displayed in the table below. The results indicate that our smaller 1.3B model surpasses the overall metrics of larger open-source models, demonstrating the effectiveness of **WanX2.1**'s architecture and the data construction pipeline.
|
| 208 |
+
|
| 209 |
+
<div align="center">
|
| 210 |
+
<img src="assets/vben_1.3b_vs_sota.png" alt="" style="width: 80%;" />
|
| 211 |
+
</div>
|
| 212 |
+
|
| 213 |
+
|
| 214 |
+
|
| 215 |
+
## Computational Efficiency on Different GPUs
|
| 216 |
+
|
| 217 |
+
We test the computational efficiency of different **Wan2.1** models on different GPUs in the following table. The results are presented in the format: **Total time (s) / peak GPU memory (GB)**.
|
| 218 |
+
|
| 219 |
+
|
| 220 |
+
<div align="center">
|
| 221 |
+
<img src="assets/comp_effic.png" alt="" style="width: 80%;" />
|
| 222 |
+
</div>
|
| 223 |
+
|
| 224 |
+
> The parameter settings for the tests presented in this table are as follows:
|
| 225 |
+
> (1) For the 1.3B model on 8 GPUs, set `--ring_size 8` and `--ulysses_size 1`;
|
| 226 |
+
> (2) For the 14B model on 1 GPU, use `--offload_model True`;
|
| 227 |
+
> (3) For the 1.3B model on a single 4090 GPU, set `--offload_model True --t5_cpu`;
|
| 228 |
+
> (4) For all testings, no prompt extension was applied, meaning `--use_prompt_extend` was not enabled.
|
| 229 |
+
|
| 230 |
+
-------
|
| 231 |
+
|
| 232 |
+
## Introduction of Wan2.1
|
| 233 |
+
|
| 234 |
+
**Wan2.1** is designed on the mainstream diffusion transformer paradigm, achieving significant advancements in generative capabilities through a series of innovations. These include our novel spatio-temporal variational autoencoder (VAE), scalable training strategies, large-scale data construction, and automated evaluation metrics. Collectively, these contributions enhance the model’s performance and versatility.
|
| 235 |
+
|
| 236 |
+
|
| 237 |
+
##### (1) 3D Variational Autoencoders
|
| 238 |
+
We propose a novel 3D causal VAE architecture, termed **Wan-VAE** specifically designed for video generation. By combining multiple strategies, we improve spatio-temporal compression, reduce memory usage, and ensure temporal causality. **Wan-VAE** demonstrates significant advantages in performance efficiency compared to other open-source VAEs. Furthermore, our **Wan-VAE** can encode and decode unlimited-length 1080P videos without losing historical temporal information, making it particularly well-suited for video generation tasks.
|
| 239 |
+
|
| 240 |
+
|
| 241 |
+
<div align="center">
|
| 242 |
+
<img src="assets/video_vae_res.jpg" alt="" style="width: 80%;" />
|
| 243 |
+
</div>
|
| 244 |
+
|
| 245 |
+
|
| 246 |
+
##### (2) Video Diffusion DiT
|
| 247 |
+
|
| 248 |
+
**Wan2.1** is designed using the Flow Matching framework within the paradigm of mainstream Diffusion Transformers. Our model's architecture uses the T5 Encoder to encode multilingual text input, with cross-attention in each transformer block embedding the text into the model structure. Additionally, we employ an MLP with a Linear layer and a SiLU layer to process the input time embeddings and predict six modulation parameters individually. This MLP is shared across all transformer blocks, with each block learning a distinct set of biases. Our experimental findings reveal a significant performance improvement with this approach at the same parameter scale.
|
| 249 |
+
|
| 250 |
+
<div align="center">
|
| 251 |
+
<img src="assets/video_dit_arch.jpg" alt="" style="width: 80%;" />
|
| 252 |
+
</div>
|
| 253 |
+
|
| 254 |
+
|
| 255 |
+
| Model | Dimension | Input Dimension | Output Dimension | Feedforward Dimension | Frequency Dimension | Number of Heads | Number of Layers |
|
| 256 |
+
|--------|-----------|-----------------|------------------|-----------------------|---------------------|-----------------|------------------|
|
| 257 |
+
| 1.3B | 1536 | 16 | 16 | 8960 | 256 | 12 | 30 |
|
| 258 |
+
| 14B | 5120 | 16 | 16 | 13824 | 256 | 40 | 40 |
|
| 259 |
+
|
| 260 |
+
|
| 261 |
+
|
| 262 |
+
##### Data
|
| 263 |
+
|
| 264 |
+
We curated and deduplicated a candidate dataset comprising a vast amount of image and video data. During the data curation process, we designed a four-step data cleaning process, focusing on fundamental dimensions, visual quality and motion quality. Through the robust data processing pipeline, we can easily obtain high-quality, diverse, and large-scale training sets of images and videos.
|
| 265 |
+
|
| 266 |
+

|
| 267 |
+
|
| 268 |
+
|
| 269 |
+
##### Comparisons to SOTA
|
| 270 |
+
We compared **Wan2.1** with leading open-source and closed-source models to evaluate the performace. Using our carefully designed set of 1,035 internal prompts, we tested across 14 major dimensions and 26 sub-dimensions. Then we calculated the total score through a weighted average based on the importance of each dimension. The detailed results are shown in the table below. These results demonstrate our model's superior performance compared to both open-source and closed-source models.
|
| 271 |
+
|
| 272 |
+

|
| 273 |
+
|
| 274 |
+
|
| 275 |
+
## Citation
|
| 276 |
+
If you find our work helpful, please cite us.
|
| 277 |
+
|
| 278 |
+
```
|
| 279 |
+
@article{wan2.1,
|
| 280 |
+
title = {Wan: Open and Advanced Large-Scale Video Generative Models},
|
| 281 |
+
author = {Wan Team},
|
| 282 |
+
journal = {},
|
| 283 |
+
year = {2025}
|
| 284 |
+
}
|
| 285 |
+
```
|
| 286 |
+
|
| 287 |
+
## License Agreement
|
| 288 |
+
The models in this repository are licensed under the Apache 2.0 License. We claim no rights over the your generate contents, granting you the freedom to use them while ensuring that your usage complies with the provisions of this license. You are fully accountable for your use of the models, which must not involve sharing any content that violates applicable laws, causes harm to individuals or groups, disseminates personal information intended for harm, spreads misinformation, or targets vulnerable populations. For a complete list of restrictions and details regarding your rights, please refer to the full text of the [license](LICENSE.txt).
|
| 289 |
+
|
| 290 |
+
|
| 291 |
+
## Acknowledgements
|
| 292 |
+
|
| 293 |
+
We would like to thank the contributors to the [SD3](https://huggingface.co/stabilityai/stable-diffusion-3-medium), [Qwen](https://huggingface.co/Qwen), [umt5-xxl](https://huggingface.co/google/umt5-xxl), [diffusers](https://github.com/huggingface/diffusers) and [HuggingFace](https://huggingface.co) repositories, for their open research.
|
| 294 |
+
|
| 295 |
+
|
| 296 |
+
|
| 297 |
+
## Contact Us
|
| 298 |
+
If you would like to leave a message to our research or product teams, feel free to join our [Discord](https://discord.gg/p5XbdQV7) or [WeChat groups](https://gw.alicdn.com/imgextra/i2/O1CN01tqjWFi1ByuyehkTSB_!!6000000000015-0-tps-611-1279.jpg)!
|
Wan2.1-T2V-1.3B/Wan2.1_VAE.pth
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:38071ab59bd94681c686fa51d75a1968f64e470262043be31f7a094e442fd981
|
| 3 |
+
size 507609880
|
Wan2.1-T2V-1.3B/assets/.DS_Store
ADDED
|
Binary file (6.15 kB). View file
|
|
|
Wan2.1-T2V-1.3B/assets/comp_effic.png
ADDED
|
Git LFS Details
|
Wan2.1-T2V-1.3B/assets/data_for_diff_stage.jpg
ADDED
|
Git LFS Details
|
Wan2.1-T2V-1.3B/assets/i2v_res.png
ADDED
|
Git LFS Details
|
Wan2.1-T2V-1.3B/assets/logo.png
ADDED
|
Wan2.1-T2V-1.3B/assets/t2v_res.jpg
ADDED
|
Git LFS Details
|
Wan2.1-T2V-1.3B/assets/vben_1.3b_vs_sota.png
ADDED
|
Git LFS Details
|
Wan2.1-T2V-1.3B/assets/vben_vs_sota.png
ADDED
|
Git LFS Details
|
Wan2.1-T2V-1.3B/assets/video_dit_arch.jpg
ADDED
|
Git LFS Details
|
Wan2.1-T2V-1.3B/assets/video_vae_res.jpg
ADDED
|
Git LFS Details
|
Wan2.1-T2V-1.3B/config.json
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"_class_name": "WanModel",
|
| 3 |
+
"_diffusers_version": "0.30.0",
|
| 4 |
+
"dim": 1536,
|
| 5 |
+
"eps": 1e-06,
|
| 6 |
+
"ffn_dim": 8960,
|
| 7 |
+
"freq_dim": 256,
|
| 8 |
+
"in_dim": 16,
|
| 9 |
+
"model_type": "t2v",
|
| 10 |
+
"num_heads": 12,
|
| 11 |
+
"num_layers": 30,
|
| 12 |
+
"out_dim": 16,
|
| 13 |
+
"text_len": 512
|
| 14 |
+
}
|
Wan2.1-T2V-1.3B/diffusion_pytorch_model.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:96b6b242ca1c2f24e9d02cd6596066fab6d310e2d7538f33ae267cb18d957e8f
|
| 3 |
+
size 5676070424
|
Wan2.1-T2V-1.3B/examples/i2v_input.JPG
ADDED
|
|
Git LFS Details
|
Wan2.1-T2V-1.3B/google/umt5-xxl/special_tokens_map.json
ADDED
|
@@ -0,0 +1,308 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"additional_special_tokens": [
|
| 3 |
+
"<extra_id_0>",
|
| 4 |
+
"<extra_id_1>",
|
| 5 |
+
"<extra_id_2>",
|
| 6 |
+
"<extra_id_3>",
|
| 7 |
+
"<extra_id_4>",
|
| 8 |
+
"<extra_id_5>",
|
| 9 |
+
"<extra_id_6>",
|
| 10 |
+
"<extra_id_7>",
|
| 11 |
+
"<extra_id_8>",
|
| 12 |
+
"<extra_id_9>",
|
| 13 |
+
"<extra_id_10>",
|
| 14 |
+
"<extra_id_11>",
|
| 15 |
+
"<extra_id_12>",
|
| 16 |
+
"<extra_id_13>",
|
| 17 |
+
"<extra_id_14>",
|
| 18 |
+
"<extra_id_15>",
|
| 19 |
+
"<extra_id_16>",
|
| 20 |
+
"<extra_id_17>",
|
| 21 |
+
"<extra_id_18>",
|
| 22 |
+
"<extra_id_19>",
|
| 23 |
+
"<extra_id_20>",
|
| 24 |
+
"<extra_id_21>",
|
| 25 |
+
"<extra_id_22>",
|
| 26 |
+
"<extra_id_23>",
|
| 27 |
+
"<extra_id_24>",
|
| 28 |
+
"<extra_id_25>",
|
| 29 |
+
"<extra_id_26>",
|
| 30 |
+
"<extra_id_27>",
|
| 31 |
+
"<extra_id_28>",
|
| 32 |
+
"<extra_id_29>",
|
| 33 |
+
"<extra_id_30>",
|
| 34 |
+
"<extra_id_31>",
|
| 35 |
+
"<extra_id_32>",
|
| 36 |
+
"<extra_id_33>",
|
| 37 |
+
"<extra_id_34>",
|
| 38 |
+
"<extra_id_35>",
|
| 39 |
+
"<extra_id_36>",
|
| 40 |
+
"<extra_id_37>",
|
| 41 |
+
"<extra_id_38>",
|
| 42 |
+
"<extra_id_39>",
|
| 43 |
+
"<extra_id_40>",
|
| 44 |
+
"<extra_id_41>",
|
| 45 |
+
"<extra_id_42>",
|
| 46 |
+
"<extra_id_43>",
|
| 47 |
+
"<extra_id_44>",
|
| 48 |
+
"<extra_id_45>",
|
| 49 |
+
"<extra_id_46>",
|
| 50 |
+
"<extra_id_47>",
|
| 51 |
+
"<extra_id_48>",
|
| 52 |
+
"<extra_id_49>",
|
| 53 |
+
"<extra_id_50>",
|
| 54 |
+
"<extra_id_51>",
|
| 55 |
+
"<extra_id_52>",
|
| 56 |
+
"<extra_id_53>",
|
| 57 |
+
"<extra_id_54>",
|
| 58 |
+
"<extra_id_55>",
|
| 59 |
+
"<extra_id_56>",
|
| 60 |
+
"<extra_id_57>",
|
| 61 |
+
"<extra_id_58>",
|
| 62 |
+
"<extra_id_59>",
|
| 63 |
+
"<extra_id_60>",
|
| 64 |
+
"<extra_id_61>",
|
| 65 |
+
"<extra_id_62>",
|
| 66 |
+
"<extra_id_63>",
|
| 67 |
+
"<extra_id_64>",
|
| 68 |
+
"<extra_id_65>",
|
| 69 |
+
"<extra_id_66>",
|
| 70 |
+
"<extra_id_67>",
|
| 71 |
+
"<extra_id_68>",
|
| 72 |
+
"<extra_id_69>",
|
| 73 |
+
"<extra_id_70>",
|
| 74 |
+
"<extra_id_71>",
|
| 75 |
+
"<extra_id_72>",
|
| 76 |
+
"<extra_id_73>",
|
| 77 |
+
"<extra_id_74>",
|
| 78 |
+
"<extra_id_75>",
|
| 79 |
+
"<extra_id_76>",
|
| 80 |
+
"<extra_id_77>",
|
| 81 |
+
"<extra_id_78>",
|
| 82 |
+
"<extra_id_79>",
|
| 83 |
+
"<extra_id_80>",
|
| 84 |
+
"<extra_id_81>",
|
| 85 |
+
"<extra_id_82>",
|
| 86 |
+
"<extra_id_83>",
|
| 87 |
+
"<extra_id_84>",
|
| 88 |
+
"<extra_id_85>",
|
| 89 |
+
"<extra_id_86>",
|
| 90 |
+
"<extra_id_87>",
|
| 91 |
+
"<extra_id_88>",
|
| 92 |
+
"<extra_id_89>",
|
| 93 |
+
"<extra_id_90>",
|
| 94 |
+
"<extra_id_91>",
|
| 95 |
+
"<extra_id_92>",
|
| 96 |
+
"<extra_id_93>",
|
| 97 |
+
"<extra_id_94>",
|
| 98 |
+
"<extra_id_95>",
|
| 99 |
+
"<extra_id_96>",
|
| 100 |
+
"<extra_id_97>",
|
| 101 |
+
"<extra_id_98>",
|
| 102 |
+
"<extra_id_99>",
|
| 103 |
+
"<extra_id_100>",
|
| 104 |
+
"<extra_id_101>",
|
| 105 |
+
"<extra_id_102>",
|
| 106 |
+
"<extra_id_103>",
|
| 107 |
+
"<extra_id_104>",
|
| 108 |
+
"<extra_id_105>",
|
| 109 |
+
"<extra_id_106>",
|
| 110 |
+
"<extra_id_107>",
|
| 111 |
+
"<extra_id_108>",
|
| 112 |
+
"<extra_id_109>",
|
| 113 |
+
"<extra_id_110>",
|
| 114 |
+
"<extra_id_111>",
|
| 115 |
+
"<extra_id_112>",
|
| 116 |
+
"<extra_id_113>",
|
| 117 |
+
"<extra_id_114>",
|
| 118 |
+
"<extra_id_115>",
|
| 119 |
+
"<extra_id_116>",
|
| 120 |
+
"<extra_id_117>",
|
| 121 |
+
"<extra_id_118>",
|
| 122 |
+
"<extra_id_119>",
|
| 123 |
+
"<extra_id_120>",
|
| 124 |
+
"<extra_id_121>",
|
| 125 |
+
"<extra_id_122>",
|
| 126 |
+
"<extra_id_123>",
|
| 127 |
+
"<extra_id_124>",
|
| 128 |
+
"<extra_id_125>",
|
| 129 |
+
"<extra_id_126>",
|
| 130 |
+
"<extra_id_127>",
|
| 131 |
+
"<extra_id_128>",
|
| 132 |
+
"<extra_id_129>",
|
| 133 |
+
"<extra_id_130>",
|
| 134 |
+
"<extra_id_131>",
|
| 135 |
+
"<extra_id_132>",
|
| 136 |
+
"<extra_id_133>",
|
| 137 |
+
"<extra_id_134>",
|
| 138 |
+
"<extra_id_135>",
|
| 139 |
+
"<extra_id_136>",
|
| 140 |
+
"<extra_id_137>",
|
| 141 |
+
"<extra_id_138>",
|
| 142 |
+
"<extra_id_139>",
|
| 143 |
+
"<extra_id_140>",
|
| 144 |
+
"<extra_id_141>",
|
| 145 |
+
"<extra_id_142>",
|
| 146 |
+
"<extra_id_143>",
|
| 147 |
+
"<extra_id_144>",
|
| 148 |
+
"<extra_id_145>",
|
| 149 |
+
"<extra_id_146>",
|
| 150 |
+
"<extra_id_147>",
|
| 151 |
+
"<extra_id_148>",
|
| 152 |
+
"<extra_id_149>",
|
| 153 |
+
"<extra_id_150>",
|
| 154 |
+
"<extra_id_151>",
|
| 155 |
+
"<extra_id_152>",
|
| 156 |
+
"<extra_id_153>",
|
| 157 |
+
"<extra_id_154>",
|
| 158 |
+
"<extra_id_155>",
|
| 159 |
+
"<extra_id_156>",
|
| 160 |
+
"<extra_id_157>",
|
| 161 |
+
"<extra_id_158>",
|
| 162 |
+
"<extra_id_159>",
|
| 163 |
+
"<extra_id_160>",
|
| 164 |
+
"<extra_id_161>",
|
| 165 |
+
"<extra_id_162>",
|
| 166 |
+
"<extra_id_163>",
|
| 167 |
+
"<extra_id_164>",
|
| 168 |
+
"<extra_id_165>",
|
| 169 |
+
"<extra_id_166>",
|
| 170 |
+
"<extra_id_167>",
|
| 171 |
+
"<extra_id_168>",
|
| 172 |
+
"<extra_id_169>",
|
| 173 |
+
"<extra_id_170>",
|
| 174 |
+
"<extra_id_171>",
|
| 175 |
+
"<extra_id_172>",
|
| 176 |
+
"<extra_id_173>",
|
| 177 |
+
"<extra_id_174>",
|
| 178 |
+
"<extra_id_175>",
|
| 179 |
+
"<extra_id_176>",
|
| 180 |
+
"<extra_id_177>",
|
| 181 |
+
"<extra_id_178>",
|
| 182 |
+
"<extra_id_179>",
|
| 183 |
+
"<extra_id_180>",
|
| 184 |
+
"<extra_id_181>",
|
| 185 |
+
"<extra_id_182>",
|
| 186 |
+
"<extra_id_183>",
|
| 187 |
+
"<extra_id_184>",
|
| 188 |
+
"<extra_id_185>",
|
| 189 |
+
"<extra_id_186>",
|
| 190 |
+
"<extra_id_187>",
|
| 191 |
+
"<extra_id_188>",
|
| 192 |
+
"<extra_id_189>",
|
| 193 |
+
"<extra_id_190>",
|
| 194 |
+
"<extra_id_191>",
|
| 195 |
+
"<extra_id_192>",
|
| 196 |
+
"<extra_id_193>",
|
| 197 |
+
"<extra_id_194>",
|
| 198 |
+
"<extra_id_195>",
|
| 199 |
+
"<extra_id_196>",
|
| 200 |
+
"<extra_id_197>",
|
| 201 |
+
"<extra_id_198>",
|
| 202 |
+
"<extra_id_199>",
|
| 203 |
+
"<extra_id_200>",
|
| 204 |
+
"<extra_id_201>",
|
| 205 |
+
"<extra_id_202>",
|
| 206 |
+
"<extra_id_203>",
|
| 207 |
+
"<extra_id_204>",
|
| 208 |
+
"<extra_id_205>",
|
| 209 |
+
"<extra_id_206>",
|
| 210 |
+
"<extra_id_207>",
|
| 211 |
+
"<extra_id_208>",
|
| 212 |
+
"<extra_id_209>",
|
| 213 |
+
"<extra_id_210>",
|
| 214 |
+
"<extra_id_211>",
|
| 215 |
+
"<extra_id_212>",
|
| 216 |
+
"<extra_id_213>",
|
| 217 |
+
"<extra_id_214>",
|
| 218 |
+
"<extra_id_215>",
|
| 219 |
+
"<extra_id_216>",
|
| 220 |
+
"<extra_id_217>",
|
| 221 |
+
"<extra_id_218>",
|
| 222 |
+
"<extra_id_219>",
|
| 223 |
+
"<extra_id_220>",
|
| 224 |
+
"<extra_id_221>",
|
| 225 |
+
"<extra_id_222>",
|
| 226 |
+
"<extra_id_223>",
|
| 227 |
+
"<extra_id_224>",
|
| 228 |
+
"<extra_id_225>",
|
| 229 |
+
"<extra_id_226>",
|
| 230 |
+
"<extra_id_227>",
|
| 231 |
+
"<extra_id_228>",
|
| 232 |
+
"<extra_id_229>",
|
| 233 |
+
"<extra_id_230>",
|
| 234 |
+
"<extra_id_231>",
|
| 235 |
+
"<extra_id_232>",
|
| 236 |
+
"<extra_id_233>",
|
| 237 |
+
"<extra_id_234>",
|
| 238 |
+
"<extra_id_235>",
|
| 239 |
+
"<extra_id_236>",
|
| 240 |
+
"<extra_id_237>",
|
| 241 |
+
"<extra_id_238>",
|
| 242 |
+
"<extra_id_239>",
|
| 243 |
+
"<extra_id_240>",
|
| 244 |
+
"<extra_id_241>",
|
| 245 |
+
"<extra_id_242>",
|
| 246 |
+
"<extra_id_243>",
|
| 247 |
+
"<extra_id_244>",
|
| 248 |
+
"<extra_id_245>",
|
| 249 |
+
"<extra_id_246>",
|
| 250 |
+
"<extra_id_247>",
|
| 251 |
+
"<extra_id_248>",
|
| 252 |
+
"<extra_id_249>",
|
| 253 |
+
"<extra_id_250>",
|
| 254 |
+
"<extra_id_251>",
|
| 255 |
+
"<extra_id_252>",
|
| 256 |
+
"<extra_id_253>",
|
| 257 |
+
"<extra_id_254>",
|
| 258 |
+
"<extra_id_255>",
|
| 259 |
+
"<extra_id_256>",
|
| 260 |
+
"<extra_id_257>",
|
| 261 |
+
"<extra_id_258>",
|
| 262 |
+
"<extra_id_259>",
|
| 263 |
+
"<extra_id_260>",
|
| 264 |
+
"<extra_id_261>",
|
| 265 |
+
"<extra_id_262>",
|
| 266 |
+
"<extra_id_263>",
|
| 267 |
+
"<extra_id_264>",
|
| 268 |
+
"<extra_id_265>",
|
| 269 |
+
"<extra_id_266>",
|
| 270 |
+
"<extra_id_267>",
|
| 271 |
+
"<extra_id_268>",
|
| 272 |
+
"<extra_id_269>",
|
| 273 |
+
"<extra_id_270>",
|
| 274 |
+
"<extra_id_271>",
|
| 275 |
+
"<extra_id_272>",
|
| 276 |
+
"<extra_id_273>",
|
| 277 |
+
"<extra_id_274>",
|
| 278 |
+
"<extra_id_275>",
|
| 279 |
+
"<extra_id_276>",
|
| 280 |
+
"<extra_id_277>",
|
| 281 |
+
"<extra_id_278>",
|
| 282 |
+
"<extra_id_279>",
|
| 283 |
+
"<extra_id_280>",
|
| 284 |
+
"<extra_id_281>",
|
| 285 |
+
"<extra_id_282>",
|
| 286 |
+
"<extra_id_283>",
|
| 287 |
+
"<extra_id_284>",
|
| 288 |
+
"<extra_id_285>",
|
| 289 |
+
"<extra_id_286>",
|
| 290 |
+
"<extra_id_287>",
|
| 291 |
+
"<extra_id_288>",
|
| 292 |
+
"<extra_id_289>",
|
| 293 |
+
"<extra_id_290>",
|
| 294 |
+
"<extra_id_291>",
|
| 295 |
+
"<extra_id_292>",
|
| 296 |
+
"<extra_id_293>",
|
| 297 |
+
"<extra_id_294>",
|
| 298 |
+
"<extra_id_295>",
|
| 299 |
+
"<extra_id_296>",
|
| 300 |
+
"<extra_id_297>",
|
| 301 |
+
"<extra_id_298>",
|
| 302 |
+
"<extra_id_299>"
|
| 303 |
+
],
|
| 304 |
+
"bos_token": "<s>",
|
| 305 |
+
"eos_token": "</s>",
|
| 306 |
+
"pad_token": "<pad>",
|
| 307 |
+
"unk_token": "<unk>"
|
| 308 |
+
}
|
Wan2.1-T2V-1.3B/google/umt5-xxl/spiece.model
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:e3909a67b780650b35cf529ac782ad2b6b26e6d1f849d3fbb6a872905f452458
|
| 3 |
+
size 4548313
|
Wan2.1-T2V-1.3B/google/umt5-xxl/tokenizer.json
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:6e197b4d3dbd71da14b4eb255f4fa91c9c1f2068b20a2de2472967ca3d22602b
|
| 3 |
+
size 16837417
|
Wan2.1-T2V-1.3B/google/umt5-xxl/tokenizer_config.json
ADDED
|
@@ -0,0 +1,2748 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"added_tokens_decoder": {
|
| 3 |
+
"0": {
|
| 4 |
+
"content": "<pad>",
|
| 5 |
+
"lstrip": false,
|
| 6 |
+
"normalized": false,
|
| 7 |
+
"rstrip": false,
|
| 8 |
+
"single_word": false,
|
| 9 |
+
"special": true
|
| 10 |
+
},
|
| 11 |
+
"1": {
|
| 12 |
+
"content": "</s>",
|
| 13 |
+
"lstrip": false,
|
| 14 |
+
"normalized": false,
|
| 15 |
+
"rstrip": false,
|
| 16 |
+
"single_word": false,
|
| 17 |
+
"special": true
|
| 18 |
+
},
|
| 19 |
+
"2": {
|
| 20 |
+
"content": "<s>",
|
| 21 |
+
"lstrip": false,
|
| 22 |
+
"normalized": false,
|
| 23 |
+
"rstrip": false,
|
| 24 |
+
"single_word": false,
|
| 25 |
+
"special": true
|
| 26 |
+
},
|
| 27 |
+
"3": {
|
| 28 |
+
"content": "<unk>",
|
| 29 |
+
"lstrip": false,
|
| 30 |
+
"normalized": false,
|
| 31 |
+
"rstrip": false,
|
| 32 |
+
"single_word": false,
|
| 33 |
+
"special": true
|
| 34 |
+
},
|
| 35 |
+
"256000": {
|
| 36 |
+
"content": "<extra_id_299>",
|
| 37 |
+
"lstrip": false,
|
| 38 |
+
"normalized": false,
|
| 39 |
+
"rstrip": false,
|
| 40 |
+
"single_word": false,
|
| 41 |
+
"special": true
|
| 42 |
+
},
|
| 43 |
+
"256001": {
|
| 44 |
+
"content": "<extra_id_298>",
|
| 45 |
+
"lstrip": false,
|
| 46 |
+
"normalized": false,
|
| 47 |
+
"rstrip": false,
|
| 48 |
+
"single_word": false,
|
| 49 |
+
"special": true
|
| 50 |
+
},
|
| 51 |
+
"256002": {
|
| 52 |
+
"content": "<extra_id_297>",
|
| 53 |
+
"lstrip": false,
|
| 54 |
+
"normalized": false,
|
| 55 |
+
"rstrip": false,
|
| 56 |
+
"single_word": false,
|
| 57 |
+
"special": true
|
| 58 |
+
},
|
| 59 |
+
"256003": {
|
| 60 |
+
"content": "<extra_id_296>",
|
| 61 |
+
"lstrip": false,
|
| 62 |
+
"normalized": false,
|
| 63 |
+
"rstrip": false,
|
| 64 |
+
"single_word": false,
|
| 65 |
+
"special": true
|
| 66 |
+
},
|
| 67 |
+
"256004": {
|
| 68 |
+
"content": "<extra_id_295>",
|
| 69 |
+
"lstrip": false,
|
| 70 |
+
"normalized": false,
|
| 71 |
+
"rstrip": false,
|
| 72 |
+
"single_word": false,
|
| 73 |
+
"special": true
|
| 74 |
+
},
|
| 75 |
+
"256005": {
|
| 76 |
+
"content": "<extra_id_294>",
|
| 77 |
+
"lstrip": false,
|
| 78 |
+
"normalized": false,
|
| 79 |
+
"rstrip": false,
|
| 80 |
+
"single_word": false,
|
| 81 |
+
"special": true
|
| 82 |
+
},
|
| 83 |
+
"256006": {
|
| 84 |
+
"content": "<extra_id_293>",
|
| 85 |
+
"lstrip": false,
|
| 86 |
+
"normalized": false,
|
| 87 |
+
"rstrip": false,
|
| 88 |
+
"single_word": false,
|
| 89 |
+
"special": true
|
| 90 |
+
},
|
| 91 |
+
"256007": {
|
| 92 |
+
"content": "<extra_id_292>",
|
| 93 |
+
"lstrip": false,
|
| 94 |
+
"normalized": false,
|
| 95 |
+
"rstrip": false,
|
| 96 |
+
"single_word": false,
|
| 97 |
+
"special": true
|
| 98 |
+
},
|
| 99 |
+
"256008": {
|
| 100 |
+
"content": "<extra_id_291>",
|
| 101 |
+
"lstrip": false,
|
| 102 |
+
"normalized": false,
|
| 103 |
+
"rstrip": false,
|
| 104 |
+
"single_word": false,
|
| 105 |
+
"special": true
|
| 106 |
+
},
|
| 107 |
+
"256009": {
|
| 108 |
+
"content": "<extra_id_290>",
|
| 109 |
+
"lstrip": false,
|
| 110 |
+
"normalized": false,
|
| 111 |
+
"rstrip": false,
|
| 112 |
+
"single_word": false,
|
| 113 |
+
"special": true
|
| 114 |
+
},
|
| 115 |
+
"256010": {
|
| 116 |
+
"content": "<extra_id_289>",
|
| 117 |
+
"lstrip": false,
|
| 118 |
+
"normalized": false,
|
| 119 |
+
"rstrip": false,
|
| 120 |
+
"single_word": false,
|
| 121 |
+
"special": true
|
| 122 |
+
},
|
| 123 |
+
"256011": {
|
| 124 |
+
"content": "<extra_id_288>",
|
| 125 |
+
"lstrip": false,
|
| 126 |
+
"normalized": false,
|
| 127 |
+
"rstrip": false,
|
| 128 |
+
"single_word": false,
|
| 129 |
+
"special": true
|
| 130 |
+
},
|
| 131 |
+
"256012": {
|
| 132 |
+
"content": "<extra_id_287>",
|
| 133 |
+
"lstrip": false,
|
| 134 |
+
"normalized": false,
|
| 135 |
+
"rstrip": false,
|
| 136 |
+
"single_word": false,
|
| 137 |
+
"special": true
|
| 138 |
+
},
|
| 139 |
+
"256013": {
|
| 140 |
+
"content": "<extra_id_286>",
|
| 141 |
+
"lstrip": false,
|
| 142 |
+
"normalized": false,
|
| 143 |
+
"rstrip": false,
|
| 144 |
+
"single_word": false,
|
| 145 |
+
"special": true
|
| 146 |
+
},
|
| 147 |
+
"256014": {
|
| 148 |
+
"content": "<extra_id_285>",
|
| 149 |
+
"lstrip": false,
|
| 150 |
+
"normalized": false,
|
| 151 |
+
"rstrip": false,
|
| 152 |
+
"single_word": false,
|
| 153 |
+
"special": true
|
| 154 |
+
},
|
| 155 |
+
"256015": {
|
| 156 |
+
"content": "<extra_id_284>",
|
| 157 |
+
"lstrip": false,
|
| 158 |
+
"normalized": false,
|
| 159 |
+
"rstrip": false,
|
| 160 |
+
"single_word": false,
|
| 161 |
+
"special": true
|
| 162 |
+
},
|
| 163 |
+
"256016": {
|
| 164 |
+
"content": "<extra_id_283>",
|
| 165 |
+
"lstrip": false,
|
| 166 |
+
"normalized": false,
|
| 167 |
+
"rstrip": false,
|
| 168 |
+
"single_word": false,
|
| 169 |
+
"special": true
|
| 170 |
+
},
|
| 171 |
+
"256017": {
|
| 172 |
+
"content": "<extra_id_282>",
|
| 173 |
+
"lstrip": false,
|
| 174 |
+
"normalized": false,
|
| 175 |
+
"rstrip": false,
|
| 176 |
+
"single_word": false,
|
| 177 |
+
"special": true
|
| 178 |
+
},
|
| 179 |
+
"256018": {
|
| 180 |
+
"content": "<extra_id_281>",
|
| 181 |
+
"lstrip": false,
|
| 182 |
+
"normalized": false,
|
| 183 |
+
"rstrip": false,
|
| 184 |
+
"single_word": false,
|
| 185 |
+
"special": true
|
| 186 |
+
},
|
| 187 |
+
"256019": {
|
| 188 |
+
"content": "<extra_id_280>",
|
| 189 |
+
"lstrip": false,
|
| 190 |
+
"normalized": false,
|
| 191 |
+
"rstrip": false,
|
| 192 |
+
"single_word": false,
|
| 193 |
+
"special": true
|
| 194 |
+
},
|
| 195 |
+
"256020": {
|
| 196 |
+
"content": "<extra_id_279>",
|
| 197 |
+
"lstrip": false,
|
| 198 |
+
"normalized": false,
|
| 199 |
+
"rstrip": false,
|
| 200 |
+
"single_word": false,
|
| 201 |
+
"special": true
|
| 202 |
+
},
|
| 203 |
+
"256021": {
|
| 204 |
+
"content": "<extra_id_278>",
|
| 205 |
+
"lstrip": false,
|
| 206 |
+
"normalized": false,
|
| 207 |
+
"rstrip": false,
|
| 208 |
+
"single_word": false,
|
| 209 |
+
"special": true
|
| 210 |
+
},
|
| 211 |
+
"256022": {
|
| 212 |
+
"content": "<extra_id_277>",
|
| 213 |
+
"lstrip": false,
|
| 214 |
+
"normalized": false,
|
| 215 |
+
"rstrip": false,
|
| 216 |
+
"single_word": false,
|
| 217 |
+
"special": true
|
| 218 |
+
},
|
| 219 |
+
"256023": {
|
| 220 |
+
"content": "<extra_id_276>",
|
| 221 |
+
"lstrip": false,
|
| 222 |
+
"normalized": false,
|
| 223 |
+
"rstrip": false,
|
| 224 |
+
"single_word": false,
|
| 225 |
+
"special": true
|
| 226 |
+
},
|
| 227 |
+
"256024": {
|
| 228 |
+
"content": "<extra_id_275>",
|
| 229 |
+
"lstrip": false,
|
| 230 |
+
"normalized": false,
|
| 231 |
+
"rstrip": false,
|
| 232 |
+
"single_word": false,
|
| 233 |
+
"special": true
|
| 234 |
+
},
|
| 235 |
+
"256025": {
|
| 236 |
+
"content": "<extra_id_274>",
|
| 237 |
+
"lstrip": false,
|
| 238 |
+
"normalized": false,
|
| 239 |
+
"rstrip": false,
|
| 240 |
+
"single_word": false,
|
| 241 |
+
"special": true
|
| 242 |
+
},
|
| 243 |
+
"256026": {
|
| 244 |
+
"content": "<extra_id_273>",
|
| 245 |
+
"lstrip": false,
|
| 246 |
+
"normalized": false,
|
| 247 |
+
"rstrip": false,
|
| 248 |
+
"single_word": false,
|
| 249 |
+
"special": true
|
| 250 |
+
},
|
| 251 |
+
"256027": {
|
| 252 |
+
"content": "<extra_id_272>",
|
| 253 |
+
"lstrip": false,
|
| 254 |
+
"normalized": false,
|
| 255 |
+
"rstrip": false,
|
| 256 |
+
"single_word": false,
|
| 257 |
+
"special": true
|
| 258 |
+
},
|
| 259 |
+
"256028": {
|
| 260 |
+
"content": "<extra_id_271>",
|
| 261 |
+
"lstrip": false,
|
| 262 |
+
"normalized": false,
|
| 263 |
+
"rstrip": false,
|
| 264 |
+
"single_word": false,
|
| 265 |
+
"special": true
|
| 266 |
+
},
|
| 267 |
+
"256029": {
|
| 268 |
+
"content": "<extra_id_270>",
|
| 269 |
+
"lstrip": false,
|
| 270 |
+
"normalized": false,
|
| 271 |
+
"rstrip": false,
|
| 272 |
+
"single_word": false,
|
| 273 |
+
"special": true
|
| 274 |
+
},
|
| 275 |
+
"256030": {
|
| 276 |
+
"content": "<extra_id_269>",
|
| 277 |
+
"lstrip": false,
|
| 278 |
+
"normalized": false,
|
| 279 |
+
"rstrip": false,
|
| 280 |
+
"single_word": false,
|
| 281 |
+
"special": true
|
| 282 |
+
},
|
| 283 |
+
"256031": {
|
| 284 |
+
"content": "<extra_id_268>",
|
| 285 |
+
"lstrip": false,
|
| 286 |
+
"normalized": false,
|
| 287 |
+
"rstrip": false,
|
| 288 |
+
"single_word": false,
|
| 289 |
+
"special": true
|
| 290 |
+
},
|
| 291 |
+
"256032": {
|
| 292 |
+
"content": "<extra_id_267>",
|
| 293 |
+
"lstrip": false,
|
| 294 |
+
"normalized": false,
|
| 295 |
+
"rstrip": false,
|
| 296 |
+
"single_word": false,
|
| 297 |
+
"special": true
|
| 298 |
+
},
|
| 299 |
+
"256033": {
|
| 300 |
+
"content": "<extra_id_266>",
|
| 301 |
+
"lstrip": false,
|
| 302 |
+
"normalized": false,
|
| 303 |
+
"rstrip": false,
|
| 304 |
+
"single_word": false,
|
| 305 |
+
"special": true
|
| 306 |
+
},
|
| 307 |
+
"256034": {
|
| 308 |
+
"content": "<extra_id_265>",
|
| 309 |
+
"lstrip": false,
|
| 310 |
+
"normalized": false,
|
| 311 |
+
"rstrip": false,
|
| 312 |
+
"single_word": false,
|
| 313 |
+
"special": true
|
| 314 |
+
},
|
| 315 |
+
"256035": {
|
| 316 |
+
"content": "<extra_id_264>",
|
| 317 |
+
"lstrip": false,
|
| 318 |
+
"normalized": false,
|
| 319 |
+
"rstrip": false,
|
| 320 |
+
"single_word": false,
|
| 321 |
+
"special": true
|
| 322 |
+
},
|
| 323 |
+
"256036": {
|
| 324 |
+
"content": "<extra_id_263>",
|
| 325 |
+
"lstrip": false,
|
| 326 |
+
"normalized": false,
|
| 327 |
+
"rstrip": false,
|
| 328 |
+
"single_word": false,
|
| 329 |
+
"special": true
|
| 330 |
+
},
|
| 331 |
+
"256037": {
|
| 332 |
+
"content": "<extra_id_262>",
|
| 333 |
+
"lstrip": false,
|
| 334 |
+
"normalized": false,
|
| 335 |
+
"rstrip": false,
|
| 336 |
+
"single_word": false,
|
| 337 |
+
"special": true
|
| 338 |
+
},
|
| 339 |
+
"256038": {
|
| 340 |
+
"content": "<extra_id_261>",
|
| 341 |
+
"lstrip": false,
|
| 342 |
+
"normalized": false,
|
| 343 |
+
"rstrip": false,
|
| 344 |
+
"single_word": false,
|
| 345 |
+
"special": true
|
| 346 |
+
},
|
| 347 |
+
"256039": {
|
| 348 |
+
"content": "<extra_id_260>",
|
| 349 |
+
"lstrip": false,
|
| 350 |
+
"normalized": false,
|
| 351 |
+
"rstrip": false,
|
| 352 |
+
"single_word": false,
|
| 353 |
+
"special": true
|
| 354 |
+
},
|
| 355 |
+
"256040": {
|
| 356 |
+
"content": "<extra_id_259>",
|
| 357 |
+
"lstrip": false,
|
| 358 |
+
"normalized": false,
|
| 359 |
+
"rstrip": false,
|
| 360 |
+
"single_word": false,
|
| 361 |
+
"special": true
|
| 362 |
+
},
|
| 363 |
+
"256041": {
|
| 364 |
+
"content": "<extra_id_258>",
|
| 365 |
+
"lstrip": false,
|
| 366 |
+
"normalized": false,
|
| 367 |
+
"rstrip": false,
|
| 368 |
+
"single_word": false,
|
| 369 |
+
"special": true
|
| 370 |
+
},
|
| 371 |
+
"256042": {
|
| 372 |
+
"content": "<extra_id_257>",
|
| 373 |
+
"lstrip": false,
|
| 374 |
+
"normalized": false,
|
| 375 |
+
"rstrip": false,
|
| 376 |
+
"single_word": false,
|
| 377 |
+
"special": true
|
| 378 |
+
},
|
| 379 |
+
"256043": {
|
| 380 |
+
"content": "<extra_id_256>",
|
| 381 |
+
"lstrip": false,
|
| 382 |
+
"normalized": false,
|
| 383 |
+
"rstrip": false,
|
| 384 |
+
"single_word": false,
|
| 385 |
+
"special": true
|
| 386 |
+
},
|
| 387 |
+
"256044": {
|
| 388 |
+
"content": "<extra_id_255>",
|
| 389 |
+
"lstrip": false,
|
| 390 |
+
"normalized": false,
|
| 391 |
+
"rstrip": false,
|
| 392 |
+
"single_word": false,
|
| 393 |
+
"special": true
|
| 394 |
+
},
|
| 395 |
+
"256045": {
|
| 396 |
+
"content": "<extra_id_254>",
|
| 397 |
+
"lstrip": false,
|
| 398 |
+
"normalized": false,
|
| 399 |
+
"rstrip": false,
|
| 400 |
+
"single_word": false,
|
| 401 |
+
"special": true
|
| 402 |
+
},
|
| 403 |
+
"256046": {
|
| 404 |
+
"content": "<extra_id_253>",
|
| 405 |
+
"lstrip": false,
|
| 406 |
+
"normalized": false,
|
| 407 |
+
"rstrip": false,
|
| 408 |
+
"single_word": false,
|
| 409 |
+
"special": true
|
| 410 |
+
},
|
| 411 |
+
"256047": {
|
| 412 |
+
"content": "<extra_id_252>",
|
| 413 |
+
"lstrip": false,
|
| 414 |
+
"normalized": false,
|
| 415 |
+
"rstrip": false,
|
| 416 |
+
"single_word": false,
|
| 417 |
+
"special": true
|
| 418 |
+
},
|
| 419 |
+
"256048": {
|
| 420 |
+
"content": "<extra_id_251>",
|
| 421 |
+
"lstrip": false,
|
| 422 |
+
"normalized": false,
|
| 423 |
+
"rstrip": false,
|
| 424 |
+
"single_word": false,
|
| 425 |
+
"special": true
|
| 426 |
+
},
|
| 427 |
+
"256049": {
|
| 428 |
+
"content": "<extra_id_250>",
|
| 429 |
+
"lstrip": false,
|
| 430 |
+
"normalized": false,
|
| 431 |
+
"rstrip": false,
|
| 432 |
+
"single_word": false,
|
| 433 |
+
"special": true
|
| 434 |
+
},
|
| 435 |
+
"256050": {
|
| 436 |
+
"content": "<extra_id_249>",
|
| 437 |
+
"lstrip": false,
|
| 438 |
+
"normalized": false,
|
| 439 |
+
"rstrip": false,
|
| 440 |
+
"single_word": false,
|
| 441 |
+
"special": true
|
| 442 |
+
},
|
| 443 |
+
"256051": {
|
| 444 |
+
"content": "<extra_id_248>",
|
| 445 |
+
"lstrip": false,
|
| 446 |
+
"normalized": false,
|
| 447 |
+
"rstrip": false,
|
| 448 |
+
"single_word": false,
|
| 449 |
+
"special": true
|
| 450 |
+
},
|
| 451 |
+
"256052": {
|
| 452 |
+
"content": "<extra_id_247>",
|
| 453 |
+
"lstrip": false,
|
| 454 |
+
"normalized": false,
|
| 455 |
+
"rstrip": false,
|
| 456 |
+
"single_word": false,
|
| 457 |
+
"special": true
|
| 458 |
+
},
|
| 459 |
+
"256053": {
|
| 460 |
+
"content": "<extra_id_246>",
|
| 461 |
+
"lstrip": false,
|
| 462 |
+
"normalized": false,
|
| 463 |
+
"rstrip": false,
|
| 464 |
+
"single_word": false,
|
| 465 |
+
"special": true
|
| 466 |
+
},
|
| 467 |
+
"256054": {
|
| 468 |
+
"content": "<extra_id_245>",
|
| 469 |
+
"lstrip": false,
|
| 470 |
+
"normalized": false,
|
| 471 |
+
"rstrip": false,
|
| 472 |
+
"single_word": false,
|
| 473 |
+
"special": true
|
| 474 |
+
},
|
| 475 |
+
"256055": {
|
| 476 |
+
"content": "<extra_id_244>",
|
| 477 |
+
"lstrip": false,
|
| 478 |
+
"normalized": false,
|
| 479 |
+
"rstrip": false,
|
| 480 |
+
"single_word": false,
|
| 481 |
+
"special": true
|
| 482 |
+
},
|
| 483 |
+
"256056": {
|
| 484 |
+
"content": "<extra_id_243>",
|
| 485 |
+
"lstrip": false,
|
| 486 |
+
"normalized": false,
|
| 487 |
+
"rstrip": false,
|
| 488 |
+
"single_word": false,
|
| 489 |
+
"special": true
|
| 490 |
+
},
|
| 491 |
+
"256057": {
|
| 492 |
+
"content": "<extra_id_242>",
|
| 493 |
+
"lstrip": false,
|
| 494 |
+
"normalized": false,
|
| 495 |
+
"rstrip": false,
|
| 496 |
+
"single_word": false,
|
| 497 |
+
"special": true
|
| 498 |
+
},
|
| 499 |
+
"256058": {
|
| 500 |
+
"content": "<extra_id_241>",
|
| 501 |
+
"lstrip": false,
|
| 502 |
+
"normalized": false,
|
| 503 |
+
"rstrip": false,
|
| 504 |
+
"single_word": false,
|
| 505 |
+
"special": true
|
| 506 |
+
},
|
| 507 |
+
"256059": {
|
| 508 |
+
"content": "<extra_id_240>",
|
| 509 |
+
"lstrip": false,
|
| 510 |
+
"normalized": false,
|
| 511 |
+
"rstrip": false,
|
| 512 |
+
"single_word": false,
|
| 513 |
+
"special": true
|
| 514 |
+
},
|
| 515 |
+
"256060": {
|
| 516 |
+
"content": "<extra_id_239>",
|
| 517 |
+
"lstrip": false,
|
| 518 |
+
"normalized": false,
|
| 519 |
+
"rstrip": false,
|
| 520 |
+
"single_word": false,
|
| 521 |
+
"special": true
|
| 522 |
+
},
|
| 523 |
+
"256061": {
|
| 524 |
+
"content": "<extra_id_238>",
|
| 525 |
+
"lstrip": false,
|
| 526 |
+
"normalized": false,
|
| 527 |
+
"rstrip": false,
|
| 528 |
+
"single_word": false,
|
| 529 |
+
"special": true
|
| 530 |
+
},
|
| 531 |
+
"256062": {
|
| 532 |
+
"content": "<extra_id_237>",
|
| 533 |
+
"lstrip": false,
|
| 534 |
+
"normalized": false,
|
| 535 |
+
"rstrip": false,
|
| 536 |
+
"single_word": false,
|
| 537 |
+
"special": true
|
| 538 |
+
},
|
| 539 |
+
"256063": {
|
| 540 |
+
"content": "<extra_id_236>",
|
| 541 |
+
"lstrip": false,
|
| 542 |
+
"normalized": false,
|
| 543 |
+
"rstrip": false,
|
| 544 |
+
"single_word": false,
|
| 545 |
+
"special": true
|
| 546 |
+
},
|
| 547 |
+
"256064": {
|
| 548 |
+
"content": "<extra_id_235>",
|
| 549 |
+
"lstrip": false,
|
| 550 |
+
"normalized": false,
|
| 551 |
+
"rstrip": false,
|
| 552 |
+
"single_word": false,
|
| 553 |
+
"special": true
|
| 554 |
+
},
|
| 555 |
+
"256065": {
|
| 556 |
+
"content": "<extra_id_234>",
|
| 557 |
+
"lstrip": false,
|
| 558 |
+
"normalized": false,
|
| 559 |
+
"rstrip": false,
|
| 560 |
+
"single_word": false,
|
| 561 |
+
"special": true
|
| 562 |
+
},
|
| 563 |
+
"256066": {
|
| 564 |
+
"content": "<extra_id_233>",
|
| 565 |
+
"lstrip": false,
|
| 566 |
+
"normalized": false,
|
| 567 |
+
"rstrip": false,
|
| 568 |
+
"single_word": false,
|
| 569 |
+
"special": true
|
| 570 |
+
},
|
| 571 |
+
"256067": {
|
| 572 |
+
"content": "<extra_id_232>",
|
| 573 |
+
"lstrip": false,
|
| 574 |
+
"normalized": false,
|
| 575 |
+
"rstrip": false,
|
| 576 |
+
"single_word": false,
|
| 577 |
+
"special": true
|
| 578 |
+
},
|
| 579 |
+
"256068": {
|
| 580 |
+
"content": "<extra_id_231>",
|
| 581 |
+
"lstrip": false,
|
| 582 |
+
"normalized": false,
|
| 583 |
+
"rstrip": false,
|
| 584 |
+
"single_word": false,
|
| 585 |
+
"special": true
|
| 586 |
+
},
|
| 587 |
+
"256069": {
|
| 588 |
+
"content": "<extra_id_230>",
|
| 589 |
+
"lstrip": false,
|
| 590 |
+
"normalized": false,
|
| 591 |
+
"rstrip": false,
|
| 592 |
+
"single_word": false,
|
| 593 |
+
"special": true
|
| 594 |
+
},
|
| 595 |
+
"256070": {
|
| 596 |
+
"content": "<extra_id_229>",
|
| 597 |
+
"lstrip": false,
|
| 598 |
+
"normalized": false,
|
| 599 |
+
"rstrip": false,
|
| 600 |
+
"single_word": false,
|
| 601 |
+
"special": true
|
| 602 |
+
},
|
| 603 |
+
"256071": {
|
| 604 |
+
"content": "<extra_id_228>",
|
| 605 |
+
"lstrip": false,
|
| 606 |
+
"normalized": false,
|
| 607 |
+
"rstrip": false,
|
| 608 |
+
"single_word": false,
|
| 609 |
+
"special": true
|
| 610 |
+
},
|
| 611 |
+
"256072": {
|
| 612 |
+
"content": "<extra_id_227>",
|
| 613 |
+
"lstrip": false,
|
| 614 |
+
"normalized": false,
|
| 615 |
+
"rstrip": false,
|
| 616 |
+
"single_word": false,
|
| 617 |
+
"special": true
|
| 618 |
+
},
|
| 619 |
+
"256073": {
|
| 620 |
+
"content": "<extra_id_226>",
|
| 621 |
+
"lstrip": false,
|
| 622 |
+
"normalized": false,
|
| 623 |
+
"rstrip": false,
|
| 624 |
+
"single_word": false,
|
| 625 |
+
"special": true
|
| 626 |
+
},
|
| 627 |
+
"256074": {
|
| 628 |
+
"content": "<extra_id_225>",
|
| 629 |
+
"lstrip": false,
|
| 630 |
+
"normalized": false,
|
| 631 |
+
"rstrip": false,
|
| 632 |
+
"single_word": false,
|
| 633 |
+
"special": true
|
| 634 |
+
},
|
| 635 |
+
"256075": {
|
| 636 |
+
"content": "<extra_id_224>",
|
| 637 |
+
"lstrip": false,
|
| 638 |
+
"normalized": false,
|
| 639 |
+
"rstrip": false,
|
| 640 |
+
"single_word": false,
|
| 641 |
+
"special": true
|
| 642 |
+
},
|
| 643 |
+
"256076": {
|
| 644 |
+
"content": "<extra_id_223>",
|
| 645 |
+
"lstrip": false,
|
| 646 |
+
"normalized": false,
|
| 647 |
+
"rstrip": false,
|
| 648 |
+
"single_word": false,
|
| 649 |
+
"special": true
|
| 650 |
+
},
|
| 651 |
+
"256077": {
|
| 652 |
+
"content": "<extra_id_222>",
|
| 653 |
+
"lstrip": false,
|
| 654 |
+
"normalized": false,
|
| 655 |
+
"rstrip": false,
|
| 656 |
+
"single_word": false,
|
| 657 |
+
"special": true
|
| 658 |
+
},
|
| 659 |
+
"256078": {
|
| 660 |
+
"content": "<extra_id_221>",
|
| 661 |
+
"lstrip": false,
|
| 662 |
+
"normalized": false,
|
| 663 |
+
"rstrip": false,
|
| 664 |
+
"single_word": false,
|
| 665 |
+
"special": true
|
| 666 |
+
},
|
| 667 |
+
"256079": {
|
| 668 |
+
"content": "<extra_id_220>",
|
| 669 |
+
"lstrip": false,
|
| 670 |
+
"normalized": false,
|
| 671 |
+
"rstrip": false,
|
| 672 |
+
"single_word": false,
|
| 673 |
+
"special": true
|
| 674 |
+
},
|
| 675 |
+
"256080": {
|
| 676 |
+
"content": "<extra_id_219>",
|
| 677 |
+
"lstrip": false,
|
| 678 |
+
"normalized": false,
|
| 679 |
+
"rstrip": false,
|
| 680 |
+
"single_word": false,
|
| 681 |
+
"special": true
|
| 682 |
+
},
|
| 683 |
+
"256081": {
|
| 684 |
+
"content": "<extra_id_218>",
|
| 685 |
+
"lstrip": false,
|
| 686 |
+
"normalized": false,
|
| 687 |
+
"rstrip": false,
|
| 688 |
+
"single_word": false,
|
| 689 |
+
"special": true
|
| 690 |
+
},
|
| 691 |
+
"256082": {
|
| 692 |
+
"content": "<extra_id_217>",
|
| 693 |
+
"lstrip": false,
|
| 694 |
+
"normalized": false,
|
| 695 |
+
"rstrip": false,
|
| 696 |
+
"single_word": false,
|
| 697 |
+
"special": true
|
| 698 |
+
},
|
| 699 |
+
"256083": {
|
| 700 |
+
"content": "<extra_id_216>",
|
| 701 |
+
"lstrip": false,
|
| 702 |
+
"normalized": false,
|
| 703 |
+
"rstrip": false,
|
| 704 |
+
"single_word": false,
|
| 705 |
+
"special": true
|
| 706 |
+
},
|
| 707 |
+
"256084": {
|
| 708 |
+
"content": "<extra_id_215>",
|
| 709 |
+
"lstrip": false,
|
| 710 |
+
"normalized": false,
|
| 711 |
+
"rstrip": false,
|
| 712 |
+
"single_word": false,
|
| 713 |
+
"special": true
|
| 714 |
+
},
|
| 715 |
+
"256085": {
|
| 716 |
+
"content": "<extra_id_214>",
|
| 717 |
+
"lstrip": false,
|
| 718 |
+
"normalized": false,
|
| 719 |
+
"rstrip": false,
|
| 720 |
+
"single_word": false,
|
| 721 |
+
"special": true
|
| 722 |
+
},
|
| 723 |
+
"256086": {
|
| 724 |
+
"content": "<extra_id_213>",
|
| 725 |
+
"lstrip": false,
|
| 726 |
+
"normalized": false,
|
| 727 |
+
"rstrip": false,
|
| 728 |
+
"single_word": false,
|
| 729 |
+
"special": true
|
| 730 |
+
},
|
| 731 |
+
"256087": {
|
| 732 |
+
"content": "<extra_id_212>",
|
| 733 |
+
"lstrip": false,
|
| 734 |
+
"normalized": false,
|
| 735 |
+
"rstrip": false,
|
| 736 |
+
"single_word": false,
|
| 737 |
+
"special": true
|
| 738 |
+
},
|
| 739 |
+
"256088": {
|
| 740 |
+
"content": "<extra_id_211>",
|
| 741 |
+
"lstrip": false,
|
| 742 |
+
"normalized": false,
|
| 743 |
+
"rstrip": false,
|
| 744 |
+
"single_word": false,
|
| 745 |
+
"special": true
|
| 746 |
+
},
|
| 747 |
+
"256089": {
|
| 748 |
+
"content": "<extra_id_210>",
|
| 749 |
+
"lstrip": false,
|
| 750 |
+
"normalized": false,
|
| 751 |
+
"rstrip": false,
|
| 752 |
+
"single_word": false,
|
| 753 |
+
"special": true
|
| 754 |
+
},
|
| 755 |
+
"256090": {
|
| 756 |
+
"content": "<extra_id_209>",
|
| 757 |
+
"lstrip": false,
|
| 758 |
+
"normalized": false,
|
| 759 |
+
"rstrip": false,
|
| 760 |
+
"single_word": false,
|
| 761 |
+
"special": true
|
| 762 |
+
},
|
| 763 |
+
"256091": {
|
| 764 |
+
"content": "<extra_id_208>",
|
| 765 |
+
"lstrip": false,
|
| 766 |
+
"normalized": false,
|
| 767 |
+
"rstrip": false,
|
| 768 |
+
"single_word": false,
|
| 769 |
+
"special": true
|
| 770 |
+
},
|
| 771 |
+
"256092": {
|
| 772 |
+
"content": "<extra_id_207>",
|
| 773 |
+
"lstrip": false,
|
| 774 |
+
"normalized": false,
|
| 775 |
+
"rstrip": false,
|
| 776 |
+
"single_word": false,
|
| 777 |
+
"special": true
|
| 778 |
+
},
|
| 779 |
+
"256093": {
|
| 780 |
+
"content": "<extra_id_206>",
|
| 781 |
+
"lstrip": false,
|
| 782 |
+
"normalized": false,
|
| 783 |
+
"rstrip": false,
|
| 784 |
+
"single_word": false,
|
| 785 |
+
"special": true
|
| 786 |
+
},
|
| 787 |
+
"256094": {
|
| 788 |
+
"content": "<extra_id_205>",
|
| 789 |
+
"lstrip": false,
|
| 790 |
+
"normalized": false,
|
| 791 |
+
"rstrip": false,
|
| 792 |
+
"single_word": false,
|
| 793 |
+
"special": true
|
| 794 |
+
},
|
| 795 |
+
"256095": {
|
| 796 |
+
"content": "<extra_id_204>",
|
| 797 |
+
"lstrip": false,
|
| 798 |
+
"normalized": false,
|
| 799 |
+
"rstrip": false,
|
| 800 |
+
"single_word": false,
|
| 801 |
+
"special": true
|
| 802 |
+
},
|
| 803 |
+
"256096": {
|
| 804 |
+
"content": "<extra_id_203>",
|
| 805 |
+
"lstrip": false,
|
| 806 |
+
"normalized": false,
|
| 807 |
+
"rstrip": false,
|
| 808 |
+
"single_word": false,
|
| 809 |
+
"special": true
|
| 810 |
+
},
|
| 811 |
+
"256097": {
|
| 812 |
+
"content": "<extra_id_202>",
|
| 813 |
+
"lstrip": false,
|
| 814 |
+
"normalized": false,
|
| 815 |
+
"rstrip": false,
|
| 816 |
+
"single_word": false,
|
| 817 |
+
"special": true
|
| 818 |
+
},
|
| 819 |
+
"256098": {
|
| 820 |
+
"content": "<extra_id_201>",
|
| 821 |
+
"lstrip": false,
|
| 822 |
+
"normalized": false,
|
| 823 |
+
"rstrip": false,
|
| 824 |
+
"single_word": false,
|
| 825 |
+
"special": true
|
| 826 |
+
},
|
| 827 |
+
"256099": {
|
| 828 |
+
"content": "<extra_id_200>",
|
| 829 |
+
"lstrip": false,
|
| 830 |
+
"normalized": false,
|
| 831 |
+
"rstrip": false,
|
| 832 |
+
"single_word": false,
|
| 833 |
+
"special": true
|
| 834 |
+
},
|
| 835 |
+
"256100": {
|
| 836 |
+
"content": "<extra_id_199>",
|
| 837 |
+
"lstrip": false,
|
| 838 |
+
"normalized": false,
|
| 839 |
+
"rstrip": false,
|
| 840 |
+
"single_word": false,
|
| 841 |
+
"special": true
|
| 842 |
+
},
|
| 843 |
+
"256101": {
|
| 844 |
+
"content": "<extra_id_198>",
|
| 845 |
+
"lstrip": false,
|
| 846 |
+
"normalized": false,
|
| 847 |
+
"rstrip": false,
|
| 848 |
+
"single_word": false,
|
| 849 |
+
"special": true
|
| 850 |
+
},
|
| 851 |
+
"256102": {
|
| 852 |
+
"content": "<extra_id_197>",
|
| 853 |
+
"lstrip": false,
|
| 854 |
+
"normalized": false,
|
| 855 |
+
"rstrip": false,
|
| 856 |
+
"single_word": false,
|
| 857 |
+
"special": true
|
| 858 |
+
},
|
| 859 |
+
"256103": {
|
| 860 |
+
"content": "<extra_id_196>",
|
| 861 |
+
"lstrip": false,
|
| 862 |
+
"normalized": false,
|
| 863 |
+
"rstrip": false,
|
| 864 |
+
"single_word": false,
|
| 865 |
+
"special": true
|
| 866 |
+
},
|
| 867 |
+
"256104": {
|
| 868 |
+
"content": "<extra_id_195>",
|
| 869 |
+
"lstrip": false,
|
| 870 |
+
"normalized": false,
|
| 871 |
+
"rstrip": false,
|
| 872 |
+
"single_word": false,
|
| 873 |
+
"special": true
|
| 874 |
+
},
|
| 875 |
+
"256105": {
|
| 876 |
+
"content": "<extra_id_194>",
|
| 877 |
+
"lstrip": false,
|
| 878 |
+
"normalized": false,
|
| 879 |
+
"rstrip": false,
|
| 880 |
+
"single_word": false,
|
| 881 |
+
"special": true
|
| 882 |
+
},
|
| 883 |
+
"256106": {
|
| 884 |
+
"content": "<extra_id_193>",
|
| 885 |
+
"lstrip": false,
|
| 886 |
+
"normalized": false,
|
| 887 |
+
"rstrip": false,
|
| 888 |
+
"single_word": false,
|
| 889 |
+
"special": true
|
| 890 |
+
},
|
| 891 |
+
"256107": {
|
| 892 |
+
"content": "<extra_id_192>",
|
| 893 |
+
"lstrip": false,
|
| 894 |
+
"normalized": false,
|
| 895 |
+
"rstrip": false,
|
| 896 |
+
"single_word": false,
|
| 897 |
+
"special": true
|
| 898 |
+
},
|
| 899 |
+
"256108": {
|
| 900 |
+
"content": "<extra_id_191>",
|
| 901 |
+
"lstrip": false,
|
| 902 |
+
"normalized": false,
|
| 903 |
+
"rstrip": false,
|
| 904 |
+
"single_word": false,
|
| 905 |
+
"special": true
|
| 906 |
+
},
|
| 907 |
+
"256109": {
|
| 908 |
+
"content": "<extra_id_190>",
|
| 909 |
+
"lstrip": false,
|
| 910 |
+
"normalized": false,
|
| 911 |
+
"rstrip": false,
|
| 912 |
+
"single_word": false,
|
| 913 |
+
"special": true
|
| 914 |
+
},
|
| 915 |
+
"256110": {
|
| 916 |
+
"content": "<extra_id_189>",
|
| 917 |
+
"lstrip": false,
|
| 918 |
+
"normalized": false,
|
| 919 |
+
"rstrip": false,
|
| 920 |
+
"single_word": false,
|
| 921 |
+
"special": true
|
| 922 |
+
},
|
| 923 |
+
"256111": {
|
| 924 |
+
"content": "<extra_id_188>",
|
| 925 |
+
"lstrip": false,
|
| 926 |
+
"normalized": false,
|
| 927 |
+
"rstrip": false,
|
| 928 |
+
"single_word": false,
|
| 929 |
+
"special": true
|
| 930 |
+
},
|
| 931 |
+
"256112": {
|
| 932 |
+
"content": "<extra_id_187>",
|
| 933 |
+
"lstrip": false,
|
| 934 |
+
"normalized": false,
|
| 935 |
+
"rstrip": false,
|
| 936 |
+
"single_word": false,
|
| 937 |
+
"special": true
|
| 938 |
+
},
|
| 939 |
+
"256113": {
|
| 940 |
+
"content": "<extra_id_186>",
|
| 941 |
+
"lstrip": false,
|
| 942 |
+
"normalized": false,
|
| 943 |
+
"rstrip": false,
|
| 944 |
+
"single_word": false,
|
| 945 |
+
"special": true
|
| 946 |
+
},
|
| 947 |
+
"256114": {
|
| 948 |
+
"content": "<extra_id_185>",
|
| 949 |
+
"lstrip": false,
|
| 950 |
+
"normalized": false,
|
| 951 |
+
"rstrip": false,
|
| 952 |
+
"single_word": false,
|
| 953 |
+
"special": true
|
| 954 |
+
},
|
| 955 |
+
"256115": {
|
| 956 |
+
"content": "<extra_id_184>",
|
| 957 |
+
"lstrip": false,
|
| 958 |
+
"normalized": false,
|
| 959 |
+
"rstrip": false,
|
| 960 |
+
"single_word": false,
|
| 961 |
+
"special": true
|
| 962 |
+
},
|
| 963 |
+
"256116": {
|
| 964 |
+
"content": "<extra_id_183>",
|
| 965 |
+
"lstrip": false,
|
| 966 |
+
"normalized": false,
|
| 967 |
+
"rstrip": false,
|
| 968 |
+
"single_word": false,
|
| 969 |
+
"special": true
|
| 970 |
+
},
|
| 971 |
+
"256117": {
|
| 972 |
+
"content": "<extra_id_182>",
|
| 973 |
+
"lstrip": false,
|
| 974 |
+
"normalized": false,
|
| 975 |
+
"rstrip": false,
|
| 976 |
+
"single_word": false,
|
| 977 |
+
"special": true
|
| 978 |
+
},
|
| 979 |
+
"256118": {
|
| 980 |
+
"content": "<extra_id_181>",
|
| 981 |
+
"lstrip": false,
|
| 982 |
+
"normalized": false,
|
| 983 |
+
"rstrip": false,
|
| 984 |
+
"single_word": false,
|
| 985 |
+
"special": true
|
| 986 |
+
},
|
| 987 |
+
"256119": {
|
| 988 |
+
"content": "<extra_id_180>",
|
| 989 |
+
"lstrip": false,
|
| 990 |
+
"normalized": false,
|
| 991 |
+
"rstrip": false,
|
| 992 |
+
"single_word": false,
|
| 993 |
+
"special": true
|
| 994 |
+
},
|
| 995 |
+
"256120": {
|
| 996 |
+
"content": "<extra_id_179>",
|
| 997 |
+
"lstrip": false,
|
| 998 |
+
"normalized": false,
|
| 999 |
+
"rstrip": false,
|
| 1000 |
+
"single_word": false,
|
| 1001 |
+
"special": true
|
| 1002 |
+
},
|
| 1003 |
+
"256121": {
|
| 1004 |
+
"content": "<extra_id_178>",
|
| 1005 |
+
"lstrip": false,
|
| 1006 |
+
"normalized": false,
|
| 1007 |
+
"rstrip": false,
|
| 1008 |
+
"single_word": false,
|
| 1009 |
+
"special": true
|
| 1010 |
+
},
|
| 1011 |
+
"256122": {
|
| 1012 |
+
"content": "<extra_id_177>",
|
| 1013 |
+
"lstrip": false,
|
| 1014 |
+
"normalized": false,
|
| 1015 |
+
"rstrip": false,
|
| 1016 |
+
"single_word": false,
|
| 1017 |
+
"special": true
|
| 1018 |
+
},
|
| 1019 |
+
"256123": {
|
| 1020 |
+
"content": "<extra_id_176>",
|
| 1021 |
+
"lstrip": false,
|
| 1022 |
+
"normalized": false,
|
| 1023 |
+
"rstrip": false,
|
| 1024 |
+
"single_word": false,
|
| 1025 |
+
"special": true
|
| 1026 |
+
},
|
| 1027 |
+
"256124": {
|
| 1028 |
+
"content": "<extra_id_175>",
|
| 1029 |
+
"lstrip": false,
|
| 1030 |
+
"normalized": false,
|
| 1031 |
+
"rstrip": false,
|
| 1032 |
+
"single_word": false,
|
| 1033 |
+
"special": true
|
| 1034 |
+
},
|
| 1035 |
+
"256125": {
|
| 1036 |
+
"content": "<extra_id_174>",
|
| 1037 |
+
"lstrip": false,
|
| 1038 |
+
"normalized": false,
|
| 1039 |
+
"rstrip": false,
|
| 1040 |
+
"single_word": false,
|
| 1041 |
+
"special": true
|
| 1042 |
+
},
|
| 1043 |
+
"256126": {
|
| 1044 |
+
"content": "<extra_id_173>",
|
| 1045 |
+
"lstrip": false,
|
| 1046 |
+
"normalized": false,
|
| 1047 |
+
"rstrip": false,
|
| 1048 |
+
"single_word": false,
|
| 1049 |
+
"special": true
|
| 1050 |
+
},
|
| 1051 |
+
"256127": {
|
| 1052 |
+
"content": "<extra_id_172>",
|
| 1053 |
+
"lstrip": false,
|
| 1054 |
+
"normalized": false,
|
| 1055 |
+
"rstrip": false,
|
| 1056 |
+
"single_word": false,
|
| 1057 |
+
"special": true
|
| 1058 |
+
},
|
| 1059 |
+
"256128": {
|
| 1060 |
+
"content": "<extra_id_171>",
|
| 1061 |
+
"lstrip": false,
|
| 1062 |
+
"normalized": false,
|
| 1063 |
+
"rstrip": false,
|
| 1064 |
+
"single_word": false,
|
| 1065 |
+
"special": true
|
| 1066 |
+
},
|
| 1067 |
+
"256129": {
|
| 1068 |
+
"content": "<extra_id_170>",
|
| 1069 |
+
"lstrip": false,
|
| 1070 |
+
"normalized": false,
|
| 1071 |
+
"rstrip": false,
|
| 1072 |
+
"single_word": false,
|
| 1073 |
+
"special": true
|
| 1074 |
+
},
|
| 1075 |
+
"256130": {
|
| 1076 |
+
"content": "<extra_id_169>",
|
| 1077 |
+
"lstrip": false,
|
| 1078 |
+
"normalized": false,
|
| 1079 |
+
"rstrip": false,
|
| 1080 |
+
"single_word": false,
|
| 1081 |
+
"special": true
|
| 1082 |
+
},
|
| 1083 |
+
"256131": {
|
| 1084 |
+
"content": "<extra_id_168>",
|
| 1085 |
+
"lstrip": false,
|
| 1086 |
+
"normalized": false,
|
| 1087 |
+
"rstrip": false,
|
| 1088 |
+
"single_word": false,
|
| 1089 |
+
"special": true
|
| 1090 |
+
},
|
| 1091 |
+
"256132": {
|
| 1092 |
+
"content": "<extra_id_167>",
|
| 1093 |
+
"lstrip": false,
|
| 1094 |
+
"normalized": false,
|
| 1095 |
+
"rstrip": false,
|
| 1096 |
+
"single_word": false,
|
| 1097 |
+
"special": true
|
| 1098 |
+
},
|
| 1099 |
+
"256133": {
|
| 1100 |
+
"content": "<extra_id_166>",
|
| 1101 |
+
"lstrip": false,
|
| 1102 |
+
"normalized": false,
|
| 1103 |
+
"rstrip": false,
|
| 1104 |
+
"single_word": false,
|
| 1105 |
+
"special": true
|
| 1106 |
+
},
|
| 1107 |
+
"256134": {
|
| 1108 |
+
"content": "<extra_id_165>",
|
| 1109 |
+
"lstrip": false,
|
| 1110 |
+
"normalized": false,
|
| 1111 |
+
"rstrip": false,
|
| 1112 |
+
"single_word": false,
|
| 1113 |
+
"special": true
|
| 1114 |
+
},
|
| 1115 |
+
"256135": {
|
| 1116 |
+
"content": "<extra_id_164>",
|
| 1117 |
+
"lstrip": false,
|
| 1118 |
+
"normalized": false,
|
| 1119 |
+
"rstrip": false,
|
| 1120 |
+
"single_word": false,
|
| 1121 |
+
"special": true
|
| 1122 |
+
},
|
| 1123 |
+
"256136": {
|
| 1124 |
+
"content": "<extra_id_163>",
|
| 1125 |
+
"lstrip": false,
|
| 1126 |
+
"normalized": false,
|
| 1127 |
+
"rstrip": false,
|
| 1128 |
+
"single_word": false,
|
| 1129 |
+
"special": true
|
| 1130 |
+
},
|
| 1131 |
+
"256137": {
|
| 1132 |
+
"content": "<extra_id_162>",
|
| 1133 |
+
"lstrip": false,
|
| 1134 |
+
"normalized": false,
|
| 1135 |
+
"rstrip": false,
|
| 1136 |
+
"single_word": false,
|
| 1137 |
+
"special": true
|
| 1138 |
+
},
|
| 1139 |
+
"256138": {
|
| 1140 |
+
"content": "<extra_id_161>",
|
| 1141 |
+
"lstrip": false,
|
| 1142 |
+
"normalized": false,
|
| 1143 |
+
"rstrip": false,
|
| 1144 |
+
"single_word": false,
|
| 1145 |
+
"special": true
|
| 1146 |
+
},
|
| 1147 |
+
"256139": {
|
| 1148 |
+
"content": "<extra_id_160>",
|
| 1149 |
+
"lstrip": false,
|
| 1150 |
+
"normalized": false,
|
| 1151 |
+
"rstrip": false,
|
| 1152 |
+
"single_word": false,
|
| 1153 |
+
"special": true
|
| 1154 |
+
},
|
| 1155 |
+
"256140": {
|
| 1156 |
+
"content": "<extra_id_159>",
|
| 1157 |
+
"lstrip": false,
|
| 1158 |
+
"normalized": false,
|
| 1159 |
+
"rstrip": false,
|
| 1160 |
+
"single_word": false,
|
| 1161 |
+
"special": true
|
| 1162 |
+
},
|
| 1163 |
+
"256141": {
|
| 1164 |
+
"content": "<extra_id_158>",
|
| 1165 |
+
"lstrip": false,
|
| 1166 |
+
"normalized": false,
|
| 1167 |
+
"rstrip": false,
|
| 1168 |
+
"single_word": false,
|
| 1169 |
+
"special": true
|
| 1170 |
+
},
|
| 1171 |
+
"256142": {
|
| 1172 |
+
"content": "<extra_id_157>",
|
| 1173 |
+
"lstrip": false,
|
| 1174 |
+
"normalized": false,
|
| 1175 |
+
"rstrip": false,
|
| 1176 |
+
"single_word": false,
|
| 1177 |
+
"special": true
|
| 1178 |
+
},
|
| 1179 |
+
"256143": {
|
| 1180 |
+
"content": "<extra_id_156>",
|
| 1181 |
+
"lstrip": false,
|
| 1182 |
+
"normalized": false,
|
| 1183 |
+
"rstrip": false,
|
| 1184 |
+
"single_word": false,
|
| 1185 |
+
"special": true
|
| 1186 |
+
},
|
| 1187 |
+
"256144": {
|
| 1188 |
+
"content": "<extra_id_155>",
|
| 1189 |
+
"lstrip": false,
|
| 1190 |
+
"normalized": false,
|
| 1191 |
+
"rstrip": false,
|
| 1192 |
+
"single_word": false,
|
| 1193 |
+
"special": true
|
| 1194 |
+
},
|
| 1195 |
+
"256145": {
|
| 1196 |
+
"content": "<extra_id_154>",
|
| 1197 |
+
"lstrip": false,
|
| 1198 |
+
"normalized": false,
|
| 1199 |
+
"rstrip": false,
|
| 1200 |
+
"single_word": false,
|
| 1201 |
+
"special": true
|
| 1202 |
+
},
|
| 1203 |
+
"256146": {
|
| 1204 |
+
"content": "<extra_id_153>",
|
| 1205 |
+
"lstrip": false,
|
| 1206 |
+
"normalized": false,
|
| 1207 |
+
"rstrip": false,
|
| 1208 |
+
"single_word": false,
|
| 1209 |
+
"special": true
|
| 1210 |
+
},
|
| 1211 |
+
"256147": {
|
| 1212 |
+
"content": "<extra_id_152>",
|
| 1213 |
+
"lstrip": false,
|
| 1214 |
+
"normalized": false,
|
| 1215 |
+
"rstrip": false,
|
| 1216 |
+
"single_word": false,
|
| 1217 |
+
"special": true
|
| 1218 |
+
},
|
| 1219 |
+
"256148": {
|
| 1220 |
+
"content": "<extra_id_151>",
|
| 1221 |
+
"lstrip": false,
|
| 1222 |
+
"normalized": false,
|
| 1223 |
+
"rstrip": false,
|
| 1224 |
+
"single_word": false,
|
| 1225 |
+
"special": true
|
| 1226 |
+
},
|
| 1227 |
+
"256149": {
|
| 1228 |
+
"content": "<extra_id_150>",
|
| 1229 |
+
"lstrip": false,
|
| 1230 |
+
"normalized": false,
|
| 1231 |
+
"rstrip": false,
|
| 1232 |
+
"single_word": false,
|
| 1233 |
+
"special": true
|
| 1234 |
+
},
|
| 1235 |
+
"256150": {
|
| 1236 |
+
"content": "<extra_id_149>",
|
| 1237 |
+
"lstrip": false,
|
| 1238 |
+
"normalized": false,
|
| 1239 |
+
"rstrip": false,
|
| 1240 |
+
"single_word": false,
|
| 1241 |
+
"special": true
|
| 1242 |
+
},
|
| 1243 |
+
"256151": {
|
| 1244 |
+
"content": "<extra_id_148>",
|
| 1245 |
+
"lstrip": false,
|
| 1246 |
+
"normalized": false,
|
| 1247 |
+
"rstrip": false,
|
| 1248 |
+
"single_word": false,
|
| 1249 |
+
"special": true
|
| 1250 |
+
},
|
| 1251 |
+
"256152": {
|
| 1252 |
+
"content": "<extra_id_147>",
|
| 1253 |
+
"lstrip": false,
|
| 1254 |
+
"normalized": false,
|
| 1255 |
+
"rstrip": false,
|
| 1256 |
+
"single_word": false,
|
| 1257 |
+
"special": true
|
| 1258 |
+
},
|
| 1259 |
+
"256153": {
|
| 1260 |
+
"content": "<extra_id_146>",
|
| 1261 |
+
"lstrip": false,
|
| 1262 |
+
"normalized": false,
|
| 1263 |
+
"rstrip": false,
|
| 1264 |
+
"single_word": false,
|
| 1265 |
+
"special": true
|
| 1266 |
+
},
|
| 1267 |
+
"256154": {
|
| 1268 |
+
"content": "<extra_id_145>",
|
| 1269 |
+
"lstrip": false,
|
| 1270 |
+
"normalized": false,
|
| 1271 |
+
"rstrip": false,
|
| 1272 |
+
"single_word": false,
|
| 1273 |
+
"special": true
|
| 1274 |
+
},
|
| 1275 |
+
"256155": {
|
| 1276 |
+
"content": "<extra_id_144>",
|
| 1277 |
+
"lstrip": false,
|
| 1278 |
+
"normalized": false,
|
| 1279 |
+
"rstrip": false,
|
| 1280 |
+
"single_word": false,
|
| 1281 |
+
"special": true
|
| 1282 |
+
},
|
| 1283 |
+
"256156": {
|
| 1284 |
+
"content": "<extra_id_143>",
|
| 1285 |
+
"lstrip": false,
|
| 1286 |
+
"normalized": false,
|
| 1287 |
+
"rstrip": false,
|
| 1288 |
+
"single_word": false,
|
| 1289 |
+
"special": true
|
| 1290 |
+
},
|
| 1291 |
+
"256157": {
|
| 1292 |
+
"content": "<extra_id_142>",
|
| 1293 |
+
"lstrip": false,
|
| 1294 |
+
"normalized": false,
|
| 1295 |
+
"rstrip": false,
|
| 1296 |
+
"single_word": false,
|
| 1297 |
+
"special": true
|
| 1298 |
+
},
|
| 1299 |
+
"256158": {
|
| 1300 |
+
"content": "<extra_id_141>",
|
| 1301 |
+
"lstrip": false,
|
| 1302 |
+
"normalized": false,
|
| 1303 |
+
"rstrip": false,
|
| 1304 |
+
"single_word": false,
|
| 1305 |
+
"special": true
|
| 1306 |
+
},
|
| 1307 |
+
"256159": {
|
| 1308 |
+
"content": "<extra_id_140>",
|
| 1309 |
+
"lstrip": false,
|
| 1310 |
+
"normalized": false,
|
| 1311 |
+
"rstrip": false,
|
| 1312 |
+
"single_word": false,
|
| 1313 |
+
"special": true
|
| 1314 |
+
},
|
| 1315 |
+
"256160": {
|
| 1316 |
+
"content": "<extra_id_139>",
|
| 1317 |
+
"lstrip": false,
|
| 1318 |
+
"normalized": false,
|
| 1319 |
+
"rstrip": false,
|
| 1320 |
+
"single_word": false,
|
| 1321 |
+
"special": true
|
| 1322 |
+
},
|
| 1323 |
+
"256161": {
|
| 1324 |
+
"content": "<extra_id_138>",
|
| 1325 |
+
"lstrip": false,
|
| 1326 |
+
"normalized": false,
|
| 1327 |
+
"rstrip": false,
|
| 1328 |
+
"single_word": false,
|
| 1329 |
+
"special": true
|
| 1330 |
+
},
|
| 1331 |
+
"256162": {
|
| 1332 |
+
"content": "<extra_id_137>",
|
| 1333 |
+
"lstrip": false,
|
| 1334 |
+
"normalized": false,
|
| 1335 |
+
"rstrip": false,
|
| 1336 |
+
"single_word": false,
|
| 1337 |
+
"special": true
|
| 1338 |
+
},
|
| 1339 |
+
"256163": {
|
| 1340 |
+
"content": "<extra_id_136>",
|
| 1341 |
+
"lstrip": false,
|
| 1342 |
+
"normalized": false,
|
| 1343 |
+
"rstrip": false,
|
| 1344 |
+
"single_word": false,
|
| 1345 |
+
"special": true
|
| 1346 |
+
},
|
| 1347 |
+
"256164": {
|
| 1348 |
+
"content": "<extra_id_135>",
|
| 1349 |
+
"lstrip": false,
|
| 1350 |
+
"normalized": false,
|
| 1351 |
+
"rstrip": false,
|
| 1352 |
+
"single_word": false,
|
| 1353 |
+
"special": true
|
| 1354 |
+
},
|
| 1355 |
+
"256165": {
|
| 1356 |
+
"content": "<extra_id_134>",
|
| 1357 |
+
"lstrip": false,
|
| 1358 |
+
"normalized": false,
|
| 1359 |
+
"rstrip": false,
|
| 1360 |
+
"single_word": false,
|
| 1361 |
+
"special": true
|
| 1362 |
+
},
|
| 1363 |
+
"256166": {
|
| 1364 |
+
"content": "<extra_id_133>",
|
| 1365 |
+
"lstrip": false,
|
| 1366 |
+
"normalized": false,
|
| 1367 |
+
"rstrip": false,
|
| 1368 |
+
"single_word": false,
|
| 1369 |
+
"special": true
|
| 1370 |
+
},
|
| 1371 |
+
"256167": {
|
| 1372 |
+
"content": "<extra_id_132>",
|
| 1373 |
+
"lstrip": false,
|
| 1374 |
+
"normalized": false,
|
| 1375 |
+
"rstrip": false,
|
| 1376 |
+
"single_word": false,
|
| 1377 |
+
"special": true
|
| 1378 |
+
},
|
| 1379 |
+
"256168": {
|
| 1380 |
+
"content": "<extra_id_131>",
|
| 1381 |
+
"lstrip": false,
|
| 1382 |
+
"normalized": false,
|
| 1383 |
+
"rstrip": false,
|
| 1384 |
+
"single_word": false,
|
| 1385 |
+
"special": true
|
| 1386 |
+
},
|
| 1387 |
+
"256169": {
|
| 1388 |
+
"content": "<extra_id_130>",
|
| 1389 |
+
"lstrip": false,
|
| 1390 |
+
"normalized": false,
|
| 1391 |
+
"rstrip": false,
|
| 1392 |
+
"single_word": false,
|
| 1393 |
+
"special": true
|
| 1394 |
+
},
|
| 1395 |
+
"256170": {
|
| 1396 |
+
"content": "<extra_id_129>",
|
| 1397 |
+
"lstrip": false,
|
| 1398 |
+
"normalized": false,
|
| 1399 |
+
"rstrip": false,
|
| 1400 |
+
"single_word": false,
|
| 1401 |
+
"special": true
|
| 1402 |
+
},
|
| 1403 |
+
"256171": {
|
| 1404 |
+
"content": "<extra_id_128>",
|
| 1405 |
+
"lstrip": false,
|
| 1406 |
+
"normalized": false,
|
| 1407 |
+
"rstrip": false,
|
| 1408 |
+
"single_word": false,
|
| 1409 |
+
"special": true
|
| 1410 |
+
},
|
| 1411 |
+
"256172": {
|
| 1412 |
+
"content": "<extra_id_127>",
|
| 1413 |
+
"lstrip": false,
|
| 1414 |
+
"normalized": false,
|
| 1415 |
+
"rstrip": false,
|
| 1416 |
+
"single_word": false,
|
| 1417 |
+
"special": true
|
| 1418 |
+
},
|
| 1419 |
+
"256173": {
|
| 1420 |
+
"content": "<extra_id_126>",
|
| 1421 |
+
"lstrip": false,
|
| 1422 |
+
"normalized": false,
|
| 1423 |
+
"rstrip": false,
|
| 1424 |
+
"single_word": false,
|
| 1425 |
+
"special": true
|
| 1426 |
+
},
|
| 1427 |
+
"256174": {
|
| 1428 |
+
"content": "<extra_id_125>",
|
| 1429 |
+
"lstrip": false,
|
| 1430 |
+
"normalized": false,
|
| 1431 |
+
"rstrip": false,
|
| 1432 |
+
"single_word": false,
|
| 1433 |
+
"special": true
|
| 1434 |
+
},
|
| 1435 |
+
"256175": {
|
| 1436 |
+
"content": "<extra_id_124>",
|
| 1437 |
+
"lstrip": false,
|
| 1438 |
+
"normalized": false,
|
| 1439 |
+
"rstrip": false,
|
| 1440 |
+
"single_word": false,
|
| 1441 |
+
"special": true
|
| 1442 |
+
},
|
| 1443 |
+
"256176": {
|
| 1444 |
+
"content": "<extra_id_123>",
|
| 1445 |
+
"lstrip": false,
|
| 1446 |
+
"normalized": false,
|
| 1447 |
+
"rstrip": false,
|
| 1448 |
+
"single_word": false,
|
| 1449 |
+
"special": true
|
| 1450 |
+
},
|
| 1451 |
+
"256177": {
|
| 1452 |
+
"content": "<extra_id_122>",
|
| 1453 |
+
"lstrip": false,
|
| 1454 |
+
"normalized": false,
|
| 1455 |
+
"rstrip": false,
|
| 1456 |
+
"single_word": false,
|
| 1457 |
+
"special": true
|
| 1458 |
+
},
|
| 1459 |
+
"256178": {
|
| 1460 |
+
"content": "<extra_id_121>",
|
| 1461 |
+
"lstrip": false,
|
| 1462 |
+
"normalized": false,
|
| 1463 |
+
"rstrip": false,
|
| 1464 |
+
"single_word": false,
|
| 1465 |
+
"special": true
|
| 1466 |
+
},
|
| 1467 |
+
"256179": {
|
| 1468 |
+
"content": "<extra_id_120>",
|
| 1469 |
+
"lstrip": false,
|
| 1470 |
+
"normalized": false,
|
| 1471 |
+
"rstrip": false,
|
| 1472 |
+
"single_word": false,
|
| 1473 |
+
"special": true
|
| 1474 |
+
},
|
| 1475 |
+
"256180": {
|
| 1476 |
+
"content": "<extra_id_119>",
|
| 1477 |
+
"lstrip": false,
|
| 1478 |
+
"normalized": false,
|
| 1479 |
+
"rstrip": false,
|
| 1480 |
+
"single_word": false,
|
| 1481 |
+
"special": true
|
| 1482 |
+
},
|
| 1483 |
+
"256181": {
|
| 1484 |
+
"content": "<extra_id_118>",
|
| 1485 |
+
"lstrip": false,
|
| 1486 |
+
"normalized": false,
|
| 1487 |
+
"rstrip": false,
|
| 1488 |
+
"single_word": false,
|
| 1489 |
+
"special": true
|
| 1490 |
+
},
|
| 1491 |
+
"256182": {
|
| 1492 |
+
"content": "<extra_id_117>",
|
| 1493 |
+
"lstrip": false,
|
| 1494 |
+
"normalized": false,
|
| 1495 |
+
"rstrip": false,
|
| 1496 |
+
"single_word": false,
|
| 1497 |
+
"special": true
|
| 1498 |
+
},
|
| 1499 |
+
"256183": {
|
| 1500 |
+
"content": "<extra_id_116>",
|
| 1501 |
+
"lstrip": false,
|
| 1502 |
+
"normalized": false,
|
| 1503 |
+
"rstrip": false,
|
| 1504 |
+
"single_word": false,
|
| 1505 |
+
"special": true
|
| 1506 |
+
},
|
| 1507 |
+
"256184": {
|
| 1508 |
+
"content": "<extra_id_115>",
|
| 1509 |
+
"lstrip": false,
|
| 1510 |
+
"normalized": false,
|
| 1511 |
+
"rstrip": false,
|
| 1512 |
+
"single_word": false,
|
| 1513 |
+
"special": true
|
| 1514 |
+
},
|
| 1515 |
+
"256185": {
|
| 1516 |
+
"content": "<extra_id_114>",
|
| 1517 |
+
"lstrip": false,
|
| 1518 |
+
"normalized": false,
|
| 1519 |
+
"rstrip": false,
|
| 1520 |
+
"single_word": false,
|
| 1521 |
+
"special": true
|
| 1522 |
+
},
|
| 1523 |
+
"256186": {
|
| 1524 |
+
"content": "<extra_id_113>",
|
| 1525 |
+
"lstrip": false,
|
| 1526 |
+
"normalized": false,
|
| 1527 |
+
"rstrip": false,
|
| 1528 |
+
"single_word": false,
|
| 1529 |
+
"special": true
|
| 1530 |
+
},
|
| 1531 |
+
"256187": {
|
| 1532 |
+
"content": "<extra_id_112>",
|
| 1533 |
+
"lstrip": false,
|
| 1534 |
+
"normalized": false,
|
| 1535 |
+
"rstrip": false,
|
| 1536 |
+
"single_word": false,
|
| 1537 |
+
"special": true
|
| 1538 |
+
},
|
| 1539 |
+
"256188": {
|
| 1540 |
+
"content": "<extra_id_111>",
|
| 1541 |
+
"lstrip": false,
|
| 1542 |
+
"normalized": false,
|
| 1543 |
+
"rstrip": false,
|
| 1544 |
+
"single_word": false,
|
| 1545 |
+
"special": true
|
| 1546 |
+
},
|
| 1547 |
+
"256189": {
|
| 1548 |
+
"content": "<extra_id_110>",
|
| 1549 |
+
"lstrip": false,
|
| 1550 |
+
"normalized": false,
|
| 1551 |
+
"rstrip": false,
|
| 1552 |
+
"single_word": false,
|
| 1553 |
+
"special": true
|
| 1554 |
+
},
|
| 1555 |
+
"256190": {
|
| 1556 |
+
"content": "<extra_id_109>",
|
| 1557 |
+
"lstrip": false,
|
| 1558 |
+
"normalized": false,
|
| 1559 |
+
"rstrip": false,
|
| 1560 |
+
"single_word": false,
|
| 1561 |
+
"special": true
|
| 1562 |
+
},
|
| 1563 |
+
"256191": {
|
| 1564 |
+
"content": "<extra_id_108>",
|
| 1565 |
+
"lstrip": false,
|
| 1566 |
+
"normalized": false,
|
| 1567 |
+
"rstrip": false,
|
| 1568 |
+
"single_word": false,
|
| 1569 |
+
"special": true
|
| 1570 |
+
},
|
| 1571 |
+
"256192": {
|
| 1572 |
+
"content": "<extra_id_107>",
|
| 1573 |
+
"lstrip": false,
|
| 1574 |
+
"normalized": false,
|
| 1575 |
+
"rstrip": false,
|
| 1576 |
+
"single_word": false,
|
| 1577 |
+
"special": true
|
| 1578 |
+
},
|
| 1579 |
+
"256193": {
|
| 1580 |
+
"content": "<extra_id_106>",
|
| 1581 |
+
"lstrip": false,
|
| 1582 |
+
"normalized": false,
|
| 1583 |
+
"rstrip": false,
|
| 1584 |
+
"single_word": false,
|
| 1585 |
+
"special": true
|
| 1586 |
+
},
|
| 1587 |
+
"256194": {
|
| 1588 |
+
"content": "<extra_id_105>",
|
| 1589 |
+
"lstrip": false,
|
| 1590 |
+
"normalized": false,
|
| 1591 |
+
"rstrip": false,
|
| 1592 |
+
"single_word": false,
|
| 1593 |
+
"special": true
|
| 1594 |
+
},
|
| 1595 |
+
"256195": {
|
| 1596 |
+
"content": "<extra_id_104>",
|
| 1597 |
+
"lstrip": false,
|
| 1598 |
+
"normalized": false,
|
| 1599 |
+
"rstrip": false,
|
| 1600 |
+
"single_word": false,
|
| 1601 |
+
"special": true
|
| 1602 |
+
},
|
| 1603 |
+
"256196": {
|
| 1604 |
+
"content": "<extra_id_103>",
|
| 1605 |
+
"lstrip": false,
|
| 1606 |
+
"normalized": false,
|
| 1607 |
+
"rstrip": false,
|
| 1608 |
+
"single_word": false,
|
| 1609 |
+
"special": true
|
| 1610 |
+
},
|
| 1611 |
+
"256197": {
|
| 1612 |
+
"content": "<extra_id_102>",
|
| 1613 |
+
"lstrip": false,
|
| 1614 |
+
"normalized": false,
|
| 1615 |
+
"rstrip": false,
|
| 1616 |
+
"single_word": false,
|
| 1617 |
+
"special": true
|
| 1618 |
+
},
|
| 1619 |
+
"256198": {
|
| 1620 |
+
"content": "<extra_id_101>",
|
| 1621 |
+
"lstrip": false,
|
| 1622 |
+
"normalized": false,
|
| 1623 |
+
"rstrip": false,
|
| 1624 |
+
"single_word": false,
|
| 1625 |
+
"special": true
|
| 1626 |
+
},
|
| 1627 |
+
"256199": {
|
| 1628 |
+
"content": "<extra_id_100>",
|
| 1629 |
+
"lstrip": false,
|
| 1630 |
+
"normalized": false,
|
| 1631 |
+
"rstrip": false,
|
| 1632 |
+
"single_word": false,
|
| 1633 |
+
"special": true
|
| 1634 |
+
},
|
| 1635 |
+
"256200": {
|
| 1636 |
+
"content": "<extra_id_99>",
|
| 1637 |
+
"lstrip": false,
|
| 1638 |
+
"normalized": false,
|
| 1639 |
+
"rstrip": false,
|
| 1640 |
+
"single_word": false,
|
| 1641 |
+
"special": true
|
| 1642 |
+
},
|
| 1643 |
+
"256201": {
|
| 1644 |
+
"content": "<extra_id_98>",
|
| 1645 |
+
"lstrip": false,
|
| 1646 |
+
"normalized": false,
|
| 1647 |
+
"rstrip": false,
|
| 1648 |
+
"single_word": false,
|
| 1649 |
+
"special": true
|
| 1650 |
+
},
|
| 1651 |
+
"256202": {
|
| 1652 |
+
"content": "<extra_id_97>",
|
| 1653 |
+
"lstrip": false,
|
| 1654 |
+
"normalized": false,
|
| 1655 |
+
"rstrip": false,
|
| 1656 |
+
"single_word": false,
|
| 1657 |
+
"special": true
|
| 1658 |
+
},
|
| 1659 |
+
"256203": {
|
| 1660 |
+
"content": "<extra_id_96>",
|
| 1661 |
+
"lstrip": false,
|
| 1662 |
+
"normalized": false,
|
| 1663 |
+
"rstrip": false,
|
| 1664 |
+
"single_word": false,
|
| 1665 |
+
"special": true
|
| 1666 |
+
},
|
| 1667 |
+
"256204": {
|
| 1668 |
+
"content": "<extra_id_95>",
|
| 1669 |
+
"lstrip": false,
|
| 1670 |
+
"normalized": false,
|
| 1671 |
+
"rstrip": false,
|
| 1672 |
+
"single_word": false,
|
| 1673 |
+
"special": true
|
| 1674 |
+
},
|
| 1675 |
+
"256205": {
|
| 1676 |
+
"content": "<extra_id_94>",
|
| 1677 |
+
"lstrip": false,
|
| 1678 |
+
"normalized": false,
|
| 1679 |
+
"rstrip": false,
|
| 1680 |
+
"single_word": false,
|
| 1681 |
+
"special": true
|
| 1682 |
+
},
|
| 1683 |
+
"256206": {
|
| 1684 |
+
"content": "<extra_id_93>",
|
| 1685 |
+
"lstrip": false,
|
| 1686 |
+
"normalized": false,
|
| 1687 |
+
"rstrip": false,
|
| 1688 |
+
"single_word": false,
|
| 1689 |
+
"special": true
|
| 1690 |
+
},
|
| 1691 |
+
"256207": {
|
| 1692 |
+
"content": "<extra_id_92>",
|
| 1693 |
+
"lstrip": false,
|
| 1694 |
+
"normalized": false,
|
| 1695 |
+
"rstrip": false,
|
| 1696 |
+
"single_word": false,
|
| 1697 |
+
"special": true
|
| 1698 |
+
},
|
| 1699 |
+
"256208": {
|
| 1700 |
+
"content": "<extra_id_91>",
|
| 1701 |
+
"lstrip": false,
|
| 1702 |
+
"normalized": false,
|
| 1703 |
+
"rstrip": false,
|
| 1704 |
+
"single_word": false,
|
| 1705 |
+
"special": true
|
| 1706 |
+
},
|
| 1707 |
+
"256209": {
|
| 1708 |
+
"content": "<extra_id_90>",
|
| 1709 |
+
"lstrip": false,
|
| 1710 |
+
"normalized": false,
|
| 1711 |
+
"rstrip": false,
|
| 1712 |
+
"single_word": false,
|
| 1713 |
+
"special": true
|
| 1714 |
+
},
|
| 1715 |
+
"256210": {
|
| 1716 |
+
"content": "<extra_id_89>",
|
| 1717 |
+
"lstrip": false,
|
| 1718 |
+
"normalized": false,
|
| 1719 |
+
"rstrip": false,
|
| 1720 |
+
"single_word": false,
|
| 1721 |
+
"special": true
|
| 1722 |
+
},
|
| 1723 |
+
"256211": {
|
| 1724 |
+
"content": "<extra_id_88>",
|
| 1725 |
+
"lstrip": false,
|
| 1726 |
+
"normalized": false,
|
| 1727 |
+
"rstrip": false,
|
| 1728 |
+
"single_word": false,
|
| 1729 |
+
"special": true
|
| 1730 |
+
},
|
| 1731 |
+
"256212": {
|
| 1732 |
+
"content": "<extra_id_87>",
|
| 1733 |
+
"lstrip": false,
|
| 1734 |
+
"normalized": false,
|
| 1735 |
+
"rstrip": false,
|
| 1736 |
+
"single_word": false,
|
| 1737 |
+
"special": true
|
| 1738 |
+
},
|
| 1739 |
+
"256213": {
|
| 1740 |
+
"content": "<extra_id_86>",
|
| 1741 |
+
"lstrip": false,
|
| 1742 |
+
"normalized": false,
|
| 1743 |
+
"rstrip": false,
|
| 1744 |
+
"single_word": false,
|
| 1745 |
+
"special": true
|
| 1746 |
+
},
|
| 1747 |
+
"256214": {
|
| 1748 |
+
"content": "<extra_id_85>",
|
| 1749 |
+
"lstrip": false,
|
| 1750 |
+
"normalized": false,
|
| 1751 |
+
"rstrip": false,
|
| 1752 |
+
"single_word": false,
|
| 1753 |
+
"special": true
|
| 1754 |
+
},
|
| 1755 |
+
"256215": {
|
| 1756 |
+
"content": "<extra_id_84>",
|
| 1757 |
+
"lstrip": false,
|
| 1758 |
+
"normalized": false,
|
| 1759 |
+
"rstrip": false,
|
| 1760 |
+
"single_word": false,
|
| 1761 |
+
"special": true
|
| 1762 |
+
},
|
| 1763 |
+
"256216": {
|
| 1764 |
+
"content": "<extra_id_83>",
|
| 1765 |
+
"lstrip": false,
|
| 1766 |
+
"normalized": false,
|
| 1767 |
+
"rstrip": false,
|
| 1768 |
+
"single_word": false,
|
| 1769 |
+
"special": true
|
| 1770 |
+
},
|
| 1771 |
+
"256217": {
|
| 1772 |
+
"content": "<extra_id_82>",
|
| 1773 |
+
"lstrip": false,
|
| 1774 |
+
"normalized": false,
|
| 1775 |
+
"rstrip": false,
|
| 1776 |
+
"single_word": false,
|
| 1777 |
+
"special": true
|
| 1778 |
+
},
|
| 1779 |
+
"256218": {
|
| 1780 |
+
"content": "<extra_id_81>",
|
| 1781 |
+
"lstrip": false,
|
| 1782 |
+
"normalized": false,
|
| 1783 |
+
"rstrip": false,
|
| 1784 |
+
"single_word": false,
|
| 1785 |
+
"special": true
|
| 1786 |
+
},
|
| 1787 |
+
"256219": {
|
| 1788 |
+
"content": "<extra_id_80>",
|
| 1789 |
+
"lstrip": false,
|
| 1790 |
+
"normalized": false,
|
| 1791 |
+
"rstrip": false,
|
| 1792 |
+
"single_word": false,
|
| 1793 |
+
"special": true
|
| 1794 |
+
},
|
| 1795 |
+
"256220": {
|
| 1796 |
+
"content": "<extra_id_79>",
|
| 1797 |
+
"lstrip": false,
|
| 1798 |
+
"normalized": false,
|
| 1799 |
+
"rstrip": false,
|
| 1800 |
+
"single_word": false,
|
| 1801 |
+
"special": true
|
| 1802 |
+
},
|
| 1803 |
+
"256221": {
|
| 1804 |
+
"content": "<extra_id_78>",
|
| 1805 |
+
"lstrip": false,
|
| 1806 |
+
"normalized": false,
|
| 1807 |
+
"rstrip": false,
|
| 1808 |
+
"single_word": false,
|
| 1809 |
+
"special": true
|
| 1810 |
+
},
|
| 1811 |
+
"256222": {
|
| 1812 |
+
"content": "<extra_id_77>",
|
| 1813 |
+
"lstrip": false,
|
| 1814 |
+
"normalized": false,
|
| 1815 |
+
"rstrip": false,
|
| 1816 |
+
"single_word": false,
|
| 1817 |
+
"special": true
|
| 1818 |
+
},
|
| 1819 |
+
"256223": {
|
| 1820 |
+
"content": "<extra_id_76>",
|
| 1821 |
+
"lstrip": false,
|
| 1822 |
+
"normalized": false,
|
| 1823 |
+
"rstrip": false,
|
| 1824 |
+
"single_word": false,
|
| 1825 |
+
"special": true
|
| 1826 |
+
},
|
| 1827 |
+
"256224": {
|
| 1828 |
+
"content": "<extra_id_75>",
|
| 1829 |
+
"lstrip": false,
|
| 1830 |
+
"normalized": false,
|
| 1831 |
+
"rstrip": false,
|
| 1832 |
+
"single_word": false,
|
| 1833 |
+
"special": true
|
| 1834 |
+
},
|
| 1835 |
+
"256225": {
|
| 1836 |
+
"content": "<extra_id_74>",
|
| 1837 |
+
"lstrip": false,
|
| 1838 |
+
"normalized": false,
|
| 1839 |
+
"rstrip": false,
|
| 1840 |
+
"single_word": false,
|
| 1841 |
+
"special": true
|
| 1842 |
+
},
|
| 1843 |
+
"256226": {
|
| 1844 |
+
"content": "<extra_id_73>",
|
| 1845 |
+
"lstrip": false,
|
| 1846 |
+
"normalized": false,
|
| 1847 |
+
"rstrip": false,
|
| 1848 |
+
"single_word": false,
|
| 1849 |
+
"special": true
|
| 1850 |
+
},
|
| 1851 |
+
"256227": {
|
| 1852 |
+
"content": "<extra_id_72>",
|
| 1853 |
+
"lstrip": false,
|
| 1854 |
+
"normalized": false,
|
| 1855 |
+
"rstrip": false,
|
| 1856 |
+
"single_word": false,
|
| 1857 |
+
"special": true
|
| 1858 |
+
},
|
| 1859 |
+
"256228": {
|
| 1860 |
+
"content": "<extra_id_71>",
|
| 1861 |
+
"lstrip": false,
|
| 1862 |
+
"normalized": false,
|
| 1863 |
+
"rstrip": false,
|
| 1864 |
+
"single_word": false,
|
| 1865 |
+
"special": true
|
| 1866 |
+
},
|
| 1867 |
+
"256229": {
|
| 1868 |
+
"content": "<extra_id_70>",
|
| 1869 |
+
"lstrip": false,
|
| 1870 |
+
"normalized": false,
|
| 1871 |
+
"rstrip": false,
|
| 1872 |
+
"single_word": false,
|
| 1873 |
+
"special": true
|
| 1874 |
+
},
|
| 1875 |
+
"256230": {
|
| 1876 |
+
"content": "<extra_id_69>",
|
| 1877 |
+
"lstrip": false,
|
| 1878 |
+
"normalized": false,
|
| 1879 |
+
"rstrip": false,
|
| 1880 |
+
"single_word": false,
|
| 1881 |
+
"special": true
|
| 1882 |
+
},
|
| 1883 |
+
"256231": {
|
| 1884 |
+
"content": "<extra_id_68>",
|
| 1885 |
+
"lstrip": false,
|
| 1886 |
+
"normalized": false,
|
| 1887 |
+
"rstrip": false,
|
| 1888 |
+
"single_word": false,
|
| 1889 |
+
"special": true
|
| 1890 |
+
},
|
| 1891 |
+
"256232": {
|
| 1892 |
+
"content": "<extra_id_67>",
|
| 1893 |
+
"lstrip": false,
|
| 1894 |
+
"normalized": false,
|
| 1895 |
+
"rstrip": false,
|
| 1896 |
+
"single_word": false,
|
| 1897 |
+
"special": true
|
| 1898 |
+
},
|
| 1899 |
+
"256233": {
|
| 1900 |
+
"content": "<extra_id_66>",
|
| 1901 |
+
"lstrip": false,
|
| 1902 |
+
"normalized": false,
|
| 1903 |
+
"rstrip": false,
|
| 1904 |
+
"single_word": false,
|
| 1905 |
+
"special": true
|
| 1906 |
+
},
|
| 1907 |
+
"256234": {
|
| 1908 |
+
"content": "<extra_id_65>",
|
| 1909 |
+
"lstrip": false,
|
| 1910 |
+
"normalized": false,
|
| 1911 |
+
"rstrip": false,
|
| 1912 |
+
"single_word": false,
|
| 1913 |
+
"special": true
|
| 1914 |
+
},
|
| 1915 |
+
"256235": {
|
| 1916 |
+
"content": "<extra_id_64>",
|
| 1917 |
+
"lstrip": false,
|
| 1918 |
+
"normalized": false,
|
| 1919 |
+
"rstrip": false,
|
| 1920 |
+
"single_word": false,
|
| 1921 |
+
"special": true
|
| 1922 |
+
},
|
| 1923 |
+
"256236": {
|
| 1924 |
+
"content": "<extra_id_63>",
|
| 1925 |
+
"lstrip": false,
|
| 1926 |
+
"normalized": false,
|
| 1927 |
+
"rstrip": false,
|
| 1928 |
+
"single_word": false,
|
| 1929 |
+
"special": true
|
| 1930 |
+
},
|
| 1931 |
+
"256237": {
|
| 1932 |
+
"content": "<extra_id_62>",
|
| 1933 |
+
"lstrip": false,
|
| 1934 |
+
"normalized": false,
|
| 1935 |
+
"rstrip": false,
|
| 1936 |
+
"single_word": false,
|
| 1937 |
+
"special": true
|
| 1938 |
+
},
|
| 1939 |
+
"256238": {
|
| 1940 |
+
"content": "<extra_id_61>",
|
| 1941 |
+
"lstrip": false,
|
| 1942 |
+
"normalized": false,
|
| 1943 |
+
"rstrip": false,
|
| 1944 |
+
"single_word": false,
|
| 1945 |
+
"special": true
|
| 1946 |
+
},
|
| 1947 |
+
"256239": {
|
| 1948 |
+
"content": "<extra_id_60>",
|
| 1949 |
+
"lstrip": false,
|
| 1950 |
+
"normalized": false,
|
| 1951 |
+
"rstrip": false,
|
| 1952 |
+
"single_word": false,
|
| 1953 |
+
"special": true
|
| 1954 |
+
},
|
| 1955 |
+
"256240": {
|
| 1956 |
+
"content": "<extra_id_59>",
|
| 1957 |
+
"lstrip": false,
|
| 1958 |
+
"normalized": false,
|
| 1959 |
+
"rstrip": false,
|
| 1960 |
+
"single_word": false,
|
| 1961 |
+
"special": true
|
| 1962 |
+
},
|
| 1963 |
+
"256241": {
|
| 1964 |
+
"content": "<extra_id_58>",
|
| 1965 |
+
"lstrip": false,
|
| 1966 |
+
"normalized": false,
|
| 1967 |
+
"rstrip": false,
|
| 1968 |
+
"single_word": false,
|
| 1969 |
+
"special": true
|
| 1970 |
+
},
|
| 1971 |
+
"256242": {
|
| 1972 |
+
"content": "<extra_id_57>",
|
| 1973 |
+
"lstrip": false,
|
| 1974 |
+
"normalized": false,
|
| 1975 |
+
"rstrip": false,
|
| 1976 |
+
"single_word": false,
|
| 1977 |
+
"special": true
|
| 1978 |
+
},
|
| 1979 |
+
"256243": {
|
| 1980 |
+
"content": "<extra_id_56>",
|
| 1981 |
+
"lstrip": false,
|
| 1982 |
+
"normalized": false,
|
| 1983 |
+
"rstrip": false,
|
| 1984 |
+
"single_word": false,
|
| 1985 |
+
"special": true
|
| 1986 |
+
},
|
| 1987 |
+
"256244": {
|
| 1988 |
+
"content": "<extra_id_55>",
|
| 1989 |
+
"lstrip": false,
|
| 1990 |
+
"normalized": false,
|
| 1991 |
+
"rstrip": false,
|
| 1992 |
+
"single_word": false,
|
| 1993 |
+
"special": true
|
| 1994 |
+
},
|
| 1995 |
+
"256245": {
|
| 1996 |
+
"content": "<extra_id_54>",
|
| 1997 |
+
"lstrip": false,
|
| 1998 |
+
"normalized": false,
|
| 1999 |
+
"rstrip": false,
|
| 2000 |
+
"single_word": false,
|
| 2001 |
+
"special": true
|
| 2002 |
+
},
|
| 2003 |
+
"256246": {
|
| 2004 |
+
"content": "<extra_id_53>",
|
| 2005 |
+
"lstrip": false,
|
| 2006 |
+
"normalized": false,
|
| 2007 |
+
"rstrip": false,
|
| 2008 |
+
"single_word": false,
|
| 2009 |
+
"special": true
|
| 2010 |
+
},
|
| 2011 |
+
"256247": {
|
| 2012 |
+
"content": "<extra_id_52>",
|
| 2013 |
+
"lstrip": false,
|
| 2014 |
+
"normalized": false,
|
| 2015 |
+
"rstrip": false,
|
| 2016 |
+
"single_word": false,
|
| 2017 |
+
"special": true
|
| 2018 |
+
},
|
| 2019 |
+
"256248": {
|
| 2020 |
+
"content": "<extra_id_51>",
|
| 2021 |
+
"lstrip": false,
|
| 2022 |
+
"normalized": false,
|
| 2023 |
+
"rstrip": false,
|
| 2024 |
+
"single_word": false,
|
| 2025 |
+
"special": true
|
| 2026 |
+
},
|
| 2027 |
+
"256249": {
|
| 2028 |
+
"content": "<extra_id_50>",
|
| 2029 |
+
"lstrip": false,
|
| 2030 |
+
"normalized": false,
|
| 2031 |
+
"rstrip": false,
|
| 2032 |
+
"single_word": false,
|
| 2033 |
+
"special": true
|
| 2034 |
+
},
|
| 2035 |
+
"256250": {
|
| 2036 |
+
"content": "<extra_id_49>",
|
| 2037 |
+
"lstrip": false,
|
| 2038 |
+
"normalized": false,
|
| 2039 |
+
"rstrip": false,
|
| 2040 |
+
"single_word": false,
|
| 2041 |
+
"special": true
|
| 2042 |
+
},
|
| 2043 |
+
"256251": {
|
| 2044 |
+
"content": "<extra_id_48>",
|
| 2045 |
+
"lstrip": false,
|
| 2046 |
+
"normalized": false,
|
| 2047 |
+
"rstrip": false,
|
| 2048 |
+
"single_word": false,
|
| 2049 |
+
"special": true
|
| 2050 |
+
},
|
| 2051 |
+
"256252": {
|
| 2052 |
+
"content": "<extra_id_47>",
|
| 2053 |
+
"lstrip": false,
|
| 2054 |
+
"normalized": false,
|
| 2055 |
+
"rstrip": false,
|
| 2056 |
+
"single_word": false,
|
| 2057 |
+
"special": true
|
| 2058 |
+
},
|
| 2059 |
+
"256253": {
|
| 2060 |
+
"content": "<extra_id_46>",
|
| 2061 |
+
"lstrip": false,
|
| 2062 |
+
"normalized": false,
|
| 2063 |
+
"rstrip": false,
|
| 2064 |
+
"single_word": false,
|
| 2065 |
+
"special": true
|
| 2066 |
+
},
|
| 2067 |
+
"256254": {
|
| 2068 |
+
"content": "<extra_id_45>",
|
| 2069 |
+
"lstrip": false,
|
| 2070 |
+
"normalized": false,
|
| 2071 |
+
"rstrip": false,
|
| 2072 |
+
"single_word": false,
|
| 2073 |
+
"special": true
|
| 2074 |
+
},
|
| 2075 |
+
"256255": {
|
| 2076 |
+
"content": "<extra_id_44>",
|
| 2077 |
+
"lstrip": false,
|
| 2078 |
+
"normalized": false,
|
| 2079 |
+
"rstrip": false,
|
| 2080 |
+
"single_word": false,
|
| 2081 |
+
"special": true
|
| 2082 |
+
},
|
| 2083 |
+
"256256": {
|
| 2084 |
+
"content": "<extra_id_43>",
|
| 2085 |
+
"lstrip": false,
|
| 2086 |
+
"normalized": false,
|
| 2087 |
+
"rstrip": false,
|
| 2088 |
+
"single_word": false,
|
| 2089 |
+
"special": true
|
| 2090 |
+
},
|
| 2091 |
+
"256257": {
|
| 2092 |
+
"content": "<extra_id_42>",
|
| 2093 |
+
"lstrip": false,
|
| 2094 |
+
"normalized": false,
|
| 2095 |
+
"rstrip": false,
|
| 2096 |
+
"single_word": false,
|
| 2097 |
+
"special": true
|
| 2098 |
+
},
|
| 2099 |
+
"256258": {
|
| 2100 |
+
"content": "<extra_id_41>",
|
| 2101 |
+
"lstrip": false,
|
| 2102 |
+
"normalized": false,
|
| 2103 |
+
"rstrip": false,
|
| 2104 |
+
"single_word": false,
|
| 2105 |
+
"special": true
|
| 2106 |
+
},
|
| 2107 |
+
"256259": {
|
| 2108 |
+
"content": "<extra_id_40>",
|
| 2109 |
+
"lstrip": false,
|
| 2110 |
+
"normalized": false,
|
| 2111 |
+
"rstrip": false,
|
| 2112 |
+
"single_word": false,
|
| 2113 |
+
"special": true
|
| 2114 |
+
},
|
| 2115 |
+
"256260": {
|
| 2116 |
+
"content": "<extra_id_39>",
|
| 2117 |
+
"lstrip": false,
|
| 2118 |
+
"normalized": false,
|
| 2119 |
+
"rstrip": false,
|
| 2120 |
+
"single_word": false,
|
| 2121 |
+
"special": true
|
| 2122 |
+
},
|
| 2123 |
+
"256261": {
|
| 2124 |
+
"content": "<extra_id_38>",
|
| 2125 |
+
"lstrip": false,
|
| 2126 |
+
"normalized": false,
|
| 2127 |
+
"rstrip": false,
|
| 2128 |
+
"single_word": false,
|
| 2129 |
+
"special": true
|
| 2130 |
+
},
|
| 2131 |
+
"256262": {
|
| 2132 |
+
"content": "<extra_id_37>",
|
| 2133 |
+
"lstrip": false,
|
| 2134 |
+
"normalized": false,
|
| 2135 |
+
"rstrip": false,
|
| 2136 |
+
"single_word": false,
|
| 2137 |
+
"special": true
|
| 2138 |
+
},
|
| 2139 |
+
"256263": {
|
| 2140 |
+
"content": "<extra_id_36>",
|
| 2141 |
+
"lstrip": false,
|
| 2142 |
+
"normalized": false,
|
| 2143 |
+
"rstrip": false,
|
| 2144 |
+
"single_word": false,
|
| 2145 |
+
"special": true
|
| 2146 |
+
},
|
| 2147 |
+
"256264": {
|
| 2148 |
+
"content": "<extra_id_35>",
|
| 2149 |
+
"lstrip": false,
|
| 2150 |
+
"normalized": false,
|
| 2151 |
+
"rstrip": false,
|
| 2152 |
+
"single_word": false,
|
| 2153 |
+
"special": true
|
| 2154 |
+
},
|
| 2155 |
+
"256265": {
|
| 2156 |
+
"content": "<extra_id_34>",
|
| 2157 |
+
"lstrip": false,
|
| 2158 |
+
"normalized": false,
|
| 2159 |
+
"rstrip": false,
|
| 2160 |
+
"single_word": false,
|
| 2161 |
+
"special": true
|
| 2162 |
+
},
|
| 2163 |
+
"256266": {
|
| 2164 |
+
"content": "<extra_id_33>",
|
| 2165 |
+
"lstrip": false,
|
| 2166 |
+
"normalized": false,
|
| 2167 |
+
"rstrip": false,
|
| 2168 |
+
"single_word": false,
|
| 2169 |
+
"special": true
|
| 2170 |
+
},
|
| 2171 |
+
"256267": {
|
| 2172 |
+
"content": "<extra_id_32>",
|
| 2173 |
+
"lstrip": false,
|
| 2174 |
+
"normalized": false,
|
| 2175 |
+
"rstrip": false,
|
| 2176 |
+
"single_word": false,
|
| 2177 |
+
"special": true
|
| 2178 |
+
},
|
| 2179 |
+
"256268": {
|
| 2180 |
+
"content": "<extra_id_31>",
|
| 2181 |
+
"lstrip": false,
|
| 2182 |
+
"normalized": false,
|
| 2183 |
+
"rstrip": false,
|
| 2184 |
+
"single_word": false,
|
| 2185 |
+
"special": true
|
| 2186 |
+
},
|
| 2187 |
+
"256269": {
|
| 2188 |
+
"content": "<extra_id_30>",
|
| 2189 |
+
"lstrip": false,
|
| 2190 |
+
"normalized": false,
|
| 2191 |
+
"rstrip": false,
|
| 2192 |
+
"single_word": false,
|
| 2193 |
+
"special": true
|
| 2194 |
+
},
|
| 2195 |
+
"256270": {
|
| 2196 |
+
"content": "<extra_id_29>",
|
| 2197 |
+
"lstrip": false,
|
| 2198 |
+
"normalized": false,
|
| 2199 |
+
"rstrip": false,
|
| 2200 |
+
"single_word": false,
|
| 2201 |
+
"special": true
|
| 2202 |
+
},
|
| 2203 |
+
"256271": {
|
| 2204 |
+
"content": "<extra_id_28>",
|
| 2205 |
+
"lstrip": false,
|
| 2206 |
+
"normalized": false,
|
| 2207 |
+
"rstrip": false,
|
| 2208 |
+
"single_word": false,
|
| 2209 |
+
"special": true
|
| 2210 |
+
},
|
| 2211 |
+
"256272": {
|
| 2212 |
+
"content": "<extra_id_27>",
|
| 2213 |
+
"lstrip": false,
|
| 2214 |
+
"normalized": false,
|
| 2215 |
+
"rstrip": false,
|
| 2216 |
+
"single_word": false,
|
| 2217 |
+
"special": true
|
| 2218 |
+
},
|
| 2219 |
+
"256273": {
|
| 2220 |
+
"content": "<extra_id_26>",
|
| 2221 |
+
"lstrip": false,
|
| 2222 |
+
"normalized": false,
|
| 2223 |
+
"rstrip": false,
|
| 2224 |
+
"single_word": false,
|
| 2225 |
+
"special": true
|
| 2226 |
+
},
|
| 2227 |
+
"256274": {
|
| 2228 |
+
"content": "<extra_id_25>",
|
| 2229 |
+
"lstrip": false,
|
| 2230 |
+
"normalized": false,
|
| 2231 |
+
"rstrip": false,
|
| 2232 |
+
"single_word": false,
|
| 2233 |
+
"special": true
|
| 2234 |
+
},
|
| 2235 |
+
"256275": {
|
| 2236 |
+
"content": "<extra_id_24>",
|
| 2237 |
+
"lstrip": false,
|
| 2238 |
+
"normalized": false,
|
| 2239 |
+
"rstrip": false,
|
| 2240 |
+
"single_word": false,
|
| 2241 |
+
"special": true
|
| 2242 |
+
},
|
| 2243 |
+
"256276": {
|
| 2244 |
+
"content": "<extra_id_23>",
|
| 2245 |
+
"lstrip": false,
|
| 2246 |
+
"normalized": false,
|
| 2247 |
+
"rstrip": false,
|
| 2248 |
+
"single_word": false,
|
| 2249 |
+
"special": true
|
| 2250 |
+
},
|
| 2251 |
+
"256277": {
|
| 2252 |
+
"content": "<extra_id_22>",
|
| 2253 |
+
"lstrip": false,
|
| 2254 |
+
"normalized": false,
|
| 2255 |
+
"rstrip": false,
|
| 2256 |
+
"single_word": false,
|
| 2257 |
+
"special": true
|
| 2258 |
+
},
|
| 2259 |
+
"256278": {
|
| 2260 |
+
"content": "<extra_id_21>",
|
| 2261 |
+
"lstrip": false,
|
| 2262 |
+
"normalized": false,
|
| 2263 |
+
"rstrip": false,
|
| 2264 |
+
"single_word": false,
|
| 2265 |
+
"special": true
|
| 2266 |
+
},
|
| 2267 |
+
"256279": {
|
| 2268 |
+
"content": "<extra_id_20>",
|
| 2269 |
+
"lstrip": false,
|
| 2270 |
+
"normalized": false,
|
| 2271 |
+
"rstrip": false,
|
| 2272 |
+
"single_word": false,
|
| 2273 |
+
"special": true
|
| 2274 |
+
},
|
| 2275 |
+
"256280": {
|
| 2276 |
+
"content": "<extra_id_19>",
|
| 2277 |
+
"lstrip": false,
|
| 2278 |
+
"normalized": false,
|
| 2279 |
+
"rstrip": false,
|
| 2280 |
+
"single_word": false,
|
| 2281 |
+
"special": true
|
| 2282 |
+
},
|
| 2283 |
+
"256281": {
|
| 2284 |
+
"content": "<extra_id_18>",
|
| 2285 |
+
"lstrip": false,
|
| 2286 |
+
"normalized": false,
|
| 2287 |
+
"rstrip": false,
|
| 2288 |
+
"single_word": false,
|
| 2289 |
+
"special": true
|
| 2290 |
+
},
|
| 2291 |
+
"256282": {
|
| 2292 |
+
"content": "<extra_id_17>",
|
| 2293 |
+
"lstrip": false,
|
| 2294 |
+
"normalized": false,
|
| 2295 |
+
"rstrip": false,
|
| 2296 |
+
"single_word": false,
|
| 2297 |
+
"special": true
|
| 2298 |
+
},
|
| 2299 |
+
"256283": {
|
| 2300 |
+
"content": "<extra_id_16>",
|
| 2301 |
+
"lstrip": false,
|
| 2302 |
+
"normalized": false,
|
| 2303 |
+
"rstrip": false,
|
| 2304 |
+
"single_word": false,
|
| 2305 |
+
"special": true
|
| 2306 |
+
},
|
| 2307 |
+
"256284": {
|
| 2308 |
+
"content": "<extra_id_15>",
|
| 2309 |
+
"lstrip": false,
|
| 2310 |
+
"normalized": false,
|
| 2311 |
+
"rstrip": false,
|
| 2312 |
+
"single_word": false,
|
| 2313 |
+
"special": true
|
| 2314 |
+
},
|
| 2315 |
+
"256285": {
|
| 2316 |
+
"content": "<extra_id_14>",
|
| 2317 |
+
"lstrip": false,
|
| 2318 |
+
"normalized": false,
|
| 2319 |
+
"rstrip": false,
|
| 2320 |
+
"single_word": false,
|
| 2321 |
+
"special": true
|
| 2322 |
+
},
|
| 2323 |
+
"256286": {
|
| 2324 |
+
"content": "<extra_id_13>",
|
| 2325 |
+
"lstrip": false,
|
| 2326 |
+
"normalized": false,
|
| 2327 |
+
"rstrip": false,
|
| 2328 |
+
"single_word": false,
|
| 2329 |
+
"special": true
|
| 2330 |
+
},
|
| 2331 |
+
"256287": {
|
| 2332 |
+
"content": "<extra_id_12>",
|
| 2333 |
+
"lstrip": false,
|
| 2334 |
+
"normalized": false,
|
| 2335 |
+
"rstrip": false,
|
| 2336 |
+
"single_word": false,
|
| 2337 |
+
"special": true
|
| 2338 |
+
},
|
| 2339 |
+
"256288": {
|
| 2340 |
+
"content": "<extra_id_11>",
|
| 2341 |
+
"lstrip": false,
|
| 2342 |
+
"normalized": false,
|
| 2343 |
+
"rstrip": false,
|
| 2344 |
+
"single_word": false,
|
| 2345 |
+
"special": true
|
| 2346 |
+
},
|
| 2347 |
+
"256289": {
|
| 2348 |
+
"content": "<extra_id_10>",
|
| 2349 |
+
"lstrip": false,
|
| 2350 |
+
"normalized": false,
|
| 2351 |
+
"rstrip": false,
|
| 2352 |
+
"single_word": false,
|
| 2353 |
+
"special": true
|
| 2354 |
+
},
|
| 2355 |
+
"256290": {
|
| 2356 |
+
"content": "<extra_id_9>",
|
| 2357 |
+
"lstrip": false,
|
| 2358 |
+
"normalized": false,
|
| 2359 |
+
"rstrip": false,
|
| 2360 |
+
"single_word": false,
|
| 2361 |
+
"special": true
|
| 2362 |
+
},
|
| 2363 |
+
"256291": {
|
| 2364 |
+
"content": "<extra_id_8>",
|
| 2365 |
+
"lstrip": false,
|
| 2366 |
+
"normalized": false,
|
| 2367 |
+
"rstrip": false,
|
| 2368 |
+
"single_word": false,
|
| 2369 |
+
"special": true
|
| 2370 |
+
},
|
| 2371 |
+
"256292": {
|
| 2372 |
+
"content": "<extra_id_7>",
|
| 2373 |
+
"lstrip": false,
|
| 2374 |
+
"normalized": false,
|
| 2375 |
+
"rstrip": false,
|
| 2376 |
+
"single_word": false,
|
| 2377 |
+
"special": true
|
| 2378 |
+
},
|
| 2379 |
+
"256293": {
|
| 2380 |
+
"content": "<extra_id_6>",
|
| 2381 |
+
"lstrip": false,
|
| 2382 |
+
"normalized": false,
|
| 2383 |
+
"rstrip": false,
|
| 2384 |
+
"single_word": false,
|
| 2385 |
+
"special": true
|
| 2386 |
+
},
|
| 2387 |
+
"256294": {
|
| 2388 |
+
"content": "<extra_id_5>",
|
| 2389 |
+
"lstrip": false,
|
| 2390 |
+
"normalized": false,
|
| 2391 |
+
"rstrip": false,
|
| 2392 |
+
"single_word": false,
|
| 2393 |
+
"special": true
|
| 2394 |
+
},
|
| 2395 |
+
"256295": {
|
| 2396 |
+
"content": "<extra_id_4>",
|
| 2397 |
+
"lstrip": false,
|
| 2398 |
+
"normalized": false,
|
| 2399 |
+
"rstrip": false,
|
| 2400 |
+
"single_word": false,
|
| 2401 |
+
"special": true
|
| 2402 |
+
},
|
| 2403 |
+
"256296": {
|
| 2404 |
+
"content": "<extra_id_3>",
|
| 2405 |
+
"lstrip": false,
|
| 2406 |
+
"normalized": false,
|
| 2407 |
+
"rstrip": false,
|
| 2408 |
+
"single_word": false,
|
| 2409 |
+
"special": true
|
| 2410 |
+
},
|
| 2411 |
+
"256297": {
|
| 2412 |
+
"content": "<extra_id_2>",
|
| 2413 |
+
"lstrip": false,
|
| 2414 |
+
"normalized": false,
|
| 2415 |
+
"rstrip": false,
|
| 2416 |
+
"single_word": false,
|
| 2417 |
+
"special": true
|
| 2418 |
+
},
|
| 2419 |
+
"256298": {
|
| 2420 |
+
"content": "<extra_id_1>",
|
| 2421 |
+
"lstrip": false,
|
| 2422 |
+
"normalized": false,
|
| 2423 |
+
"rstrip": false,
|
| 2424 |
+
"single_word": false,
|
| 2425 |
+
"special": true
|
| 2426 |
+
},
|
| 2427 |
+
"256299": {
|
| 2428 |
+
"content": "<extra_id_0>",
|
| 2429 |
+
"lstrip": false,
|
| 2430 |
+
"normalized": false,
|
| 2431 |
+
"rstrip": false,
|
| 2432 |
+
"single_word": false,
|
| 2433 |
+
"special": true
|
| 2434 |
+
}
|
| 2435 |
+
},
|
| 2436 |
+
"additional_special_tokens": [
|
| 2437 |
+
"<extra_id_0>",
|
| 2438 |
+
"<extra_id_1>",
|
| 2439 |
+
"<extra_id_2>",
|
| 2440 |
+
"<extra_id_3>",
|
| 2441 |
+
"<extra_id_4>",
|
| 2442 |
+
"<extra_id_5>",
|
| 2443 |
+
"<extra_id_6>",
|
| 2444 |
+
"<extra_id_7>",
|
| 2445 |
+
"<extra_id_8>",
|
| 2446 |
+
"<extra_id_9>",
|
| 2447 |
+
"<extra_id_10>",
|
| 2448 |
+
"<extra_id_11>",
|
| 2449 |
+
"<extra_id_12>",
|
| 2450 |
+
"<extra_id_13>",
|
| 2451 |
+
"<extra_id_14>",
|
| 2452 |
+
"<extra_id_15>",
|
| 2453 |
+
"<extra_id_16>",
|
| 2454 |
+
"<extra_id_17>",
|
| 2455 |
+
"<extra_id_18>",
|
| 2456 |
+
"<extra_id_19>",
|
| 2457 |
+
"<extra_id_20>",
|
| 2458 |
+
"<extra_id_21>",
|
| 2459 |
+
"<extra_id_22>",
|
| 2460 |
+
"<extra_id_23>",
|
| 2461 |
+
"<extra_id_24>",
|
| 2462 |
+
"<extra_id_25>",
|
| 2463 |
+
"<extra_id_26>",
|
| 2464 |
+
"<extra_id_27>",
|
| 2465 |
+
"<extra_id_28>",
|
| 2466 |
+
"<extra_id_29>",
|
| 2467 |
+
"<extra_id_30>",
|
| 2468 |
+
"<extra_id_31>",
|
| 2469 |
+
"<extra_id_32>",
|
| 2470 |
+
"<extra_id_33>",
|
| 2471 |
+
"<extra_id_34>",
|
| 2472 |
+
"<extra_id_35>",
|
| 2473 |
+
"<extra_id_36>",
|
| 2474 |
+
"<extra_id_37>",
|
| 2475 |
+
"<extra_id_38>",
|
| 2476 |
+
"<extra_id_39>",
|
| 2477 |
+
"<extra_id_40>",
|
| 2478 |
+
"<extra_id_41>",
|
| 2479 |
+
"<extra_id_42>",
|
| 2480 |
+
"<extra_id_43>",
|
| 2481 |
+
"<extra_id_44>",
|
| 2482 |
+
"<extra_id_45>",
|
| 2483 |
+
"<extra_id_46>",
|
| 2484 |
+
"<extra_id_47>",
|
| 2485 |
+
"<extra_id_48>",
|
| 2486 |
+
"<extra_id_49>",
|
| 2487 |
+
"<extra_id_50>",
|
| 2488 |
+
"<extra_id_51>",
|
| 2489 |
+
"<extra_id_52>",
|
| 2490 |
+
"<extra_id_53>",
|
| 2491 |
+
"<extra_id_54>",
|
| 2492 |
+
"<extra_id_55>",
|
| 2493 |
+
"<extra_id_56>",
|
| 2494 |
+
"<extra_id_57>",
|
| 2495 |
+
"<extra_id_58>",
|
| 2496 |
+
"<extra_id_59>",
|
| 2497 |
+
"<extra_id_60>",
|
| 2498 |
+
"<extra_id_61>",
|
| 2499 |
+
"<extra_id_62>",
|
| 2500 |
+
"<extra_id_63>",
|
| 2501 |
+
"<extra_id_64>",
|
| 2502 |
+
"<extra_id_65>",
|
| 2503 |
+
"<extra_id_66>",
|
| 2504 |
+
"<extra_id_67>",
|
| 2505 |
+
"<extra_id_68>",
|
| 2506 |
+
"<extra_id_69>",
|
| 2507 |
+
"<extra_id_70>",
|
| 2508 |
+
"<extra_id_71>",
|
| 2509 |
+
"<extra_id_72>",
|
| 2510 |
+
"<extra_id_73>",
|
| 2511 |
+
"<extra_id_74>",
|
| 2512 |
+
"<extra_id_75>",
|
| 2513 |
+
"<extra_id_76>",
|
| 2514 |
+
"<extra_id_77>",
|
| 2515 |
+
"<extra_id_78>",
|
| 2516 |
+
"<extra_id_79>",
|
| 2517 |
+
"<extra_id_80>",
|
| 2518 |
+
"<extra_id_81>",
|
| 2519 |
+
"<extra_id_82>",
|
| 2520 |
+
"<extra_id_83>",
|
| 2521 |
+
"<extra_id_84>",
|
| 2522 |
+
"<extra_id_85>",
|
| 2523 |
+
"<extra_id_86>",
|
| 2524 |
+
"<extra_id_87>",
|
| 2525 |
+
"<extra_id_88>",
|
| 2526 |
+
"<extra_id_89>",
|
| 2527 |
+
"<extra_id_90>",
|
| 2528 |
+
"<extra_id_91>",
|
| 2529 |
+
"<extra_id_92>",
|
| 2530 |
+
"<extra_id_93>",
|
| 2531 |
+
"<extra_id_94>",
|
| 2532 |
+
"<extra_id_95>",
|
| 2533 |
+
"<extra_id_96>",
|
| 2534 |
+
"<extra_id_97>",
|
| 2535 |
+
"<extra_id_98>",
|
| 2536 |
+
"<extra_id_99>",
|
| 2537 |
+
"<extra_id_100>",
|
| 2538 |
+
"<extra_id_101>",
|
| 2539 |
+
"<extra_id_102>",
|
| 2540 |
+
"<extra_id_103>",
|
| 2541 |
+
"<extra_id_104>",
|
| 2542 |
+
"<extra_id_105>",
|
| 2543 |
+
"<extra_id_106>",
|
| 2544 |
+
"<extra_id_107>",
|
| 2545 |
+
"<extra_id_108>",
|
| 2546 |
+
"<extra_id_109>",
|
| 2547 |
+
"<extra_id_110>",
|
| 2548 |
+
"<extra_id_111>",
|
| 2549 |
+
"<extra_id_112>",
|
| 2550 |
+
"<extra_id_113>",
|
| 2551 |
+
"<extra_id_114>",
|
| 2552 |
+
"<extra_id_115>",
|
| 2553 |
+
"<extra_id_116>",
|
| 2554 |
+
"<extra_id_117>",
|
| 2555 |
+
"<extra_id_118>",
|
| 2556 |
+
"<extra_id_119>",
|
| 2557 |
+
"<extra_id_120>",
|
| 2558 |
+
"<extra_id_121>",
|
| 2559 |
+
"<extra_id_122>",
|
| 2560 |
+
"<extra_id_123>",
|
| 2561 |
+
"<extra_id_124>",
|
| 2562 |
+
"<extra_id_125>",
|
| 2563 |
+
"<extra_id_126>",
|
| 2564 |
+
"<extra_id_127>",
|
| 2565 |
+
"<extra_id_128>",
|
| 2566 |
+
"<extra_id_129>",
|
| 2567 |
+
"<extra_id_130>",
|
| 2568 |
+
"<extra_id_131>",
|
| 2569 |
+
"<extra_id_132>",
|
| 2570 |
+
"<extra_id_133>",
|
| 2571 |
+
"<extra_id_134>",
|
| 2572 |
+
"<extra_id_135>",
|
| 2573 |
+
"<extra_id_136>",
|
| 2574 |
+
"<extra_id_137>",
|
| 2575 |
+
"<extra_id_138>",
|
| 2576 |
+
"<extra_id_139>",
|
| 2577 |
+
"<extra_id_140>",
|
| 2578 |
+
"<extra_id_141>",
|
| 2579 |
+
"<extra_id_142>",
|
| 2580 |
+
"<extra_id_143>",
|
| 2581 |
+
"<extra_id_144>",
|
| 2582 |
+
"<extra_id_145>",
|
| 2583 |
+
"<extra_id_146>",
|
| 2584 |
+
"<extra_id_147>",
|
| 2585 |
+
"<extra_id_148>",
|
| 2586 |
+
"<extra_id_149>",
|
| 2587 |
+
"<extra_id_150>",
|
| 2588 |
+
"<extra_id_151>",
|
| 2589 |
+
"<extra_id_152>",
|
| 2590 |
+
"<extra_id_153>",
|
| 2591 |
+
"<extra_id_154>",
|
| 2592 |
+
"<extra_id_155>",
|
| 2593 |
+
"<extra_id_156>",
|
| 2594 |
+
"<extra_id_157>",
|
| 2595 |
+
"<extra_id_158>",
|
| 2596 |
+
"<extra_id_159>",
|
| 2597 |
+
"<extra_id_160>",
|
| 2598 |
+
"<extra_id_161>",
|
| 2599 |
+
"<extra_id_162>",
|
| 2600 |
+
"<extra_id_163>",
|
| 2601 |
+
"<extra_id_164>",
|
| 2602 |
+
"<extra_id_165>",
|
| 2603 |
+
"<extra_id_166>",
|
| 2604 |
+
"<extra_id_167>",
|
| 2605 |
+
"<extra_id_168>",
|
| 2606 |
+
"<extra_id_169>",
|
| 2607 |
+
"<extra_id_170>",
|
| 2608 |
+
"<extra_id_171>",
|
| 2609 |
+
"<extra_id_172>",
|
| 2610 |
+
"<extra_id_173>",
|
| 2611 |
+
"<extra_id_174>",
|
| 2612 |
+
"<extra_id_175>",
|
| 2613 |
+
"<extra_id_176>",
|
| 2614 |
+
"<extra_id_177>",
|
| 2615 |
+
"<extra_id_178>",
|
| 2616 |
+
"<extra_id_179>",
|
| 2617 |
+
"<extra_id_180>",
|
| 2618 |
+
"<extra_id_181>",
|
| 2619 |
+
"<extra_id_182>",
|
| 2620 |
+
"<extra_id_183>",
|
| 2621 |
+
"<extra_id_184>",
|
| 2622 |
+
"<extra_id_185>",
|
| 2623 |
+
"<extra_id_186>",
|
| 2624 |
+
"<extra_id_187>",
|
| 2625 |
+
"<extra_id_188>",
|
| 2626 |
+
"<extra_id_189>",
|
| 2627 |
+
"<extra_id_190>",
|
| 2628 |
+
"<extra_id_191>",
|
| 2629 |
+
"<extra_id_192>",
|
| 2630 |
+
"<extra_id_193>",
|
| 2631 |
+
"<extra_id_194>",
|
| 2632 |
+
"<extra_id_195>",
|
| 2633 |
+
"<extra_id_196>",
|
| 2634 |
+
"<extra_id_197>",
|
| 2635 |
+
"<extra_id_198>",
|
| 2636 |
+
"<extra_id_199>",
|
| 2637 |
+
"<extra_id_200>",
|
| 2638 |
+
"<extra_id_201>",
|
| 2639 |
+
"<extra_id_202>",
|
| 2640 |
+
"<extra_id_203>",
|
| 2641 |
+
"<extra_id_204>",
|
| 2642 |
+
"<extra_id_205>",
|
| 2643 |
+
"<extra_id_206>",
|
| 2644 |
+
"<extra_id_207>",
|
| 2645 |
+
"<extra_id_208>",
|
| 2646 |
+
"<extra_id_209>",
|
| 2647 |
+
"<extra_id_210>",
|
| 2648 |
+
"<extra_id_211>",
|
| 2649 |
+
"<extra_id_212>",
|
| 2650 |
+
"<extra_id_213>",
|
| 2651 |
+
"<extra_id_214>",
|
| 2652 |
+
"<extra_id_215>",
|
| 2653 |
+
"<extra_id_216>",
|
| 2654 |
+
"<extra_id_217>",
|
| 2655 |
+
"<extra_id_218>",
|
| 2656 |
+
"<extra_id_219>",
|
| 2657 |
+
"<extra_id_220>",
|
| 2658 |
+
"<extra_id_221>",
|
| 2659 |
+
"<extra_id_222>",
|
| 2660 |
+
"<extra_id_223>",
|
| 2661 |
+
"<extra_id_224>",
|
| 2662 |
+
"<extra_id_225>",
|
| 2663 |
+
"<extra_id_226>",
|
| 2664 |
+
"<extra_id_227>",
|
| 2665 |
+
"<extra_id_228>",
|
| 2666 |
+
"<extra_id_229>",
|
| 2667 |
+
"<extra_id_230>",
|
| 2668 |
+
"<extra_id_231>",
|
| 2669 |
+
"<extra_id_232>",
|
| 2670 |
+
"<extra_id_233>",
|
| 2671 |
+
"<extra_id_234>",
|
| 2672 |
+
"<extra_id_235>",
|
| 2673 |
+
"<extra_id_236>",
|
| 2674 |
+
"<extra_id_237>",
|
| 2675 |
+
"<extra_id_238>",
|
| 2676 |
+
"<extra_id_239>",
|
| 2677 |
+
"<extra_id_240>",
|
| 2678 |
+
"<extra_id_241>",
|
| 2679 |
+
"<extra_id_242>",
|
| 2680 |
+
"<extra_id_243>",
|
| 2681 |
+
"<extra_id_244>",
|
| 2682 |
+
"<extra_id_245>",
|
| 2683 |
+
"<extra_id_246>",
|
| 2684 |
+
"<extra_id_247>",
|
| 2685 |
+
"<extra_id_248>",
|
| 2686 |
+
"<extra_id_249>",
|
| 2687 |
+
"<extra_id_250>",
|
| 2688 |
+
"<extra_id_251>",
|
| 2689 |
+
"<extra_id_252>",
|
| 2690 |
+
"<extra_id_253>",
|
| 2691 |
+
"<extra_id_254>",
|
| 2692 |
+
"<extra_id_255>",
|
| 2693 |
+
"<extra_id_256>",
|
| 2694 |
+
"<extra_id_257>",
|
| 2695 |
+
"<extra_id_258>",
|
| 2696 |
+
"<extra_id_259>",
|
| 2697 |
+
"<extra_id_260>",
|
| 2698 |
+
"<extra_id_261>",
|
| 2699 |
+
"<extra_id_262>",
|
| 2700 |
+
"<extra_id_263>",
|
| 2701 |
+
"<extra_id_264>",
|
| 2702 |
+
"<extra_id_265>",
|
| 2703 |
+
"<extra_id_266>",
|
| 2704 |
+
"<extra_id_267>",
|
| 2705 |
+
"<extra_id_268>",
|
| 2706 |
+
"<extra_id_269>",
|
| 2707 |
+
"<extra_id_270>",
|
| 2708 |
+
"<extra_id_271>",
|
| 2709 |
+
"<extra_id_272>",
|
| 2710 |
+
"<extra_id_273>",
|
| 2711 |
+
"<extra_id_274>",
|
| 2712 |
+
"<extra_id_275>",
|
| 2713 |
+
"<extra_id_276>",
|
| 2714 |
+
"<extra_id_277>",
|
| 2715 |
+
"<extra_id_278>",
|
| 2716 |
+
"<extra_id_279>",
|
| 2717 |
+
"<extra_id_280>",
|
| 2718 |
+
"<extra_id_281>",
|
| 2719 |
+
"<extra_id_282>",
|
| 2720 |
+
"<extra_id_283>",
|
| 2721 |
+
"<extra_id_284>",
|
| 2722 |
+
"<extra_id_285>",
|
| 2723 |
+
"<extra_id_286>",
|
| 2724 |
+
"<extra_id_287>",
|
| 2725 |
+
"<extra_id_288>",
|
| 2726 |
+
"<extra_id_289>",
|
| 2727 |
+
"<extra_id_290>",
|
| 2728 |
+
"<extra_id_291>",
|
| 2729 |
+
"<extra_id_292>",
|
| 2730 |
+
"<extra_id_293>",
|
| 2731 |
+
"<extra_id_294>",
|
| 2732 |
+
"<extra_id_295>",
|
| 2733 |
+
"<extra_id_296>",
|
| 2734 |
+
"<extra_id_297>",
|
| 2735 |
+
"<extra_id_298>",
|
| 2736 |
+
"<extra_id_299>"
|
| 2737 |
+
],
|
| 2738 |
+
"bos_token": "<s>",
|
| 2739 |
+
"clean_up_tokenization_spaces": true,
|
| 2740 |
+
"eos_token": "</s>",
|
| 2741 |
+
"extra_ids": 300,
|
| 2742 |
+
"model_max_length": 1000000000000000019884624838656,
|
| 2743 |
+
"pad_token": "<pad>",
|
| 2744 |
+
"sp_model_kwargs": {},
|
| 2745 |
+
"spaces_between_special_tokens": false,
|
| 2746 |
+
"tokenizer_class": "T5Tokenizer",
|
| 2747 |
+
"unk_token": "<unk>"
|
| 2748 |
+
}
|
Wan2.1-T2V-1.3B/models_t5_umt5-xxl-enc-bf16.pth
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:7cace0da2b446bbbbc57d031ab6cf163a3d59b366da94e5afe36745b746fd81d
|
| 3 |
+
size 11361920418
|
diffsynth-studio/.github/workflows/logo.gif
ADDED
|
Git LFS Details
|
diffsynth-studio/.github/workflows/publish.yaml
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
name: release
|
| 2 |
+
|
| 3 |
+
on:
|
| 4 |
+
push:
|
| 5 |
+
tags:
|
| 6 |
+
- 'v**'
|
| 7 |
+
|
| 8 |
+
concurrency:
|
| 9 |
+
group: ${{ github.workflow }}-${{ github.ref }}-publish
|
| 10 |
+
cancel-in-progress: true
|
| 11 |
+
|
| 12 |
+
jobs:
|
| 13 |
+
build-n-publish:
|
| 14 |
+
runs-on: ubuntu-20.04
|
| 15 |
+
#if: startsWith(github.event.ref, 'refs/tags')
|
| 16 |
+
steps:
|
| 17 |
+
- uses: actions/checkout@v2
|
| 18 |
+
- name: Set up Python 3.10
|
| 19 |
+
uses: actions/setup-python@v2
|
| 20 |
+
with:
|
| 21 |
+
python-version: '3.10'
|
| 22 |
+
- name: Install wheel
|
| 23 |
+
run: pip install wheel==0.44.0 && pip install -r requirements.txt
|
| 24 |
+
- name: Build DiffSynth
|
| 25 |
+
run: python setup.py sdist bdist_wheel
|
| 26 |
+
- name: Publish package to PyPI
|
| 27 |
+
run: |
|
| 28 |
+
pip install twine
|
| 29 |
+
twine upload dist/* --skip-existing -u __token__ -p ${{ secrets.PYPI_API_TOKEN }}
|
diffsynth-studio/.gitignore
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
*.pyc
|
| 2 |
+
*.log
|
| 3 |
+
diffsynth.egg-info/
|
| 4 |
+
checkpoint/
|
| 5 |
+
experiments/
|
| 6 |
+
test_outputs/
|
| 7 |
+
ckpt/
|
| 8 |
+
onnx/
|
| 9 |
+
models/Qwen/Qwen-Image
|
| 10 |
+
models/HunyuanVideo
|
| 11 |
+
models/Wan-AI
|
diffsynth-studio/.vscode/settings.json
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"python-envs.defaultEnvManager": "ms-python.python:conda",
|
| 3 |
+
"python-envs.defaultPackageManager": "ms-python.python:conda",
|
| 4 |
+
"python-envs.pythonProjects": []
|
| 5 |
+
}
|
diffsynth-studio/LICENSE
ADDED
|
@@ -0,0 +1,201 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
Apache License
|
| 2 |
+
Version 2.0, January 2004
|
| 3 |
+
http://www.apache.org/licenses/
|
| 4 |
+
|
| 5 |
+
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
| 6 |
+
|
| 7 |
+
1. Definitions.
|
| 8 |
+
|
| 9 |
+
"License" shall mean the terms and conditions for use, reproduction,
|
| 10 |
+
and distribution as defined by Sections 1 through 9 of this document.
|
| 11 |
+
|
| 12 |
+
"Licensor" shall mean the copyright owner or entity authorized by
|
| 13 |
+
the copyright owner that is granting the License.
|
| 14 |
+
|
| 15 |
+
"Legal Entity" shall mean the union of the acting entity and all
|
| 16 |
+
other entities that control, are controlled by, or are under common
|
| 17 |
+
control with that entity. For the purposes of this definition,
|
| 18 |
+
"control" means (i) the power, direct or indirect, to cause the
|
| 19 |
+
direction or management of such entity, whether by contract or
|
| 20 |
+
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
| 21 |
+
outstanding shares, or (iii) beneficial ownership of such entity.
|
| 22 |
+
|
| 23 |
+
"You" (or "Your") shall mean an individual or Legal Entity
|
| 24 |
+
exercising permissions granted by this License.
|
| 25 |
+
|
| 26 |
+
"Source" form shall mean the preferred form for making modifications,
|
| 27 |
+
including but not limited to software source code, documentation
|
| 28 |
+
source, and configuration files.
|
| 29 |
+
|
| 30 |
+
"Object" form shall mean any form resulting from mechanical
|
| 31 |
+
transformation or translation of a Source form, including but
|
| 32 |
+
not limited to compiled object code, generated documentation,
|
| 33 |
+
and conversions to other media types.
|
| 34 |
+
|
| 35 |
+
"Work" shall mean the work of authorship, whether in Source or
|
| 36 |
+
Object form, made available under the License, as indicated by a
|
| 37 |
+
copyright notice that is included in or attached to the work
|
| 38 |
+
(an example is provided in the Appendix below).
|
| 39 |
+
|
| 40 |
+
"Derivative Works" shall mean any work, whether in Source or Object
|
| 41 |
+
form, that is based on (or derived from) the Work and for which the
|
| 42 |
+
editorial revisions, annotations, elaborations, or other modifications
|
| 43 |
+
represent, as a whole, an original work of authorship. For the purposes
|
| 44 |
+
of this License, Derivative Works shall not include works that remain
|
| 45 |
+
separable from, or merely link (or bind by name) to the interfaces of,
|
| 46 |
+
the Work and Derivative Works thereof.
|
| 47 |
+
|
| 48 |
+
"Contribution" shall mean any work of authorship, including
|
| 49 |
+
the original version of the Work and any modifications or additions
|
| 50 |
+
to that Work or Derivative Works thereof, that is intentionally
|
| 51 |
+
submitted to Licensor for inclusion in the Work by the copyright owner
|
| 52 |
+
or by an individual or Legal Entity authorized to submit on behalf of
|
| 53 |
+
the copyright owner. For the purposes of this definition, "submitted"
|
| 54 |
+
means any form of electronic, verbal, or written communication sent
|
| 55 |
+
to the Licensor or its representatives, including but not limited to
|
| 56 |
+
communication on electronic mailing lists, source code control systems,
|
| 57 |
+
and issue tracking systems that are managed by, or on behalf of, the
|
| 58 |
+
Licensor for the purpose of discussing and improving the Work, but
|
| 59 |
+
excluding communication that is conspicuously marked or otherwise
|
| 60 |
+
designated in writing by the copyright owner as "Not a Contribution."
|
| 61 |
+
|
| 62 |
+
"Contributor" shall mean Licensor and any individual or Legal Entity
|
| 63 |
+
on behalf of whom a Contribution has been received by Licensor and
|
| 64 |
+
subsequently incorporated within the Work.
|
| 65 |
+
|
| 66 |
+
2. Grant of Copyright License. Subject to the terms and conditions of
|
| 67 |
+
this License, each Contributor hereby grants to You a perpetual,
|
| 68 |
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
| 69 |
+
copyright license to reproduce, prepare Derivative Works of,
|
| 70 |
+
publicly display, publicly perform, sublicense, and distribute the
|
| 71 |
+
Work and such Derivative Works in Source or Object form.
|
| 72 |
+
|
| 73 |
+
3. Grant of Patent License. Subject to the terms and conditions of
|
| 74 |
+
this License, each Contributor hereby grants to You a perpetual,
|
| 75 |
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
| 76 |
+
(except as stated in this section) patent license to make, have made,
|
| 77 |
+
use, offer to sell, sell, import, and otherwise transfer the Work,
|
| 78 |
+
where such license applies only to those patent claims licensable
|
| 79 |
+
by such Contributor that are necessarily infringed by their
|
| 80 |
+
Contribution(s) alone or by combination of their Contribution(s)
|
| 81 |
+
with the Work to which such Contribution(s) was submitted. If You
|
| 82 |
+
institute patent litigation against any entity (including a
|
| 83 |
+
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
| 84 |
+
or a Contribution incorporated within the Work constitutes direct
|
| 85 |
+
or contributory patent infringement, then any patent licenses
|
| 86 |
+
granted to You under this License for that Work shall terminate
|
| 87 |
+
as of the date such litigation is filed.
|
| 88 |
+
|
| 89 |
+
4. Redistribution. You may reproduce and distribute copies of the
|
| 90 |
+
Work or Derivative Works thereof in any medium, with or without
|
| 91 |
+
modifications, and in Source or Object form, provided that You
|
| 92 |
+
meet the following conditions:
|
| 93 |
+
|
| 94 |
+
(a) You must give any other recipients of the Work or
|
| 95 |
+
Derivative Works a copy of this License; and
|
| 96 |
+
|
| 97 |
+
(b) You must cause any modified files to carry prominent notices
|
| 98 |
+
stating that You changed the files; and
|
| 99 |
+
|
| 100 |
+
(c) You must retain, in the Source form of any Derivative Works
|
| 101 |
+
that You distribute, all copyright, patent, trademark, and
|
| 102 |
+
attribution notices from the Source form of the Work,
|
| 103 |
+
excluding those notices that do not pertain to any part of
|
| 104 |
+
the Derivative Works; and
|
| 105 |
+
|
| 106 |
+
(d) If the Work includes a "NOTICE" text file as part of its
|
| 107 |
+
distribution, then any Derivative Works that You distribute must
|
| 108 |
+
include a readable copy of the attribution notices contained
|
| 109 |
+
within such NOTICE file, excluding those notices that do not
|
| 110 |
+
pertain to any part of the Derivative Works, in at least one
|
| 111 |
+
of the following places: within a NOTICE text file distributed
|
| 112 |
+
as part of the Derivative Works; within the Source form or
|
| 113 |
+
documentation, if provided along with the Derivative Works; or,
|
| 114 |
+
within a display generated by the Derivative Works, if and
|
| 115 |
+
wherever such third-party notices normally appear. The contents
|
| 116 |
+
of the NOTICE file are for informational purposes only and
|
| 117 |
+
do not modify the License. You may add Your own attribution
|
| 118 |
+
notices within Derivative Works that You distribute, alongside
|
| 119 |
+
or as an addendum to the NOTICE text from the Work, provided
|
| 120 |
+
that such additional attribution notices cannot be construed
|
| 121 |
+
as modifying the License.
|
| 122 |
+
|
| 123 |
+
You may add Your own copyright statement to Your modifications and
|
| 124 |
+
may provide additional or different license terms and conditions
|
| 125 |
+
for use, reproduction, or distribution of Your modifications, or
|
| 126 |
+
for any such Derivative Works as a whole, provided Your use,
|
| 127 |
+
reproduction, and distribution of the Work otherwise complies with
|
| 128 |
+
the conditions stated in this License.
|
| 129 |
+
|
| 130 |
+
5. Submission of Contributions. Unless You explicitly state otherwise,
|
| 131 |
+
any Contribution intentionally submitted for inclusion in the Work
|
| 132 |
+
by You to the Licensor shall be under the terms and conditions of
|
| 133 |
+
this License, without any additional terms or conditions.
|
| 134 |
+
Notwithstanding the above, nothing herein shall supersede or modify
|
| 135 |
+
the terms of any separate license agreement you may have executed
|
| 136 |
+
with Licensor regarding such Contributions.
|
| 137 |
+
|
| 138 |
+
6. Trademarks. This License does not grant permission to use the trade
|
| 139 |
+
names, trademarks, service marks, or product names of the Licensor,
|
| 140 |
+
except as required for reasonable and customary use in describing the
|
| 141 |
+
origin of the Work and reproducing the content of the NOTICE file.
|
| 142 |
+
|
| 143 |
+
7. Disclaimer of Warranty. Unless required by applicable law or
|
| 144 |
+
agreed to in writing, Licensor provides the Work (and each
|
| 145 |
+
Contributor provides its Contributions) on an "AS IS" BASIS,
|
| 146 |
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
| 147 |
+
implied, including, without limitation, any warranties or conditions
|
| 148 |
+
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
| 149 |
+
PARTICULAR PURPOSE. You are solely responsible for determining the
|
| 150 |
+
appropriateness of using or redistributing the Work and assume any
|
| 151 |
+
risks associated with Your exercise of permissions under this License.
|
| 152 |
+
|
| 153 |
+
8. Limitation of Liability. In no event and under no legal theory,
|
| 154 |
+
whether in tort (including negligence), contract, or otherwise,
|
| 155 |
+
unless required by applicable law (such as deliberate and grossly
|
| 156 |
+
negligent acts) or agreed to in writing, shall any Contributor be
|
| 157 |
+
liable to You for damages, including any direct, indirect, special,
|
| 158 |
+
incidental, or consequential damages of any character arising as a
|
| 159 |
+
result of this License or out of the use or inability to use the
|
| 160 |
+
Work (including but not limited to damages for loss of goodwill,
|
| 161 |
+
work stoppage, computer failure or malfunction, or any and all
|
| 162 |
+
other commercial damages or losses), even if such Contributor
|
| 163 |
+
has been advised of the possibility of such damages.
|
| 164 |
+
|
| 165 |
+
9. Accepting Warranty or Additional Liability. While redistributing
|
| 166 |
+
the Work or Derivative Works thereof, You may choose to offer,
|
| 167 |
+
and charge a fee for, acceptance of support, warranty, indemnity,
|
| 168 |
+
or other liability obligations and/or rights consistent with this
|
| 169 |
+
License. However, in accepting such obligations, You may act only
|
| 170 |
+
on Your own behalf and on Your sole responsibility, not on behalf
|
| 171 |
+
of any other Contributor, and only if You agree to indemnify,
|
| 172 |
+
defend, and hold each Contributor harmless for any liability
|
| 173 |
+
incurred by, or claims asserted against, such Contributor by reason
|
| 174 |
+
of your accepting any such warranty or additional liability.
|
| 175 |
+
|
| 176 |
+
END OF TERMS AND CONDITIONS
|
| 177 |
+
|
| 178 |
+
APPENDIX: How to apply the Apache License to your work.
|
| 179 |
+
|
| 180 |
+
To apply the Apache License to your work, attach the following
|
| 181 |
+
boilerplate notice, with the fields enclosed by brackets "[]"
|
| 182 |
+
replaced with your own identifying information. (Don't include
|
| 183 |
+
the brackets!) The text should be enclosed in the appropriate
|
| 184 |
+
comment syntax for the file format. We also recommend that a
|
| 185 |
+
file or class name and description of purpose be included on the
|
| 186 |
+
same "printed page" as the copyright notice for easier
|
| 187 |
+
identification within third-party archives.
|
| 188 |
+
|
| 189 |
+
Copyright [2023] [Zhongjie Duan]
|
| 190 |
+
|
| 191 |
+
Licensed under the Apache License, Version 2.0 (the "License");
|
| 192 |
+
you may not use this file except in compliance with the License.
|
| 193 |
+
You may obtain a copy of the License at
|
| 194 |
+
|
| 195 |
+
http://www.apache.org/licenses/LICENSE-2.0
|
| 196 |
+
|
| 197 |
+
Unless required by applicable law or agreed to in writing, software
|
| 198 |
+
distributed under the License is distributed on an "AS IS" BASIS,
|
| 199 |
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
| 200 |
+
See the License for the specific language governing permissions and
|
| 201 |
+
limitations under the License.
|
diffsynth-studio/README_zh.md
ADDED
|
@@ -0,0 +1,478 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# DiffSynth-Studio
|
| 2 |
+
|
| 3 |
+
<a href="https://github.com/modelscope/DiffSynth-Studio"><img src=".github/workflows/logo.gif" title="Logo" style="max-width:100%;" width="55" /></a> <a href="https://trendshift.io/repositories/10946" target="_blank"><img src="https://trendshift.io/api/badge/repositories/10946" alt="modelscope%2FDiffSynth-Studio | Trendshift" style="width: 250px; height: 55px;" width="250" height="55"/></a></p>
|
| 4 |
+
|
| 5 |
+
[](https://pypi.org/project/DiffSynth/)
|
| 6 |
+
[](https://github.com/modelscope/DiffSynth-Studio/blob/master/LICENSE)
|
| 7 |
+
[](https://github.com/modelscope/DiffSynth-Studio/issues)
|
| 8 |
+
[](https://GitHub.com/modelscope/DiffSynth-Studio/pull/)
|
| 9 |
+
[](https://GitHub.com/modelscope/DiffSynth-Studio/commit/)
|
| 10 |
+
|
| 11 |
+
[Switch to English](./README.md)
|
| 12 |
+
|
| 13 |
+
## 简介
|
| 14 |
+
|
| 15 |
+
欢迎来到 Diffusion 模型的魔法世界!DiffSynth-Studio 是由[魔搭社区](https://www.modelscope.cn/)团队开发和维护的开源 Diffusion 模型引擎。我们期望以框架建设孵化技术创新,凝聚开源社区的力量,探索生成式模型技术的边界!
|
| 16 |
+
|
| 17 |
+
DiffSynth 目前包括两个开源项目:
|
| 18 |
+
* [DiffSynth-Studio](https://github.com/modelscope/DiffSynth-Studio): 聚焦于激进的技术探索,面向学术界,提供更前沿的模型能力支持。
|
| 19 |
+
* [DiffSynth-Engine](https://github.com/modelscope/DiffSynth-Engine): 聚焦于稳定的模型部署,面向工业界,提供更高的计算性能与更稳定的功能。
|
| 20 |
+
|
| 21 |
+
[DiffSynth-Studio](https://github.com/modelscope/DiffSynth-Studio) 与 [DiffSynth-Engine](https://github.com/modelscope/DiffSynth-Engine) 作为魔搭社区 [AIGC 专区](https://modelscope.cn/aigc/home) 的核心技术支撑,提供了强大的AI生成内容能力。欢迎体验我们精心打造的产品化功能,开启您的AI创作之旅!
|
| 22 |
+
|
| 23 |
+
## 安装
|
| 24 |
+
|
| 25 |
+
从源码安装(推荐):
|
| 26 |
+
|
| 27 |
+
```
|
| 28 |
+
git clone https://github.com/modelscope/DiffSynth-Studio.git
|
| 29 |
+
cd DiffSynth-Studio
|
| 30 |
+
pip install -e .
|
| 31 |
+
```
|
| 32 |
+
|
| 33 |
+
<details>
|
| 34 |
+
<summary>其他安装方式</summary>
|
| 35 |
+
|
| 36 |
+
从 pypi 安装(存在版本更新延迟,如需使用最新功能,请从源码安装)
|
| 37 |
+
|
| 38 |
+
```
|
| 39 |
+
pip install diffsynth
|
| 40 |
+
```
|
| 41 |
+
|
| 42 |
+
如果在安装过程中遇到问题,可能是由上游依赖包导致的,请参考这些包的文档:
|
| 43 |
+
|
| 44 |
+
* [torch](https://pytorch.org/get-started/locally/)
|
| 45 |
+
* [sentencepiece](https://github.com/google/sentencepiece)
|
| 46 |
+
* [cmake](https://cmake.org)
|
| 47 |
+
* [cupy](https://docs.cupy.dev/en/stable/install.html)
|
| 48 |
+
|
| 49 |
+
</details>
|
| 50 |
+
|
| 51 |
+
|
| 52 |
+
|
| 53 |
+
## 基础框架
|
| 54 |
+
|
| 55 |
+
DiffSynth-Studio 为主流 Diffusion 模型(包括 FLUX、Wan 等)重新设计了推理和训练流水线,能够实现高效的显存管理、灵活的模型训练。
|
| 56 |
+
|
| 57 |
+
### Qwen-Image 系列 (🔥新模型)
|
| 58 |
+
|
| 59 |
+
详细页面:[./examples/qwen_image/](./examples/qwen_image/)
|
| 60 |
+
|
| 61 |
+

|
| 62 |
+
|
| 63 |
+
<details>
|
| 64 |
+
|
| 65 |
+
<summary>快速开始</summary>
|
| 66 |
+
|
| 67 |
+
```python
|
| 68 |
+
from diffsynth.pipelines.qwen_image import QwenImagePipeline, ModelConfig
|
| 69 |
+
import torch
|
| 70 |
+
|
| 71 |
+
pipe = QwenImagePipeline.from_pretrained(
|
| 72 |
+
torch_dtype=torch.bfloat16,
|
| 73 |
+
device="cuda",
|
| 74 |
+
model_configs=[
|
| 75 |
+
ModelConfig(model_id="Qwen/Qwen-Image", origin_file_pattern="transformer/diffusion_pytorch_model*.safetensors"),
|
| 76 |
+
ModelConfig(model_id="Qwen/Qwen-Image", origin_file_pattern="text_encoder/model*.safetensors"),
|
| 77 |
+
ModelConfig(model_id="Qwen/Qwen-Image", origin_file_pattern="vae/diffusion_pytorch_model.safetensors"),
|
| 78 |
+
],
|
| 79 |
+
tokenizer_config=ModelConfig(model_id="Qwen/Qwen-Image", origin_file_pattern="tokenizer/"),
|
| 80 |
+
)
|
| 81 |
+
prompt = "精致肖像,水下少女,蓝裙飘逸,发丝轻扬,光影透澈,气泡环绕,面容恬静,细节精致,梦幻唯美。"
|
| 82 |
+
image = pipe(prompt, seed=0, num_inference_steps=40)
|
| 83 |
+
image.save("image.jpg")
|
| 84 |
+
```
|
| 85 |
+
|
| 86 |
+
</details>
|
| 87 |
+
|
| 88 |
+
<details>
|
| 89 |
+
|
| 90 |
+
<summary>模型总览</summary>
|
| 91 |
+
|
| 92 |
+
|模型 ID|推理|全量训练|全量训练后验证|LoRA 训练|LoRA 训练后验证|
|
| 93 |
+
|-|-|-|-|-|-|
|
| 94 |
+
|[Qwen/Qwen-Image](https://www.modelscope.cn/models/Qwen/Qwen-Image)|[code](./examples/qwen_image/model_inference/Qwen-Image.py)|[code](./examples/qwen_image/model_training/full/Qwen-Image.sh)|[code](./examples/qwen_image/model_training/validate_full/Qwen-Image.py)|[code](./examples/qwen_image/model_training/lora/Qwen-Image.sh)|[code](./examples/qwen_image/model_training/validate_lora/Qwen-Image.py)|
|
| 95 |
+
|
| 96 |
+
</details>
|
| 97 |
+
|
| 98 |
+
### FLUX 系列
|
| 99 |
+
|
| 100 |
+
详细页面:[./examples/flux/](./examples/flux/)
|
| 101 |
+
|
| 102 |
+

|
| 103 |
+
|
| 104 |
+
<details>
|
| 105 |
+
|
| 106 |
+
<summary>快速开始</summary>
|
| 107 |
+
|
| 108 |
+
```python
|
| 109 |
+
import torch
|
| 110 |
+
from diffsynth.pipelines.flux_image_new import FluxImagePipeline, ModelConfig
|
| 111 |
+
|
| 112 |
+
pipe = FluxImagePipeline.from_pretrained(
|
| 113 |
+
torch_dtype=torch.bfloat16,
|
| 114 |
+
device="cuda",
|
| 115 |
+
model_configs=[
|
| 116 |
+
ModelConfig(model_id="black-forest-labs/FLUX.1-dev", origin_file_pattern="flux1-dev.safetensors"),
|
| 117 |
+
ModelConfig(model_id="black-forest-labs/FLUX.1-dev", origin_file_pattern="text_encoder/model.safetensors"),
|
| 118 |
+
ModelConfig(model_id="black-forest-labs/FLUX.1-dev", origin_file_pattern="text_encoder_2/"),
|
| 119 |
+
ModelConfig(model_id="black-forest-labs/FLUX.1-dev", origin_file_pattern="ae.safetensors"),
|
| 120 |
+
],
|
| 121 |
+
)
|
| 122 |
+
|
| 123 |
+
image = pipe(prompt="a cat", seed=0)
|
| 124 |
+
image.save("image.jpg")
|
| 125 |
+
```
|
| 126 |
+
|
| 127 |
+
</details>
|
| 128 |
+
|
| 129 |
+
<details>
|
| 130 |
+
|
| 131 |
+
<summary>模型总览</summary>
|
| 132 |
+
|
| 133 |
+
|模型 ID|额外参数|推理|低显存推理|全量训练|全量训练后验证|LoRA 训练|LoRA 训练后验证|
|
| 134 |
+
|-|-|-|-|-|-|-|-|
|
| 135 |
+
|[FLUX.1-dev](https://www.modelscope.cn/models/black-forest-labs/FLUX.1-dev)||[code](./examples/flux/model_inference/FLUX.1-dev.py)|[code](./examples/flux/model_inference_low_vram/FLUX.1-dev.py)|[code](./examples/flux/model_training/full/FLUX.1-dev.sh)|[code](./examples/flux/model_training/validate_full/FLUX.1-dev.py)|[code](./examples/flux/model_training/lora/FLUX.1-dev.sh)|[code](./examples/flux/model_training/validate_lora/FLUX.1-dev.py)|
|
| 136 |
+
|[FLUX.1-Krea-dev](https://www.modelscope.cn/models/black-forest-labs/FLUX.1-Krea-dev)||[code](./examples/flux/model_inference/FLUX.1-Krea-dev.py)|[code](./examples/flux/model_inference_low_vram/FLUX.1-Krea-dev.py)|[code](./examples/flux/model_training/full/FLUX.1-Krea-dev.sh)|[code](./examples/flux/model_training/validate_full/FLUX.1-Krea-dev.py)|[code](./examples/flux/model_training/lora/FLUX.1-Krea-dev.sh)|[code](./examples/flux/model_training/validate_lora/FLUX.1-Krea-dev.py)|
|
| 137 |
+
|[FLUX.1-Kontext-dev](https://www.modelscope.cn/models/black-forest-labs/FLUX.1-Kontext-dev)|`kontext_images`|[code](./examples/flux/model_inference/FLUX.1-Kontext-dev.py)|[code](./examples/flux/model_inference_low_vram/FLUX.1-Kontext-dev.py)|[code](./examples/flux/model_training/full/FLUX.1-Kontext-dev.sh)|[code](./examples/flux/model_training/validate_full/FLUX.1-Kontext-dev.py)|[code](./examples/flux/model_training/lora/FLUX.1-Kontext-dev.sh)|[code](./examples/flux/model_training/validate_lora/FLUX.1-Kontext-dev.py)|
|
| 138 |
+
|[FLUX.1-dev-Controlnet-Inpainting-Beta](https://www.modelscope.cn/models/alimama-creative/FLUX.1-dev-Controlnet-Inpainting-Beta)|`controlnet_inputs`|[code](./examples/flux/model_inference/FLUX.1-dev-Controlnet-Inpainting-Beta.py)|[code](./examples/flux/model_inference_low_vram/FLUX.1-dev-Controlnet-Inpainting-Beta.py)|[code](./examples/flux/model_training/full/FLUX.1-dev-Controlnet-Inpainting-Beta.sh)|[code](./examples/flux/model_training/validate_full/FLUX.1-dev-Controlnet-Inpainting-Beta.py)|[code](./examples/flux/model_training/lora/FLUX.1-dev-Controlnet-Inpainting-Beta.sh)|[code](./examples/flux/model_training/validate_lora/FLUX.1-dev-Controlnet-Inpainting-Beta.py)|
|
| 139 |
+
|[FLUX.1-dev-Controlnet-Union-alpha](https://www.modelscope.cn/models/InstantX/FLUX.1-dev-Controlnet-Union-alpha)|`controlnet_inputs`|[code](./examples/flux/model_inference/FLUX.1-dev-Controlnet-Union-alpha.py)|[code](./examples/flux/model_inference_low_vram/FLUX.1-dev-Controlnet-Union-alpha.py)|[code](./examples/flux/model_training/full/FLUX.1-dev-Controlnet-Union-alpha.sh)|[code](./examples/flux/model_training/validate_full/FLUX.1-dev-Controlnet-Union-alpha.py)|[code](./examples/flux/model_training/lora/FLUX.1-dev-Controlnet-Union-alpha.sh)|[code](./examples/flux/model_training/validate_lora/FLUX.1-dev-Controlnet-Union-alpha.py)|
|
| 140 |
+
|[FLUX.1-dev-Controlnet-Upscaler](https://www.modelscope.cn/models/jasperai/Flux.1-dev-Controlnet-Upscaler)|`controlnet_inputs`|[code](./examples/flux/model_inference/FLUX.1-dev-Controlnet-Upscaler.py)|[code](./examples/flux/model_inference_low_vram/FLUX.1-dev-Controlnet-Upscaler.py)|[code](./examples/flux/model_training/full/FLUX.1-dev-Controlnet-Upscaler.sh)|[code](./examples/flux/model_training/validate_full/FLUX.1-dev-Controlnet-Upscaler.py)|[code](./examples/flux/model_training/lora/FLUX.1-dev-Controlnet-Upscaler.sh)|[code](./examples/flux/model_training/validate_lora/FLUX.1-dev-Controlnet-Upscaler.py)|
|
| 141 |
+
|[FLUX.1-dev-IP-Adapter](https://www.modelscope.cn/models/InstantX/FLUX.1-dev-IP-Adapter)|`ipadapter_images`, `ipadapter_scale`|[code](./examples/flux/model_inference/FLUX.1-dev-IP-Adapter.py)|[code](./examples/flux/model_inference_low_vram/FLUX.1-dev-IP-Adapter.py)|[code](./examples/flux/model_training/full/FLUX.1-dev-IP-Adapter.sh)|[code](./examples/flux/model_training/validate_full/FLUX.1-dev-IP-Adapter.py)|[code](./examples/flux/model_training/lora/FLUX.1-dev-IP-Adapter.sh)|[code](./examples/flux/model_training/validate_lora/FLUX.1-dev-IP-Adapter.py)|
|
| 142 |
+
|[FLUX.1-dev-InfiniteYou](https://www.modelscope.cn/models/ByteDance/InfiniteYou)|`infinityou_id_image`, `infinityou_guidance`, `controlnet_inputs`|[code](./examples/flux/model_inference/FLUX.1-dev-InfiniteYou.py)|[code](./examples/flux/model_inference_low_vram/FLUX.1-dev-InfiniteYou.py)|[code](./examples/flux/model_training/full/FLUX.1-dev-InfiniteYou.sh)|[code](./examples/flux/model_training/validate_full/FLUX.1-dev-InfiniteYou.py)|[code](./examples/flux/model_training/lora/FLUX.1-dev-InfiniteYou.sh)|[code](./examples/flux/model_training/validate_lora/FLUX.1-dev-InfiniteYou.py)|
|
| 143 |
+
|[FLUX.1-dev-EliGen](https://www.modelscope.cn/models/DiffSynth-Studio/Eligen)|`eligen_entity_prompts`, `eligen_entity_masks`, `eligen_enable_on_negative`, `eligen_enable_inpaint`|[code](./examples/flux/model_inference/FLUX.1-dev-EliGen.py)|[code](./examples/flux/model_inference_low_vram/FLUX.1-dev-EliGen.py)|-|-|[code](./examples/flux/model_training/lora/FLUX.1-dev-EliGen.sh)|[code](./examples/flux/model_training/validate_lora/FLUX.1-dev-EliGen.py)|
|
| 144 |
+
|[FLUX.1-dev-LoRA-Encoder](https://www.modelscope.cn/models/DiffSynth-Studio/LoRA-Encoder-FLUX.1-Dev)|`lora_encoder_inputs`, `lora_encoder_scale`|[code](./examples/flux/model_inference/FLUX.1-dev-LoRA-Encoder.py)|[code](./examples/flux/model_inference_low_vram/FLUX.1-dev-LoRA-Encoder.py)|[code](./examples/flux/model_training/full/FLUX.1-dev-LoRA-Encoder.sh)|[code](./examples/flux/model_training/validate_full/FLUX.1-dev-LoRA-Encoder.py)|-|-|
|
| 145 |
+
|[FLUX.1-dev-LoRA-Fusion-Preview](https://modelscope.cn/models/DiffSynth-Studio/LoRAFusion-preview-FLUX.1-dev)||[code](./examples/flux/model_inference/FLUX.1-dev-LoRA-Fusion.py)|-|-|-|-|-|
|
| 146 |
+
|[Step1X-Edit](https://www.modelscope.cn/models/stepfun-ai/Step1X-Edit)|`step1x_reference_image`|[code](./examples/flux/model_inference/Step1X-Edit.py)|[code](./examples/flux/model_inference_low_vram/Step1X-Edit.py)|[code](./examples/flux/model_training/full/Step1X-Edit.sh)|[code](./examples/flux/model_training/validate_full/Step1X-Edit.py)|[code](./examples/flux/model_training/lora/Step1X-Edit.sh)|[code](./examples/flux/model_training/validate_lora/Step1X-Edit.py)|
|
| 147 |
+
|[FLEX.2-preview](https://www.modelscope.cn/models/ostris/Flex.2-preview)|`flex_inpaint_image`, `flex_inpaint_mask`, `flex_control_image`, `flex_control_strength`, `flex_control_stop`|[code](./examples/flux/model_inference/FLEX.2-preview.py)|[code](./examples/flux/model_inference_low_vram/FLEX.2-preview.py)|[code](./examples/flux/model_training/full/FLEX.2-preview.sh)|[code](./examples/flux/model_training/validate_full/FLEX.2-preview.py)|[code](./examples/flux/model_training/lora/FLEX.2-preview.sh)|[code](./examples/flux/model_training/validate_lora/FLEX.2-preview.py)|
|
| 148 |
+
|[Nexus-Gen](https://www.modelscope.cn/models/DiffSynth-Studio/Nexus-GenV2)|`nexus_gen_reference_image`|[code](./examples/flux/model_inference/Nexus-Gen-Editing.py)|[code](./examples/flux/model_inference_low_vram/Nexus-Gen-Editing.py)|[code](./examples/flux/model_training/full/Nexus-Gen.sh)|[code](./examples/flux/model_training/validate_full/Nexus-Gen.py)|[code](./examples/flux/model_training/lora/Nexus-Gen.sh)|[code](./examples/flux/model_training/validate_lora/Nexus-Gen.py)|
|
| 149 |
+
|
| 150 |
+
</details>
|
| 151 |
+
|
| 152 |
+
### Wan 系列
|
| 153 |
+
|
| 154 |
+
详细页面:[./examples/wanvideo/](./examples/wanvideo/)
|
| 155 |
+
|
| 156 |
+
https://github.com/user-attachments/assets/1d66ae74-3b02-40a9-acc3-ea95fc039314
|
| 157 |
+
|
| 158 |
+
<details>
|
| 159 |
+
|
| 160 |
+
<summary>快速开始</summary>
|
| 161 |
+
|
| 162 |
+
```python
|
| 163 |
+
import torch
|
| 164 |
+
from diffsynth import save_video
|
| 165 |
+
from diffsynth.pipelines.wan_video_new import WanVideoPipeline, ModelConfig
|
| 166 |
+
|
| 167 |
+
pipe = WanVideoPipeline.from_pretrained(
|
| 168 |
+
torch_dtype=torch.bfloat16,
|
| 169 |
+
device="cuda",
|
| 170 |
+
model_configs=[
|
| 171 |
+
ModelConfig(model_id="Wan-AI/Wan2.1-T2V-1.3B", origin_file_pattern="diffusion_pytorch_model*.safetensors", offload_device="cpu"),
|
| 172 |
+
ModelConfig(model_id="Wan-AI/Wan2.1-T2V-1.3B", origin_file_pattern="models_t5_umt5-xxl-enc-bf16.pth", offload_device="cpu"),
|
| 173 |
+
ModelConfig(model_id="Wan-AI/Wan2.1-T2V-1.3B", origin_file_pattern="Wan2.1_VAE.pth", offload_device="cpu"),
|
| 174 |
+
],
|
| 175 |
+
)
|
| 176 |
+
pipe.enable_vram_management()
|
| 177 |
+
|
| 178 |
+
video = pipe(
|
| 179 |
+
prompt="纪实摄影风格画面,一只活泼的小狗在绿茵茵的草地上迅速奔跑。小狗毛色棕黄,两只耳朵立起,神情专注而欢快。阳光洒在它身上,使得毛发看上去格外柔软而闪亮。背景是一片开阔的草地,偶尔点缀着几朵野花,远处隐约可见蓝天和几片白云。透视感鲜明,捕捉小狗奔跑时的动感和四周草地的生机。中景侧面移动视角。",
|
| 180 |
+
negative_prompt="色调艳丽,过曝,静态,细节模糊不清,字幕,风格,作品,画作,画面,静止,整体发灰,最差质量,低质量,JPEG压缩残留,丑陋的,残缺的,多余的手指,画得不好的手部,画得不好的脸部,畸形的,毁容的,形态畸形的肢体,手指融合,静止不动的画面,杂乱的背景,三条腿,背景人很多,倒着走",
|
| 181 |
+
seed=0, tiled=True,
|
| 182 |
+
)
|
| 183 |
+
save_video(video, "video1.mp4", fps=15, quality=5)
|
| 184 |
+
```
|
| 185 |
+
|
| 186 |
+
</details>
|
| 187 |
+
|
| 188 |
+
<details>
|
| 189 |
+
|
| 190 |
+
<summary>模型总览</summary>
|
| 191 |
+
|
| 192 |
+
|模型 ID|额外参数|推理|全量训练|全量训练后验证|LoRA 训练|LoRA 训练后验证|
|
| 193 |
+
|-|-|-|-|-|-|-|
|
| 194 |
+
|[Wan-AI/Wan2.2-I2V-A14B](https://modelscope.cn/models/Wan-AI/Wan2.2-I2V-A14B)|`input_image`|[code](./examples/wanvideo/model_inference/Wan2.2-I2V-A14B.py)|[code](./examples/wanvideo/model_training/full/Wan2.2-I2V-A14B.sh)|[code](./examples/wanvideo/model_training/validate_full/Wan2.2-I2V-A14B.py)|[code](./examples/wanvideo/model_training/lora/Wan2.2-I2V-A14B.sh)|[code](./examples/wanvideo/model_training/validate_lora/Wan2.2-I2V-A14B.py)|
|
| 195 |
+
|[Wan-AI/Wan2.2-T2V-A14B](https://modelscope.cn/models/Wan-AI/Wan2.2-T2V-A14B)||[code](./examples/wanvideo/model_inference/Wan2.2-T2V-A14B.py)|[code](./examples/wanvideo/model_training/full/Wan2.2-T2V-A14B.sh)|[code](./examples/wanvideo/model_training/validate_full/Wan2.2-T2V-A14B.py)|[code](./examples/wanvideo/model_training/lora/Wan2.2-T2V-A14B.sh)|[code](./examples/wanvideo/model_training/validate_lora/Wan2.2-T2V-A14B.py)|
|
| 196 |
+
|[Wan-AI/Wan2.2-TI2V-5B](https://modelscope.cn/models/Wan-AI/Wan2.2-TI2V-5B)|`input_image`|[code](./examples/wanvideo/model_inference/Wan2.2-TI2V-5B.py)|[code](./examples/wanvideo/model_training/full/Wan2.2-TI2V-5B.sh)|[code](./examples/wanvideo/model_training/validate_full/Wan2.2-TI2V-5B.py)|[code](./examples/wanvideo/model_training/lora/Wan2.2-TI2V-5B.sh)|[code](./examples/wanvideo/model_training/validate_lora/Wan2.2-TI2V-5B.py)|
|
| 197 |
+
|[Wan-AI/Wan2.1-T2V-1.3B](https://modelscope.cn/models/Wan-AI/Wan2.1-T2V-1.3B)||[code](./examples/wanvideo/model_inference/Wan2.1-T2V-1.3B.py)|[code](./examples/wanvideo/model_training/full/Wan2.1-T2V-1.3B.sh)|[code](./examples/wanvideo/model_training/validate_full/Wan2.1-T2V-1.3B.py)|[code](./examples/wanvideo/model_training/lora/Wan2.1-T2V-1.3B.sh)|[code](./examples/wanvideo/model_training/validate_lora/Wan2.1-T2V-1.3B.py)|
|
| 198 |
+
|[Wan-AI/Wan2.1-T2V-14B](https://modelscope.cn/models/Wan-AI/Wan2.1-T2V-14B)||[code](./examples/wanvideo/model_inference/Wan2.1-T2V-14B.py)|[code](./examples/wanvideo/model_training/full/Wan2.1-T2V-14B.sh)|[code](./examples/wanvideo/model_training/validate_full/Wan2.1-T2V-14B.py)|[code](./examples/wanvideo/model_training/lora/Wan2.1-T2V-14B.sh)|[code](./examples/wanvideo/model_training/validate_lora/Wan2.1-T2V-14B.py)|
|
| 199 |
+
|[Wan-AI/Wan2.1-I2V-14B-480P](https://modelscope.cn/models/Wan-AI/Wan2.1-I2V-14B-480P)|`input_image`|[code](./examples/wanvideo/model_inference/Wan2.1-I2V-14B-480P.py)|[code](./examples/wanvideo/model_training/full/Wan2.1-I2V-14B-480P.sh)|[code](./examples/wanvideo/model_training/validate_full/Wan2.1-I2V-14B-480P.py)|[code](./examples/wanvideo/model_training/lora/Wan2.1-I2V-14B-480P.sh)|[code](./examples/wanvideo/model_training/validate_lora/Wan2.1-I2V-14B-480P.py)|
|
| 200 |
+
|[Wan-AI/Wan2.1-I2V-14B-720P](https://modelscope.cn/models/Wan-AI/Wan2.1-I2V-14B-720P)|`input_image`|[code](./examples/wanvideo/model_inference/Wan2.1-I2V-14B-720P.py)|[code](./examples/wanvideo/model_training/full/Wan2.1-I2V-14B-720P.sh)|[code](./examples/wanvideo/model_training/validate_full/Wan2.1-I2V-14B-720P.py)|[code](./examples/wanvideo/model_training/lora/Wan2.1-I2V-14B-720P.sh)|[code](./examples/wanvideo/model_training/validate_lora/Wan2.1-I2V-14B-720P.py)|
|
| 201 |
+
|[Wan-AI/Wan2.1-FLF2V-14B-720P](https://modelscope.cn/models/Wan-AI/Wan2.1-FLF2V-14B-720P)|`input_image`, `end_image`|[code](./examples/wanvideo/model_inference/Wan2.1-FLF2V-14B-720P.py)|[code](./examples/wanvideo/model_training/full/Wan2.1-FLF2V-14B-720P.sh)|[code](./examples/wanvideo/model_training/validate_full/Wan2.1-FLF2V-14B-720P.py)|[code](./examples/wanvideo/model_training/lora/Wan2.1-FLF2V-14B-720P.sh)|[code](./examples/wanvideo/model_training/validate_lora/Wan2.1-FLF2V-14B-720P.py)|
|
| 202 |
+
|[PAI/Wan2.1-Fun-1.3B-InP](https://modelscope.cn/models/PAI/Wan2.1-Fun-1.3B-InP)|`input_image`, `end_image`|[code](./examples/wanvideo/model_inference/Wan2.1-Fun-1.3B-InP.py)|[code](./examples/wanvideo/model_training/full/Wan2.1-Fun-1.3B-InP.sh)|[code](./examples/wanvideo/model_training/validate_full/Wan2.1-Fun-1.3B-InP.py)|[code](./examples/wanvideo/model_training/lora/Wan2.1-Fun-1.3B-InP.sh)|[code](./examples/wanvideo/model_training/validate_lora/Wan2.1-Fun-1.3B-InP.py)|
|
| 203 |
+
|[PAI/Wan2.1-Fun-1.3B-Control](https://modelscope.cn/models/PAI/Wan2.1-Fun-1.3B-Control)|`control_video`|[code](./examples/wanvideo/model_inference/Wan2.1-Fun-1.3B-Control.py)|[code](./examples/wanvideo/model_training/full/Wan2.1-Fun-1.3B-Control.sh)|[code](./examples/wanvideo/model_training/validate_full/Wan2.1-Fun-1.3B-Control.py)|[code](./examples/wanvideo/model_training/lora/Wan2.1-Fun-1.3B-Control.sh)|[code](./examples/wanvideo/model_training/validate_lora/Wan2.1-Fun-1.3B-Control.py)|
|
| 204 |
+
|[PAI/Wan2.1-Fun-14B-InP](https://modelscope.cn/models/PAI/Wan2.1-Fun-14B-InP)|`input_image`, `end_image`|[code](./examples/wanvideo/model_inference/Wan2.1-Fun-14B-InP.py)|[code](./examples/wanvideo/model_training/full/Wan2.1-Fun-14B-InP.sh)|[code](./examples/wanvideo/model_training/validate_full/Wan2.1-Fun-14B-InP.py)|[code](./examples/wanvideo/model_training/lora/Wan2.1-Fun-14B-InP.sh)|[code](./examples/wanvideo/model_training/validate_lora/Wan2.1-Fun-14B-InP.py)|
|
| 205 |
+
|[PAI/Wan2.1-Fun-14B-Control](https://modelscope.cn/models/PAI/Wan2.1-Fun-14B-Control)|`control_video`|[code](./examples/wanvideo/model_inference/Wan2.1-Fun-14B-Control.py)|[code](./examples/wanvideo/model_training/full/Wan2.1-Fun-14B-Control.sh)|[code](./examples/wanvideo/model_training/validate_full/Wan2.1-Fun-14B-Control.py)|[code](./examples/wanvideo/model_training/lora/Wan2.1-Fun-14B-Control.sh)|[code](./examples/wanvideo/model_training/validate_lora/Wan2.1-Fun-14B-Control.py)|
|
| 206 |
+
|[PAI/Wan2.1-Fun-V1.1-1.3B-Control](https://modelscope.cn/models/PAI/Wan2.1-Fun-V1.1-1.3B-Control)|`control_video`, `reference_image`|[code](./examples/wanvideo/model_inference/Wan2.1-Fun-V1.1-1.3B-Control.py)|[code](./examples/wanvideo/model_training/full/Wan2.1-Fun-V1.1-1.3B-Control.sh)|[code](./examples/wanvideo/model_training/validate_full/Wan2.1-Fun-V1.1-1.3B-Control.py)|[code](./examples/wanvideo/model_training/lora/Wan2.1-Fun-V1.1-1.3B-Control.sh)|[code](./examples/wanvideo/model_training/validate_lora/Wan2.1-Fun-V1.1-1.3B-Control.py)|
|
| 207 |
+
|[PAI/Wan2.1-Fun-V1.1-14B-Control](https://modelscope.cn/models/PAI/Wan2.1-Fun-V1.1-14B-Control)|`control_video`, `reference_image`|[code](./examples/wanvideo/model_inference/Wan2.1-Fun-V1.1-14B-Control.py)|[code](./examples/wanvideo/model_training/full/Wan2.1-Fun-V1.1-14B-Control.sh)|[code](./examples/wanvideo/model_training/validate_full/Wan2.1-Fun-V1.1-14B-Control.py)|[code](./examples/wanvideo/model_training/lora/Wan2.1-Fun-V1.1-14B-Control.sh)|[code](./examples/wanvideo/examples/wanmodel_training/validate_lora/Wan2.1-Fun-V1.1-14B-Control.py)|
|
| 208 |
+
|[PAI/Wan2.1-Fun-V1.1-1.3B-InP](https://modelscope.cn/models/PAI/Wan2.1-Fun-V1.1-1.3B-InP)|`input_image`, `end_image`|[code](./examples/wanvideo/model_inference/Wan2.1-Fun-V1.1-1.3B-InP.py)|[code](./examples/wanvideo/model_training/full/Wan2.1-Fun-V1.1-1.3B-InP.sh)|[code](./examples/wanvideo/model_training/validate_full/Wan2.1-Fun-V1.1-1.3B-InP.py)|[code](./examples/wanvideo/model_training/lora/Wan2.1-Fun-V1.1-1.3B-InP.sh)|[code](./examples/wanvideo/model_training/validate_lora/Wan2.1-Fun-V1.1-1.3B-InP.py)|
|
| 209 |
+
|[PAI/Wan2.1-Fun-V1.1-14B-InP](https://modelscope.cn/models/PAI/Wan2.1-Fun-V1.1-14B-InP)|`input_image`, `end_image`|[code](./examples/wanvideo/model_inference/Wan2.1-Fun-V1.1-14B-InP.py)|[code](./examples/wanvideo/model_training/full/Wan2.1-Fun-V1.1-14B-InP.sh)|[code](./examples/wanvideo/model_training/validate_full/Wan2.1-Fun-V1.1-14B-InP.py)|[code](./examples/wanvideo/model_training/lora/Wan2.1-Fun-V1.1-14B-InP.sh)|[code](./examples/wanvideo/model_training/validate_lora/Wan2.1-Fun-V1.1-14B-InP.py)|
|
| 210 |
+
|[PAI/Wan2.1-Fun-V1.1-1.3B-Control-Camera](https://modelscope.cn/models/PAI/Wan2.1-Fun-V1.1-1.3B-Control-Camera)|`control_camera_video`, `input_image`|[code](./examples/wanvideo/model_inference/Wan2.1-Fun-V1.1-1.3B-Control-Camera.py)|[code](./examples/wanvideo/model_training/full/Wan2.1-Fun-V1.1-1.3B-Control-Camera.sh)|[code](./examples/wanvideo/model_training/validate_full/Wan2.1-Fun-V1.1-1.3B-Control-Camera.py)|[code](./examples/wanvideo/model_training/lora/Wan2.1-Fun-V1.1-1.3B-Control-Camera.sh)|[code](./examples/wanvideo/model_training/validate_lora/Wan2.1-Fun-V1.1-1.3B-Control-Camera.py)|
|
| 211 |
+
|[PAI/Wan2.1-Fun-V1.1-14B-Control-Camera](https://modelscope.cn/models/PAI/Wan2.1-Fun-V1.1-14B-Control-Camera)|`control_camera_video`, `input_image`|[code](./examples/wanvideo/model_inference/Wan2.1-Fun-V1.1-14B-Control-Camera.py)|[code](./examples/wanvideo/model_training/full/Wan2.1-Fun-V1.1-14B-Control-Camera.sh)|[code](./examples/wanvideo/model_training/validate_full/Wan2.1-Fun-V1.1-14B-Control-Camera.py)|[code](./examples/wanvideo/model_training/lora/Wan2.1-Fun-V1.1-14B-Control-Camera.sh)|[code](./examples/wanvideo/model_training/validate_lora/Wan2.1-Fun-V1.1-14B-Control-Camera.py)|
|
| 212 |
+
|[iic/VACE-Wan2.1-1.3B-Preview](https://modelscope.cn/models/iic/VACE-Wan2.1-1.3B-Preview)|`vace_control_video`, `vace_reference_image`|[code](./examples/wanvideo/model_inference/Wan2.1-VACE-1.3B-Preview.py)|[code](./examples/wanvideo/model_training/full/Wan2.1-VACE-1.3B-Preview.sh)|[code](./examples/wanvideo/model_training/validate_full/Wan2.1-VACE-1.3B-Preview.py)|[code](./examples/wanvideo/model_training/lora/Wan2.1-VACE-1.3B-Preview.sh)|[code](./examples/wanvideo/model_training/validate_lora/Wan2.1-VACE-1.3B-Preview.py)|
|
| 213 |
+
|[Wan-AI/Wan2.1-VACE-1.3B](https://modelscope.cn/models/Wan-AI/Wan2.1-VACE-1.3B)|`vace_control_video`, `vace_reference_image`|[code](./examples/wanvideo/model_inference/Wan2.1-VACE-1.3B.py)|[code](./examples/wanvideo/model_training/full/Wan2.1-VACE-1.3B.sh)|[code](./examples/wanvideo/model_training/validate_full/Wan2.1-VACE-1.3B.py)|[code](./examples/wanvideo/model_training/lora/Wan2.1-VACE-1.3B.sh)|[code](./examples/wanvideo/model_training/validate_lora/Wan2.1-VACE-1.3B.py)|
|
| 214 |
+
|[Wan-AI/Wan2.1-VACE-14B](https://modelscope.cn/models/Wan-AI/Wan2.1-VACE-14B)|`vace_control_video`, `vace_reference_image`|[code](./examples/wanvideo/model_inference/Wan2.1-VACE-14B.py)|[code](./examples/wanvideo/model_training/full/Wan2.1-VACE-14B.sh)|[code](./examples/wanvideo/model_training/validate_full/Wan2.1-VACE-14B.py)|[code](./examples/wanvideo/model_training/lora/Wan2.1-VACE-14B.sh)|[code](./examples/wanvideo/model_training/validate_lora/Wan2.1-VACE-14B.py)|
|
| 215 |
+
|[DiffSynth-Studio/Wan2.1-1.3b-speedcontrol-v1](https://modelscope.cn/models/DiffSynth-Studio/Wan2.1-1.3b-speedcontrol-v1)|`motion_bucket_id`|[code](./examples/wanvideo/model_inference/Wan2.1-1.3b-speedcontrol-v1.py)|[code](./examples/wanvideo/model_training/full/Wan2.1-1.3b-speedcontrol-v1.sh)|[code](./examples/wanvideo/model_training/validate_full/Wan2.1-1.3b-speedcontrol-v1.py)|[code](./examples/wanvideo/model_training/lora/Wan2.1-1.3b-speedcontrol-v1.sh)|[code](./examples/wanvideo/model_training/validate_lora/Wan2.1-1.3b-speedcontrol-v1.py)|
|
| 216 |
+
|
| 217 |
+
</details>
|
| 218 |
+
|
| 219 |
+
|
| 220 |
+
|
| 221 |
+
### 更多模型
|
| 222 |
+
|
| 223 |
+
|
| 224 |
+
|
| 225 |
+
<details>
|
| 226 |
+
<summary>图像生成模型</summary>
|
| 227 |
+
|
| 228 |
+
详细页面:[./examples/image_synthesis/](./examples/image_synthesis/)
|
| 229 |
+
|
| 230 |
+
|FLUX|Stable Diffusion 3|
|
| 231 |
+
|-|-|
|
| 232 |
+
|||
|
| 233 |
+
|
| 234 |
+
|Kolors|Hunyuan-DiT|
|
| 235 |
+
|-|-|
|
| 236 |
+
|||
|
| 237 |
+
|
| 238 |
+
|Stable Diffusion|Stable Diffusion XL|
|
| 239 |
+
|-|-|
|
| 240 |
+
|||
|
| 241 |
+
|
| 242 |
+
</details>
|
| 243 |
+
|
| 244 |
+
|
| 245 |
+
|
| 246 |
+
<details>
|
| 247 |
+
<summary>视频生成模型</summary>
|
| 248 |
+
|
| 249 |
+
- HunyuanVideo:[./examples/HunyuanVideo/](./examples/HunyuanVideo/)
|
| 250 |
+
|
| 251 |
+
https://github.com/user-attachments/assets/48dd24bb-0cc6-40d2-88c3-10feed3267e9
|
| 252 |
+
|
| 253 |
+
- StepVideo:[./examples/stepvideo/](./examples/stepvideo/)
|
| 254 |
+
|
| 255 |
+
https://github.com/user-attachments/assets/5954fdaa-a3cf-45a3-bd35-886e3cc4581b
|
| 256 |
+
|
| 257 |
+
- CogVideoX:[./examples/CogVideoX/](./examples/CogVideoX/)
|
| 258 |
+
|
| 259 |
+
https://github.com/user-attachments/assets/26b044c1-4a60-44a4-842f-627ff289d006
|
| 260 |
+
|
| 261 |
+
</details>
|
| 262 |
+
|
| 263 |
+
|
| 264 |
+
|
| 265 |
+
<details>
|
| 266 |
+
<summary>图像质量评估模型</summary>
|
| 267 |
+
|
| 268 |
+
我们集成了一系列图像质量评估模型,这些模型可以用于图像生成模型的评测、对齐训练等场景中。
|
| 269 |
+
|
| 270 |
+
详细页面:[./examples/image_quality_metric/](./examples/image_quality_metric/)
|
| 271 |
+
|
| 272 |
+
* [ImageReward](https://github.com/THUDM/ImageReward)
|
| 273 |
+
* [Aesthetic](https://github.com/christophschuhmann/improved-aesthetic-predictor)
|
| 274 |
+
* [PickScore](https://github.com/yuvalkirstain/pickscore)
|
| 275 |
+
* [CLIP](https://github.com/openai/CLIP)
|
| 276 |
+
* [HPSv2](https://github.com/tgxs002/HPSv2)
|
| 277 |
+
* [HPSv2.1](https://github.com/tgxs002/HPSv2)
|
| 278 |
+
* [MPS](https://github.com/Kwai-Kolors/MPS)
|
| 279 |
+
|
| 280 |
+
</details>
|
| 281 |
+
|
| 282 |
+
|
| 283 |
+
|
| 284 |
+
## 创新成果
|
| 285 |
+
|
| 286 |
+
DiffSynth-Studio 不仅仅是一个工程化的模型框架,更是创新成果的孵化器。
|
| 287 |
+
|
| 288 |
+
<details>
|
| 289 |
+
<summary>Nexus-Gen: 统一架构的图像理解、生成、编辑</summary>
|
| 290 |
+
|
| 291 |
+
- 详细页面:https://github.com/modelscope/Nexus-Gen
|
| 292 |
+
- 论文:[Nexus-Gen: Unified Image Understanding, Generation, and Editing via Prefilled Autoregression in Shared Embedding Space](https://arxiv.org/pdf/2504.21356)
|
| 293 |
+
- 模型:[ModelScope](https://www.modelscope.cn/models/DiffSynth-Studio/Nexus-GenV2), [HuggingFace](https://huggingface.co/modelscope/Nexus-GenV2)
|
| 294 |
+
- 数据集:[ModelScope Dataset](https://www.modelscope.cn/datasets/DiffSynth-Studio/Nexus-Gen-Training-Dataset)
|
| 295 |
+
- 在线体验:[ModelScope Nexus-Gen Studio](https://www.modelscope.cn/studios/DiffSynth-Studio/Nexus-Gen)
|
| 296 |
+
|
| 297 |
+

|
| 298 |
+
|
| 299 |
+
</details>
|
| 300 |
+
|
| 301 |
+
|
| 302 |
+
|
| 303 |
+
<details>
|
| 304 |
+
<summary>ArtAug: 图像生成模型的美学提升</summary>
|
| 305 |
+
|
| 306 |
+
- 详细页面:[./examples/ArtAug/](./examples/ArtAug/)
|
| 307 |
+
- 论文:[ArtAug: Enhancing Text-to-Image Generation through Synthesis-Understanding Interaction](https://arxiv.org/abs/2412.12888)
|
| 308 |
+
- 模型:[ModelScope](https://www.modelscope.cn/models/DiffSynth-Studio/ArtAug-lora-FLUX.1dev-v1), [HuggingFace](https://huggingface.co/ECNU-CILab/ArtAug-lora-FLUX.1dev-v1)
|
| 309 |
+
- 在线体验:[ModelScope AIGC Tab](https://www.modelscope.cn/aigc/imageGeneration?tab=advanced&versionId=7228&modelType=LoRA&sdVersion=FLUX_1&modelUrl=modelscope%3A%2F%2FDiffSynth-Studio%2FArtAug-lora-FLUX.1dev-v1%3Frevision%3Dv1.0)
|
| 310 |
+
|
| 311 |
+
|FLUX.1-dev|FLUX.1-dev + ArtAug LoRA|
|
| 312 |
+
|-|-|
|
| 313 |
+
|||
|
| 314 |
+
|
| 315 |
+
</details>
|
| 316 |
+
|
| 317 |
+
|
| 318 |
+
|
| 319 |
+
<details>
|
| 320 |
+
|
| 321 |
+
<summary>EliGen: 精准的图像分区控制</summary>
|
| 322 |
+
|
| 323 |
+
- 详细页面:[./examples/EntityControl/](./examples/EntityControl/)
|
| 324 |
+
- 论文:[EliGen: Entity-Level Controlled Image Generation with Regional Attention](https://arxiv.org/abs/2501.01097)
|
| 325 |
+
- 模型:[ModelScope](https://www.modelscope.cn/models/DiffSynth-Studio/Eligen), [HuggingFace](https://huggingface.co/modelscope/EliGen)
|
| 326 |
+
- 在线体验:[ModelScope EliGen Studio](https://www.modelscope.cn/studios/DiffSynth-Studio/EliGen)
|
| 327 |
+
- 数据集:[EliGen Train Set](https://www.modelscope.cn/datasets/DiffSynth-Studio/EliGenTrainSet)
|
| 328 |
+
|
| 329 |
+
|实体控制区域|生成图像|
|
| 330 |
+
|-|-|
|
| 331 |
+
|||
|
| 332 |
+
|
| 333 |
+
</details>
|
| 334 |
+
|
| 335 |
+
|
| 336 |
+
|
| 337 |
+
<details>
|
| 338 |
+
|
| 339 |
+
<summary>ExVideo: 视频生成模型的扩展训练</summary>
|
| 340 |
+
|
| 341 |
+
- 项目页面:[Project Page](https://ecnu-cilab.github.io/ExVideoProjectPage/)
|
| 342 |
+
- 论文:[ExVideo: Extending Video Diffusion Models via Parameter-Efficient Post-Tuning](https://arxiv.org/abs/2406.14130)
|
| 343 |
+
- 代码样例:[./examples/ExVideo/](./examples/ExVideo/)
|
| 344 |
+
- 模型:[ModelScope](https://modelscope.cn/models/ECNU-CILab/ExVideo-SVD-128f-v1), [HuggingFace](https://huggingface.co/ECNU-CILab/ExVideo-SVD-128f-v1)
|
| 345 |
+
|
| 346 |
+
https://github.com/modelscope/DiffSynth-Studio/assets/35051019/d97f6aa9-8064-4b5b-9d49-ed6001bb9acc
|
| 347 |
+
|
| 348 |
+
</details>
|
| 349 |
+
|
| 350 |
+
|
| 351 |
+
|
| 352 |
+
<details>
|
| 353 |
+
|
| 354 |
+
<summary>Diffutoon: 高分辨率动漫风格视频渲染</summary>
|
| 355 |
+
|
| 356 |
+
- 项目页面:[Project Page](https://ecnu-cilab.github.io/DiffutoonProjectPage/)
|
| 357 |
+
- 论文:[Diffutoon: High-Resolution Editable Toon Shading via Diffusion Models](https://arxiv.org/abs/2401.16224)
|
| 358 |
+
- 代码样例:[./examples/Diffutoon/](./examples/Diffutoon/)
|
| 359 |
+
|
| 360 |
+
https://github.com/Artiprocher/DiffSynth-Studio/assets/35051019/b54c05c5-d747-4709-be5e-b39af82404dd
|
| 361 |
+
|
| 362 |
+
</details>
|
| 363 |
+
|
| 364 |
+
|
| 365 |
+
|
| 366 |
+
<details>
|
| 367 |
+
|
| 368 |
+
<summary>DiffSynth: 本项目的初代版本</summary>
|
| 369 |
+
|
| 370 |
+
- 项目页面:[Project Page](https://ecnu-cilab.github.io/DiffSynth.github.io/)
|
| 371 |
+
- 论文:[DiffSynth: Latent In-Iteration Deflickering for Realistic Video Synthesis](https://arxiv.org/abs/2308.03463)
|
| 372 |
+
- 代码样例:[./examples/diffsynth/](./examples/diffsynth/)
|
| 373 |
+
|
| 374 |
+
https://github.com/Artiprocher/DiffSynth-Studio/assets/35051019/59fb2f7b-8de0-4481-b79f-0c3a7361a1ea
|
| 375 |
+
|
| 376 |
+
</details>
|
| 377 |
+
|
| 378 |
+
|
| 379 |
+
|
| 380 |
+
## 更新历史
|
| 381 |
+
- **2025年8月1日** [FLUX.1-Krea-dev](https://www.modelscope.cn/models/black-forest-labs/FLUX.1-Krea-dev) 开源,这是一个专注于美学摄影的文生图模型。我们第一时间提供了全方位支持,包括低显存逐层 offload、LoRA 训练、全量训练。详细信息请参考 [./examples/flux/](./examples/flux/)。
|
| 382 |
+
|
| 383 |
+
- **2025年8月4日** 🔥 Qwen-Image 开源,欢迎图像生成模型家族新成员!
|
| 384 |
+
|
| 385 |
+
- **2025年7月28日** Wan 2.2 开源,我们第一时间提供了全方位支持,包括低显存逐层 offload、FP8 量化、序列并行、LoRA 训练、全量训练。详细信息请参考 [./examples/wanvideo/](./examples/wanvideo/)。
|
| 386 |
+
|
| 387 |
+
- **2025年7月11日** 我们提出 Nexus-Gen,一个将大语言模型(LLM)的语言推理能力与扩散模型的图像生成能力相结合的统一框架。该框架支持无缝的图像理解、生成和编辑任务。
|
| 388 |
+
- 论文: [Nexus-Gen: Unified Image Understanding, Generation, and Editing via Prefilled Autoregression in Shared Embedding Space](https://arxiv.org/pdf/2504.21356)
|
| 389 |
+
- Github 仓库: https://github.com/modelscope/Nexus-Gen
|
| 390 |
+
- 模型: [ModelScope](https://www.modelscope.cn/models/DiffSynth-Studio/Nexus-GenV2), [HuggingFace](https://huggingface.co/modelscope/Nexus-GenV2)
|
| 391 |
+
- 训练数据集: [ModelScope Dataset](https://www.modelscope.cn/datasets/DiffSynth-Studio/Nexus-Gen-Training-Dataset)
|
| 392 |
+
- 在线体验: [ModelScope Nexus-Gen Studio](https://www.modelscope.cn/studios/DiffSynth-Studio/Nexus-Gen)
|
| 393 |
+
|
| 394 |
+
- **2025年6月15日** ModelScope 官方评测框架 [EvalScope](https://github.com/modelscope/evalscope) 现已支持文生图生成评测。请参考[最佳实践](https://evalscope.readthedocs.io/zh-cn/latest/best_practice/t2i_eval.html)指南进行尝试。
|
| 395 |
+
|
| 396 |
+
- **2025年3月25日** 我们的新开源项目 [DiffSynth-Engine](https://github.com/modelscope/DiffSynth-Engine) 现已开源!专注于稳定的模型部署,面向工业界,提供更好的工程支持、更高的计算性能和更稳定的功能。
|
| 397 |
+
|
| 398 |
+
<details>
|
| 399 |
+
<summary>更多</summary>
|
| 400 |
+
|
| 401 |
+
- **2025年3月31日** 我们支持 InfiniteYou,一种用于 FLUX 的人脸特征保留方法。更多细节请参考 [./examples/InfiniteYou/](./examples/InfiniteYou/)。
|
| 402 |
+
|
| 403 |
+
- **2025年3月13日** 我们支持 HunyuanVideo-I2V,即腾讯开源的 HunyuanVideo 的图像到视频生成版本。更多细节请参考 [./examples/HunyuanVideo/](./examples/HunyuanVideo/)。
|
| 404 |
+
|
| 405 |
+
- **2025年2月25日** 我们支持 Wan-Video,这是阿里巴巴开源的一系列最先进的视频合成模型。详见 [./examples/wanvideo/](./examples/wanvideo/)。
|
| 406 |
+
|
| 407 |
+
- **2025年2月17日** 我们支持 [StepVideo](https://modelscope.cn/models/stepfun-ai/stepvideo-t2v/summary)!先进的视频合成模型!详见 [./examples/stepvideo](./examples/stepvideo/)。
|
| 408 |
+
|
| 409 |
+
- **2024年12月31日** 我们提出 EliGen,一种用于精确实体级别控制的文本到图像生成的新框架,并辅以修复融合管道,将其能力扩展到图像修复任务。EliGen 可以无缝集成现有的社区模型,如 IP-Adapter 和 In-Context LoRA,提升其通用性。更多详情,请见 [./examples/EntityControl](./examples/EntityControl/)。
|
| 410 |
+
- 论文: [EliGen: Entity-Level Controlled Image Generation with Regional Attention](https://arxiv.org/abs/2501.01097)
|
| 411 |
+
- 模型: [ModelScope](https://www.modelscope.cn/models/DiffSynth-Studio/Eligen), [HuggingFace](https://huggingface.co/modelscope/EliGen)
|
| 412 |
+
- 在线体验: [ModelScope EliGen Studio](https://www.modelscope.cn/studios/DiffSynth-Studio/EliGen)
|
| 413 |
+
- 训练数据集: [EliGen Train Set](https://www.modelscope.cn/datasets/DiffSynth-Studio/EliGenTrainSet)
|
| 414 |
+
|
| 415 |
+
- **2024年12月19日** 我们为 HunyuanVideo 实现了高级显存管理,使得在 24GB 显存下可以生成分辨率为 129x720x1280 的视频,或在仅 6GB 显存下生成分辨率为 129x512x384 的视频。更多细节请参考 [./examples/HunyuanVideo/](./examples/HunyuanVideo/)。
|
| 416 |
+
|
| 417 |
+
- **2024年12月18日** 我们提出 ArtAug,一种通过合成-理解交互来改进文生图模型的方法。我们以 LoRA 格式为 FLUX.1-dev 训练了一个 ArtAug 增强模块。该模型将 Qwen2-VL-72B 的美学理解融入 FLUX.1-dev,从而提升了生成图像的质量。
|
| 418 |
+
- 论文: https://arxiv.org/abs/2412.12888
|
| 419 |
+
- 示例: https://github.com/modelscope/DiffSynth-Studio/tree/main/examples/ArtAug
|
| 420 |
+
- 模型: [ModelScope](https://www.modelscope.cn/models/DiffSynth-Studio/ArtAug-lora-FLUX.1dev-v1), [HuggingFace](https://huggingface.co/ECNU-CILab/ArtAug-lora-FLUX.1dev-v1)
|
| 421 |
+
- 演示: [ModelScope](https://modelscope.cn/aigc/imageGeneration?tab=advanced&versionId=7228&modelType=LoRA&sdVersion=FLUX_1&modelUrl=modelscope%3A%2F%2FDiffSynth-Studio%2FArtAug-lora-FLUX.1dev-v1%3Frevision%3Dv1.0), HuggingFace (即将上线)
|
| 422 |
+
|
| 423 |
+
- **2024年10月25日** 我们提供了广泛的 FLUX ControlNet 支持。该项目支持许多不同的 ControlNet 模型,并且可以自由组合,即使它们的结构不同。此外,ControlNet 模型兼容高分辨率优化和分区控制技术,能够实现非常强大的可控图像生成。详见 [`./examples/ControlNet/`](./examples/ControlNet/)。
|
| 424 |
+
|
| 425 |
+
- **2024年10月8日** 我们发布了基于 CogVideoX-5B 和 ExVideo 的扩展 LoRA。您可以从 [ModelScope](https://modelscope.cn/models/ECNU-CILab/ExVideo-CogVideoX-LoRA-129f-v1) 或 [HuggingFace](https://huggingface.co/ECNU-CILab/ExVideo-CogVideoX-LoRA-129f-v1) 下载此模型。
|
| 426 |
+
|
| 427 |
+
- **2024年8月22日** 本项目现已支持 CogVideoX-5B。详见 [此处](/examples/video_synthesis/)。我们为这个文生视频模型提供了几个有趣的功能,包括:
|
| 428 |
+
- 文本到视频
|
| 429 |
+
- 视频编辑
|
| 430 |
+
- 自我超分
|
| 431 |
+
- 视频插帧
|
| 432 |
+
|
| 433 |
+
- **2024年8月22日** 我们实现了一个有趣的画笔功能,支持所有文生图模型。现在,您可以在 AI 的辅助下使用画笔创作惊艳的图像了!
|
| 434 |
+
- 在我们的 [WebUI](#usage-in-webui) 中使用它。
|
| 435 |
+
|
| 436 |
+
- **2024年8月21日** DiffSynth-Studio 现已支持 FLUX。
|
| 437 |
+
- 启用 CFG 和高分辨率修复以提升视觉质量。详见 [此处](/examples/image_synthesis/README.md)
|
| 438 |
+
- LoRA、ControlNet 和其他附加模型将很快推出。
|
| 439 |
+
|
| 440 |
+
- **2024年6月21日** 我们提出 ExVideo,一种旨在增强视频生成模型能力的后训练微调技术。我们将 Stable Video Diffusion 进行了扩展,实现了长达 128 帧的长视频生成。
|
| 441 |
+
- [项目页面](https://ecnu-cilab.github.io/ExVideoProjectPage/)
|
| 442 |
+
- 源代码已在此仓库中发布。详见 [`examples/ExVideo`](./examples/ExVideo/)。
|
| 443 |
+
- 模型已发布于 [HuggingFace](https://huggingface.co/ECNU-CILab/ExVideo-SVD-128f-v1) 和 [ModelScope](https://modelscope.cn/models/ECNU-CILab/ExVideo-SVD-128f-v1)。
|
| 444 |
+
- 技术报告已发布于 [arXiv](https://arxiv.org/abs/2406.14130)。
|
| 445 |
+
- 您可以在此 [演示](https://huggingface.co/spaces/modelscope/ExVideo-SVD-128f-v1) 中试用 ExVideo!
|
| 446 |
+
|
| 447 |
+
- **2024年6月13日** DiffSynth Studio 已迁移至 ModelScope。开发团队也从“我”转变为“我们”。当然,我仍会参与后续的开发和维护工作。
|
| 448 |
+
|
| 449 |
+
- **2024年1月29日** 我们提出 Diffutoon,这是一个出色的卡通着色解决方案。
|
| 450 |
+
- [项目页面](https://ecnu-cilab.github.io/DiffutoonProjectPage/)
|
| 451 |
+
- 源代码已在此项目中发布。
|
| 452 |
+
- 技术报告(IJCAI 2024)已发布于 [arXiv](https://arxiv.org/abs/2401.16224)。
|
| 453 |
+
|
| 454 |
+
- **2023年12月8日** 我们决定启动一个新项目,旨在释放扩散模型的潜力,尤其是在视频合成方面。该项目的开发工作正式开始。
|
| 455 |
+
|
| 456 |
+
- **2023年11月15日** 我们提出 FastBlend,一种强大的视频去闪烁算法。
|
| 457 |
+
- sd-webui 扩展已发布于 [GitHub](https://github.com/Artiprocher/sd-webui-fastblend)。
|
| 458 |
+
- 演示视频已在 Bilibili 上展示,包含三个任务:
|
| 459 |
+
- [视频去闪烁](https://www.bilibili.com/video/BV1d94y1W7PE)
|
| 460 |
+
- [视频插帧](https://www.bilibili.com/video/BV1Lw411m71p)
|
| 461 |
+
- [图像驱动的视频渲染](https://www.bilibili.com/video/BV1RB4y1Z7LF)
|
| 462 |
+
- 技术报告已发布于 [arXiv](https://arxiv.org/abs/2311.09265)。
|
| 463 |
+
- 其他用户开发的非官方 ComfyUI 扩展已发布于 [GitHub](https://github.com/AInseven/ComfyUI-fastblend)。
|
| 464 |
+
|
| 465 |
+
- **2023年10月1日** 我们发布了该项目的早期版本,名为 FastSDXL。这是构建一个扩散引擎的初步尝试。
|
| 466 |
+
- 源代码已发布于 [GitHub](https://github.com/Artiprocher/FastSDXL)。
|
| 467 |
+
- FastSDXL 包含一个可训练的 OLSS 调度器,以提高效率。
|
| 468 |
+
- OLSS 的原始仓库位于 [此处](https://github.com/alibaba/EasyNLP/tree/master/diffusion/olss_scheduler)。
|
| 469 |
+
- 技术报告(CIKM 2023)已发布于 [arXiv](https://arxiv.org/abs/2305.14677)。
|
| 470 |
+
- 演示视频已发布于 [Bilibili](https://www.bilibili.com/video/BV1w8411y7uj)。
|
| 471 |
+
- 由于 OLSS 需要额外训练,我们未在本项目中实现它。
|
| 472 |
+
|
| 473 |
+
- **2023年8月29日** 我们提出 DiffSynth,一个视频合成框架。
|
| 474 |
+
- [项目页面](https://ecnu-cilab.github.io/DiffSynth.github.io/)。
|
| 475 |
+
- 源代码已发布在 [EasyNLP](https://github.com/alibaba/EasyNLP/tree/master/diffusion/DiffSynth)。
|
| 476 |
+
- 技术报告(ECML PKDD 2024)已发布于 [arXiv](https://arxiv.org/abs/2308.03463)。
|
| 477 |
+
|
| 478 |
+
</details>
|
diffsynth-studio/apps/gradio/DiffSynth_Studio.py
ADDED
|
@@ -0,0 +1,252 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import gradio as gr
|
| 2 |
+
from diffsynth import ModelManager, SDImagePipeline, SDXLImagePipeline, SD3ImagePipeline, HunyuanDiTImagePipeline, FluxImagePipeline
|
| 3 |
+
import os, torch
|
| 4 |
+
from PIL import Image
|
| 5 |
+
import numpy as np
|
| 6 |
+
|
| 7 |
+
|
| 8 |
+
config = {
|
| 9 |
+
"model_config": {
|
| 10 |
+
"Stable Diffusion": {
|
| 11 |
+
"model_folder": "models/stable_diffusion",
|
| 12 |
+
"pipeline_class": SDImagePipeline,
|
| 13 |
+
"default_parameters": {
|
| 14 |
+
"cfg_scale": 7.0,
|
| 15 |
+
"height": 512,
|
| 16 |
+
"width": 512,
|
| 17 |
+
}
|
| 18 |
+
},
|
| 19 |
+
"Stable Diffusion XL": {
|
| 20 |
+
"model_folder": "models/stable_diffusion_xl",
|
| 21 |
+
"pipeline_class": SDXLImagePipeline,
|
| 22 |
+
"default_parameters": {
|
| 23 |
+
"cfg_scale": 7.0,
|
| 24 |
+
}
|
| 25 |
+
},
|
| 26 |
+
"Stable Diffusion 3": {
|
| 27 |
+
"model_folder": "models/stable_diffusion_3",
|
| 28 |
+
"pipeline_class": SD3ImagePipeline,
|
| 29 |
+
"default_parameters": {
|
| 30 |
+
"cfg_scale": 7.0,
|
| 31 |
+
}
|
| 32 |
+
},
|
| 33 |
+
"Stable Diffusion XL Turbo": {
|
| 34 |
+
"model_folder": "models/stable_diffusion_xl_turbo",
|
| 35 |
+
"pipeline_class": SDXLImagePipeline,
|
| 36 |
+
"default_parameters": {
|
| 37 |
+
"negative_prompt": "",
|
| 38 |
+
"cfg_scale": 1.0,
|
| 39 |
+
"num_inference_steps": 1,
|
| 40 |
+
"height": 512,
|
| 41 |
+
"width": 512,
|
| 42 |
+
}
|
| 43 |
+
},
|
| 44 |
+
"Kolors": {
|
| 45 |
+
"model_folder": "models/kolors",
|
| 46 |
+
"pipeline_class": SDXLImagePipeline,
|
| 47 |
+
"default_parameters": {
|
| 48 |
+
"cfg_scale": 7.0,
|
| 49 |
+
}
|
| 50 |
+
},
|
| 51 |
+
"HunyuanDiT": {
|
| 52 |
+
"model_folder": "models/HunyuanDiT",
|
| 53 |
+
"pipeline_class": HunyuanDiTImagePipeline,
|
| 54 |
+
"default_parameters": {
|
| 55 |
+
"cfg_scale": 7.0,
|
| 56 |
+
}
|
| 57 |
+
},
|
| 58 |
+
"FLUX": {
|
| 59 |
+
"model_folder": "models/FLUX",
|
| 60 |
+
"pipeline_class": FluxImagePipeline,
|
| 61 |
+
"default_parameters": {
|
| 62 |
+
"cfg_scale": 1.0,
|
| 63 |
+
}
|
| 64 |
+
}
|
| 65 |
+
},
|
| 66 |
+
"max_num_painter_layers": 8,
|
| 67 |
+
"max_num_model_cache": 1,
|
| 68 |
+
}
|
| 69 |
+
|
| 70 |
+
|
| 71 |
+
def load_model_list(model_type):
|
| 72 |
+
if model_type is None:
|
| 73 |
+
return []
|
| 74 |
+
folder = config["model_config"][model_type]["model_folder"]
|
| 75 |
+
file_list = [i for i in os.listdir(folder) if i.endswith(".safetensors")]
|
| 76 |
+
if model_type in ["HunyuanDiT", "Kolors", "FLUX"]:
|
| 77 |
+
file_list += [i for i in os.listdir(folder) if os.path.isdir(os.path.join(folder, i))]
|
| 78 |
+
file_list = sorted(file_list)
|
| 79 |
+
return file_list
|
| 80 |
+
|
| 81 |
+
|
| 82 |
+
def load_model(model_type, model_path):
|
| 83 |
+
global model_dict
|
| 84 |
+
model_key = f"{model_type}:{model_path}"
|
| 85 |
+
if model_key in model_dict:
|
| 86 |
+
return model_dict[model_key]
|
| 87 |
+
model_path = os.path.join(config["model_config"][model_type]["model_folder"], model_path)
|
| 88 |
+
model_manager = ModelManager()
|
| 89 |
+
if model_type == "HunyuanDiT":
|
| 90 |
+
model_manager.load_models([
|
| 91 |
+
os.path.join(model_path, "clip_text_encoder/pytorch_model.bin"),
|
| 92 |
+
os.path.join(model_path, "mt5/pytorch_model.bin"),
|
| 93 |
+
os.path.join(model_path, "model/pytorch_model_ema.pt"),
|
| 94 |
+
os.path.join(model_path, "sdxl-vae-fp16-fix/diffusion_pytorch_model.bin"),
|
| 95 |
+
])
|
| 96 |
+
elif model_type == "Kolors":
|
| 97 |
+
model_manager.load_models([
|
| 98 |
+
os.path.join(model_path, "text_encoder"),
|
| 99 |
+
os.path.join(model_path, "unet/diffusion_pytorch_model.safetensors"),
|
| 100 |
+
os.path.join(model_path, "vae/diffusion_pytorch_model.safetensors"),
|
| 101 |
+
])
|
| 102 |
+
elif model_type == "FLUX":
|
| 103 |
+
model_manager.torch_dtype = torch.bfloat16
|
| 104 |
+
file_list = [
|
| 105 |
+
os.path.join(model_path, "text_encoder/model.safetensors"),
|
| 106 |
+
os.path.join(model_path, "text_encoder_2"),
|
| 107 |
+
]
|
| 108 |
+
for file_name in os.listdir(model_path):
|
| 109 |
+
if file_name.endswith(".safetensors"):
|
| 110 |
+
file_list.append(os.path.join(model_path, file_name))
|
| 111 |
+
model_manager.load_models(file_list)
|
| 112 |
+
else:
|
| 113 |
+
model_manager.load_model(model_path)
|
| 114 |
+
pipe = config["model_config"][model_type]["pipeline_class"].from_model_manager(model_manager)
|
| 115 |
+
while len(model_dict) + 1 > config["max_num_model_cache"]:
|
| 116 |
+
key = next(iter(model_dict.keys()))
|
| 117 |
+
model_manager_to_release, _ = model_dict[key]
|
| 118 |
+
model_manager_to_release.to("cpu")
|
| 119 |
+
del model_dict[key]
|
| 120 |
+
torch.cuda.empty_cache()
|
| 121 |
+
model_dict[model_key] = model_manager, pipe
|
| 122 |
+
return model_manager, pipe
|
| 123 |
+
|
| 124 |
+
|
| 125 |
+
model_dict = {}
|
| 126 |
+
|
| 127 |
+
with gr.Blocks() as app:
|
| 128 |
+
gr.Markdown("# DiffSynth-Studio Painter")
|
| 129 |
+
with gr.Row():
|
| 130 |
+
with gr.Column(scale=382, min_width=100):
|
| 131 |
+
|
| 132 |
+
with gr.Accordion(label="Model"):
|
| 133 |
+
model_type = gr.Dropdown(choices=[i for i in config["model_config"]], label="Model type")
|
| 134 |
+
model_path = gr.Dropdown(choices=[], interactive=True, label="Model path")
|
| 135 |
+
|
| 136 |
+
@gr.on(inputs=model_type, outputs=model_path, triggers=model_type.change)
|
| 137 |
+
def model_type_to_model_path(model_type):
|
| 138 |
+
return gr.Dropdown(choices=load_model_list(model_type))
|
| 139 |
+
|
| 140 |
+
with gr.Accordion(label="Prompt"):
|
| 141 |
+
prompt = gr.Textbox(label="Prompt", lines=3)
|
| 142 |
+
negative_prompt = gr.Textbox(label="Negative prompt", lines=1)
|
| 143 |
+
cfg_scale = gr.Slider(minimum=1.0, maximum=10.0, value=7.0, step=0.1, interactive=True, label="Classifier-free guidance scale")
|
| 144 |
+
embedded_guidance = gr.Slider(minimum=0.0, maximum=10.0, value=0.0, step=0.1, interactive=True, label="Embedded guidance scale (only for FLUX)")
|
| 145 |
+
|
| 146 |
+
with gr.Accordion(label="Image"):
|
| 147 |
+
num_inference_steps = gr.Slider(minimum=1, maximum=100, value=20, step=1, interactive=True, label="Inference steps")
|
| 148 |
+
height = gr.Slider(minimum=64, maximum=2048, value=1024, step=64, interactive=True, label="Height")
|
| 149 |
+
width = gr.Slider(minimum=64, maximum=2048, value=1024, step=64, interactive=True, label="Width")
|
| 150 |
+
with gr.Column():
|
| 151 |
+
use_fixed_seed = gr.Checkbox(value=True, interactive=False, label="Use fixed seed")
|
| 152 |
+
seed = gr.Number(minimum=0, maximum=10**9, value=0, interactive=True, label="Random seed", show_label=False)
|
| 153 |
+
|
| 154 |
+
@gr.on(
|
| 155 |
+
inputs=[model_type, model_path, prompt, negative_prompt, cfg_scale, embedded_guidance, num_inference_steps, height, width],
|
| 156 |
+
outputs=[prompt, negative_prompt, cfg_scale, embedded_guidance, num_inference_steps, height, width],
|
| 157 |
+
triggers=model_path.change
|
| 158 |
+
)
|
| 159 |
+
def model_path_to_default_params(model_type, model_path, prompt, negative_prompt, cfg_scale, embedded_guidance, num_inference_steps, height, width):
|
| 160 |
+
load_model(model_type, model_path)
|
| 161 |
+
cfg_scale = config["model_config"][model_type]["default_parameters"].get("cfg_scale", cfg_scale)
|
| 162 |
+
embedded_guidance = config["model_config"][model_type]["default_parameters"].get("embedded_guidance", embedded_guidance)
|
| 163 |
+
num_inference_steps = config["model_config"][model_type]["default_parameters"].get("num_inference_steps", num_inference_steps)
|
| 164 |
+
height = config["model_config"][model_type]["default_parameters"].get("height", height)
|
| 165 |
+
width = config["model_config"][model_type]["default_parameters"].get("width", width)
|
| 166 |
+
return prompt, negative_prompt, cfg_scale, embedded_guidance, num_inference_steps, height, width
|
| 167 |
+
|
| 168 |
+
|
| 169 |
+
with gr.Column(scale=618, min_width=100):
|
| 170 |
+
with gr.Accordion(label="Painter"):
|
| 171 |
+
enable_local_prompt_list = []
|
| 172 |
+
local_prompt_list = []
|
| 173 |
+
mask_scale_list = []
|
| 174 |
+
canvas_list = []
|
| 175 |
+
for painter_layer_id in range(config["max_num_painter_layers"]):
|
| 176 |
+
with gr.Tab(label=f"Layer {painter_layer_id}"):
|
| 177 |
+
enable_local_prompt = gr.Checkbox(label="Enable", value=False, key=f"enable_local_prompt_{painter_layer_id}")
|
| 178 |
+
local_prompt = gr.Textbox(label="Local prompt", key=f"local_prompt_{painter_layer_id}")
|
| 179 |
+
mask_scale = gr.Slider(minimum=0.0, maximum=5.0, value=1.0, step=0.1, interactive=True, label="Mask scale", key=f"mask_scale_{painter_layer_id}")
|
| 180 |
+
canvas = gr.ImageEditor(canvas_size=(512, 1), sources=None, layers=False, interactive=True, image_mode="RGBA",
|
| 181 |
+
brush=gr.Brush(default_size=100, default_color="#000000", colors=["#000000"]),
|
| 182 |
+
label="Painter", key=f"canvas_{painter_layer_id}")
|
| 183 |
+
@gr.on(inputs=[height, width, canvas], outputs=canvas, triggers=[height.change, width.change, canvas.clear, enable_local_prompt.change], show_progress="hidden")
|
| 184 |
+
def resize_canvas(height, width, canvas):
|
| 185 |
+
h, w = canvas["background"].shape[:2]
|
| 186 |
+
if h != height or width != w:
|
| 187 |
+
return np.ones((height, width, 3), dtype=np.uint8) * 255
|
| 188 |
+
else:
|
| 189 |
+
return canvas
|
| 190 |
+
|
| 191 |
+
enable_local_prompt_list.append(enable_local_prompt)
|
| 192 |
+
local_prompt_list.append(local_prompt)
|
| 193 |
+
mask_scale_list.append(mask_scale)
|
| 194 |
+
canvas_list.append(canvas)
|
| 195 |
+
with gr.Accordion(label="Results"):
|
| 196 |
+
run_button = gr.Button(value="Generate", variant="primary")
|
| 197 |
+
output_image = gr.Image(sources=None, show_label=False, interactive=False, type="pil")
|
| 198 |
+
with gr.Row():
|
| 199 |
+
with gr.Column():
|
| 200 |
+
output_to_painter_button = gr.Button(value="Set as painter's background")
|
| 201 |
+
with gr.Column():
|
| 202 |
+
output_to_input_button = gr.Button(value="Set as input image")
|
| 203 |
+
painter_background = gr.State(None)
|
| 204 |
+
input_background = gr.State(None)
|
| 205 |
+
@gr.on(
|
| 206 |
+
inputs=[model_type, model_path, prompt, negative_prompt, cfg_scale, embedded_guidance, num_inference_steps, height, width, seed] + enable_local_prompt_list + local_prompt_list + mask_scale_list + canvas_list,
|
| 207 |
+
outputs=[output_image],
|
| 208 |
+
triggers=run_button.click
|
| 209 |
+
)
|
| 210 |
+
def generate_image(model_type, model_path, prompt, negative_prompt, cfg_scale, embedded_guidance, num_inference_steps, height, width, seed, *args, progress=gr.Progress()):
|
| 211 |
+
_, pipe = load_model(model_type, model_path)
|
| 212 |
+
input_params = {
|
| 213 |
+
"prompt": prompt,
|
| 214 |
+
"negative_prompt": negative_prompt,
|
| 215 |
+
"cfg_scale": cfg_scale,
|
| 216 |
+
"num_inference_steps": num_inference_steps,
|
| 217 |
+
"height": height,
|
| 218 |
+
"width": width,
|
| 219 |
+
"progress_bar_cmd": progress.tqdm,
|
| 220 |
+
}
|
| 221 |
+
if isinstance(pipe, FluxImagePipeline):
|
| 222 |
+
input_params["embedded_guidance"] = embedded_guidance
|
| 223 |
+
enable_local_prompt_list, local_prompt_list, mask_scale_list, canvas_list = (
|
| 224 |
+
args[0 * config["max_num_painter_layers"]: 1 * config["max_num_painter_layers"]],
|
| 225 |
+
args[1 * config["max_num_painter_layers"]: 2 * config["max_num_painter_layers"]],
|
| 226 |
+
args[2 * config["max_num_painter_layers"]: 3 * config["max_num_painter_layers"]],
|
| 227 |
+
args[3 * config["max_num_painter_layers"]: 4 * config["max_num_painter_layers"]]
|
| 228 |
+
)
|
| 229 |
+
local_prompts, masks, mask_scales = [], [], []
|
| 230 |
+
for enable_local_prompt, local_prompt, mask_scale, canvas in zip(
|
| 231 |
+
enable_local_prompt_list, local_prompt_list, mask_scale_list, canvas_list
|
| 232 |
+
):
|
| 233 |
+
if enable_local_prompt:
|
| 234 |
+
local_prompts.append(local_prompt)
|
| 235 |
+
masks.append(Image.fromarray(canvas["layers"][0][:, :, -1]).convert("RGB"))
|
| 236 |
+
mask_scales.append(mask_scale)
|
| 237 |
+
input_params.update({
|
| 238 |
+
"local_prompts": local_prompts,
|
| 239 |
+
"masks": masks,
|
| 240 |
+
"mask_scales": mask_scales,
|
| 241 |
+
})
|
| 242 |
+
torch.manual_seed(seed)
|
| 243 |
+
image = pipe(**input_params)
|
| 244 |
+
return image
|
| 245 |
+
|
| 246 |
+
@gr.on(inputs=[output_image] + canvas_list, outputs=canvas_list, triggers=output_to_painter_button.click)
|
| 247 |
+
def send_output_to_painter_background(output_image, *canvas_list):
|
| 248 |
+
for canvas in canvas_list:
|
| 249 |
+
h, w = canvas["background"].shape[:2]
|
| 250 |
+
canvas["background"] = output_image.resize((w, h))
|
| 251 |
+
return tuple(canvas_list)
|
| 252 |
+
app.launch()
|
diffsynth-studio/apps/gradio/entity_level_control.py
ADDED
|
@@ -0,0 +1,390 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import os
|
| 2 |
+
import torch
|
| 3 |
+
import numpy as np
|
| 4 |
+
from PIL import Image, ImageDraw, ImageFont
|
| 5 |
+
import random
|
| 6 |
+
import json
|
| 7 |
+
import gradio as gr
|
| 8 |
+
from diffsynth import ModelManager, FluxImagePipeline, download_customized_models
|
| 9 |
+
from modelscope import dataset_snapshot_download
|
| 10 |
+
|
| 11 |
+
|
| 12 |
+
dataset_snapshot_download(dataset_id="DiffSynth-Studio/examples_in_diffsynth", local_dir="./", allow_file_pattern=f"data/examples/eligen/entity_control/*")
|
| 13 |
+
example_json = 'data/examples/eligen/entity_control/ui_examples.json'
|
| 14 |
+
with open(example_json, 'r') as f:
|
| 15 |
+
examples = json.load(f)['examples']
|
| 16 |
+
|
| 17 |
+
for idx in range(len(examples)):
|
| 18 |
+
example_id = examples[idx]['example_id']
|
| 19 |
+
entity_prompts = examples[idx]['local_prompt_list']
|
| 20 |
+
examples[idx]['mask_lists'] = [Image.open(f"data/examples/eligen/entity_control/example_{example_id}/{i}.png").convert('RGB') for i in range(len(entity_prompts))]
|
| 21 |
+
|
| 22 |
+
def create_canvas_data(background, masks):
|
| 23 |
+
if background.shape[-1] == 3:
|
| 24 |
+
background = np.dstack([background, np.full(background.shape[:2], 255, dtype=np.uint8)])
|
| 25 |
+
layers = []
|
| 26 |
+
for mask in masks:
|
| 27 |
+
if mask is not None:
|
| 28 |
+
mask_single_channel = mask if mask.ndim == 2 else mask[..., 0]
|
| 29 |
+
layer = np.zeros((mask_single_channel.shape[0], mask_single_channel.shape[1], 4), dtype=np.uint8)
|
| 30 |
+
layer[..., -1] = mask_single_channel
|
| 31 |
+
layers.append(layer)
|
| 32 |
+
else:
|
| 33 |
+
layers.append(np.zeros_like(background))
|
| 34 |
+
|
| 35 |
+
composite = background.copy()
|
| 36 |
+
for layer in layers:
|
| 37 |
+
if layer.size > 0:
|
| 38 |
+
composite = np.where(layer[..., -1:] > 0, layer, composite)
|
| 39 |
+
return {
|
| 40 |
+
"background": background,
|
| 41 |
+
"layers": layers,
|
| 42 |
+
"composite": composite,
|
| 43 |
+
}
|
| 44 |
+
|
| 45 |
+
def load_example(load_example_button):
|
| 46 |
+
example_idx = int(load_example_button.split()[-1]) - 1
|
| 47 |
+
example = examples[example_idx]
|
| 48 |
+
result = [
|
| 49 |
+
50,
|
| 50 |
+
example["global_prompt"],
|
| 51 |
+
example["negative_prompt"],
|
| 52 |
+
example["seed"],
|
| 53 |
+
*example["local_prompt_list"],
|
| 54 |
+
]
|
| 55 |
+
num_entities = len(example["local_prompt_list"])
|
| 56 |
+
result += [""] * (config["max_num_painter_layers"] - num_entities)
|
| 57 |
+
masks = []
|
| 58 |
+
for mask in example["mask_lists"]:
|
| 59 |
+
mask_single_channel = np.array(mask.convert("L"))
|
| 60 |
+
masks.append(mask_single_channel)
|
| 61 |
+
for _ in range(config["max_num_painter_layers"] - len(masks)):
|
| 62 |
+
blank_mask = np.zeros_like(masks[0]) if masks else np.zeros((512, 512), dtype=np.uint8)
|
| 63 |
+
masks.append(blank_mask)
|
| 64 |
+
background = np.ones((masks[0].shape[0], masks[0].shape[1], 4), dtype=np.uint8) * 255
|
| 65 |
+
canvas_data_list = []
|
| 66 |
+
for mask in masks:
|
| 67 |
+
canvas_data = create_canvas_data(background, [mask])
|
| 68 |
+
canvas_data_list.append(canvas_data)
|
| 69 |
+
result.extend(canvas_data_list)
|
| 70 |
+
return result
|
| 71 |
+
|
| 72 |
+
def save_mask_prompts(masks, mask_prompts, global_prompt, seed=0, random_dir='0000000'):
|
| 73 |
+
save_dir = os.path.join('workdirs/tmp_mask', random_dir)
|
| 74 |
+
print(f'save to {save_dir}')
|
| 75 |
+
os.makedirs(save_dir, exist_ok=True)
|
| 76 |
+
for i, mask in enumerate(masks):
|
| 77 |
+
save_path = os.path.join(save_dir, f'{i}.png')
|
| 78 |
+
mask.save(save_path)
|
| 79 |
+
sample = {
|
| 80 |
+
"global_prompt": global_prompt,
|
| 81 |
+
"mask_prompts": mask_prompts,
|
| 82 |
+
"seed": seed,
|
| 83 |
+
}
|
| 84 |
+
with open(os.path.join(save_dir, f"prompts.json"), 'w') as f:
|
| 85 |
+
json.dump(sample, f, indent=4)
|
| 86 |
+
|
| 87 |
+
def visualize_masks(image, masks, mask_prompts, font_size=35, use_random_colors=False):
|
| 88 |
+
# Create a blank image for overlays
|
| 89 |
+
overlay = Image.new('RGBA', image.size, (0, 0, 0, 0))
|
| 90 |
+
colors = [
|
| 91 |
+
(165, 238, 173, 80),
|
| 92 |
+
(76, 102, 221, 80),
|
| 93 |
+
(221, 160, 77, 80),
|
| 94 |
+
(204, 93, 71, 80),
|
| 95 |
+
(145, 187, 149, 80),
|
| 96 |
+
(134, 141, 172, 80),
|
| 97 |
+
(157, 137, 109, 80),
|
| 98 |
+
(153, 104, 95, 80),
|
| 99 |
+
(165, 238, 173, 80),
|
| 100 |
+
(76, 102, 221, 80),
|
| 101 |
+
(221, 160, 77, 80),
|
| 102 |
+
(204, 93, 71, 80),
|
| 103 |
+
(145, 187, 149, 80),
|
| 104 |
+
(134, 141, 172, 80),
|
| 105 |
+
(157, 137, 109, 80),
|
| 106 |
+
(153, 104, 95, 80),
|
| 107 |
+
]
|
| 108 |
+
# Generate random colors for each mask
|
| 109 |
+
if use_random_colors:
|
| 110 |
+
colors = [(random.randint(0, 255), random.randint(0, 255), random.randint(0, 255), 80) for _ in range(len(masks))]
|
| 111 |
+
# Font settings
|
| 112 |
+
try:
|
| 113 |
+
font = ImageFont.truetype("arial", font_size) # Adjust as needed
|
| 114 |
+
except IOError:
|
| 115 |
+
font = ImageFont.load_default(font_size)
|
| 116 |
+
# Overlay each mask onto the overlay image
|
| 117 |
+
for mask, mask_prompt, color in zip(masks, mask_prompts, colors):
|
| 118 |
+
if mask is None:
|
| 119 |
+
continue
|
| 120 |
+
# Convert mask to RGBA mode
|
| 121 |
+
mask_rgba = mask.convert('RGBA')
|
| 122 |
+
mask_data = mask_rgba.getdata()
|
| 123 |
+
new_data = [(color if item[:3] == (255, 255, 255) else (0, 0, 0, 0)) for item in mask_data]
|
| 124 |
+
mask_rgba.putdata(new_data)
|
| 125 |
+
# Draw the mask prompt text on the mask
|
| 126 |
+
draw = ImageDraw.Draw(mask_rgba)
|
| 127 |
+
mask_bbox = mask.getbbox() # Get the bounding box of the mask
|
| 128 |
+
if mask_bbox is None:
|
| 129 |
+
continue
|
| 130 |
+
text_position = (mask_bbox[0] + 10, mask_bbox[1] + 10) # Adjust text position based on mask position
|
| 131 |
+
draw.text(text_position, mask_prompt, fill=(255, 255, 255, 255), font=font)
|
| 132 |
+
# Alpha composite the overlay with this mask
|
| 133 |
+
overlay = Image.alpha_composite(overlay, mask_rgba)
|
| 134 |
+
# Composite the overlay onto the original image
|
| 135 |
+
result = Image.alpha_composite(image.convert('RGBA'), overlay)
|
| 136 |
+
return result
|
| 137 |
+
|
| 138 |
+
config = {
|
| 139 |
+
"model_config": {
|
| 140 |
+
"FLUX": {
|
| 141 |
+
"model_folder": "models/FLUX",
|
| 142 |
+
"pipeline_class": FluxImagePipeline,
|
| 143 |
+
"default_parameters": {
|
| 144 |
+
"cfg_scale": 3.0,
|
| 145 |
+
"embedded_guidance": 3.5,
|
| 146 |
+
"num_inference_steps": 30,
|
| 147 |
+
}
|
| 148 |
+
},
|
| 149 |
+
},
|
| 150 |
+
"max_num_painter_layers": 8,
|
| 151 |
+
"max_num_model_cache": 1,
|
| 152 |
+
}
|
| 153 |
+
|
| 154 |
+
model_dict = {}
|
| 155 |
+
|
| 156 |
+
def load_model(model_type='FLUX', model_path='FLUX.1-dev'):
|
| 157 |
+
global model_dict
|
| 158 |
+
model_key = f"{model_type}:{model_path}"
|
| 159 |
+
if model_key in model_dict:
|
| 160 |
+
return model_dict[model_key]
|
| 161 |
+
model_path = os.path.join(config["model_config"][model_type]["model_folder"], model_path)
|
| 162 |
+
model_manager = ModelManager(torch_dtype=torch.bfloat16, device="cuda", model_id_list=["FLUX.1-dev"])
|
| 163 |
+
model_manager.load_lora(
|
| 164 |
+
download_customized_models(
|
| 165 |
+
model_id="DiffSynth-Studio/Eligen",
|
| 166 |
+
origin_file_path="model_bf16.safetensors",
|
| 167 |
+
local_dir="models/lora/entity_control",
|
| 168 |
+
),
|
| 169 |
+
lora_alpha=1,
|
| 170 |
+
)
|
| 171 |
+
pipe = config["model_config"][model_type]["pipeline_class"].from_model_manager(model_manager)
|
| 172 |
+
model_dict[model_key] = model_manager, pipe
|
| 173 |
+
return model_manager, pipe
|
| 174 |
+
|
| 175 |
+
|
| 176 |
+
with gr.Blocks() as app:
|
| 177 |
+
gr.Markdown(
|
| 178 |
+
"""## EliGen: Entity-Level Controllable Text-to-Image Model
|
| 179 |
+
1. On the left, input the **global prompt** for the overall image, such as "a person stands by the river."
|
| 180 |
+
2. On the right, input the **local prompt** for each entity, such as "person," and draw the corresponding mask in the **Entity Mask Painter**. Generally, solid rectangular masks yield better results.
|
| 181 |
+
3. Click the **Generate** button to create the image. By selecting different **random seeds**, you can generate diverse images.
|
| 182 |
+
4. **You can directly click the "Load Example" button on any sample at the bottom to load example inputs.**
|
| 183 |
+
"""
|
| 184 |
+
)
|
| 185 |
+
|
| 186 |
+
loading_status = gr.Textbox(label="Loading Model...", value="Loading model... Please wait...", visible=True)
|
| 187 |
+
main_interface = gr.Column(visible=False)
|
| 188 |
+
|
| 189 |
+
def initialize_model():
|
| 190 |
+
try:
|
| 191 |
+
load_model()
|
| 192 |
+
return {
|
| 193 |
+
loading_status: gr.update(value="Model loaded successfully!", visible=False),
|
| 194 |
+
main_interface: gr.update(visible=True),
|
| 195 |
+
}
|
| 196 |
+
except Exception as e:
|
| 197 |
+
print(f'Failed to load model with error: {e}')
|
| 198 |
+
return {
|
| 199 |
+
loading_status: gr.update(value=f"Failed to load model: {str(e)}", visible=True),
|
| 200 |
+
main_interface: gr.update(visible=True),
|
| 201 |
+
}
|
| 202 |
+
|
| 203 |
+
app.load(initialize_model, inputs=None, outputs=[loading_status, main_interface])
|
| 204 |
+
|
| 205 |
+
with main_interface:
|
| 206 |
+
with gr.Row():
|
| 207 |
+
local_prompt_list = []
|
| 208 |
+
canvas_list = []
|
| 209 |
+
random_mask_dir = gr.State(f'{random.randint(0, 1000000):08d}')
|
| 210 |
+
with gr.Column(scale=382, min_width=100):
|
| 211 |
+
model_type = gr.State('FLUX')
|
| 212 |
+
model_path = gr.State('FLUX.1-dev')
|
| 213 |
+
with gr.Accordion(label="Global prompt"):
|
| 214 |
+
prompt = gr.Textbox(label="Global Prompt", lines=3)
|
| 215 |
+
negative_prompt = gr.Textbox(label="Negative prompt", value="worst quality, low quality, monochrome, zombie, interlocked fingers, Aissist, cleavage, nsfw, blur,", lines=3)
|
| 216 |
+
with gr.Accordion(label="Inference Options", open=True):
|
| 217 |
+
seed = gr.Number(minimum=0, maximum=10**9, value=42, interactive=True, label="Random seed", show_label=True)
|
| 218 |
+
num_inference_steps = gr.Slider(minimum=1, maximum=100, value=30, step=1, interactive=True, label="Inference steps")
|
| 219 |
+
cfg_scale = gr.Slider(minimum=2.0, maximum=10.0, value=3.0, step=0.1, interactive=True, label="Classifier-free guidance scale")
|
| 220 |
+
embedded_guidance = gr.Slider(minimum=0.0, maximum=10.0, value=3.5, step=0.1, interactive=True, label="Embedded guidance scale")
|
| 221 |
+
height = gr.Slider(minimum=64, maximum=2048, value=1024, step=64, interactive=True, label="Height")
|
| 222 |
+
width = gr.Slider(minimum=64, maximum=2048, value=1024, step=64, interactive=True, label="Width")
|
| 223 |
+
with gr.Accordion(label="Inpaint Input Image", open=False):
|
| 224 |
+
input_image = gr.Image(sources=None, show_label=False, interactive=True, type="pil")
|
| 225 |
+
background_weight = gr.Slider(minimum=0.0, maximum=1000., value=0., step=1, interactive=False, label="background_weight", visible=False)
|
| 226 |
+
|
| 227 |
+
with gr.Column():
|
| 228 |
+
reset_input_button = gr.Button(value="Reset Inpaint Input")
|
| 229 |
+
send_input_to_painter = gr.Button(value="Set as painter's background")
|
| 230 |
+
@gr.on(inputs=[input_image], outputs=[input_image], triggers=reset_input_button.click)
|
| 231 |
+
def reset_input_image(input_image):
|
| 232 |
+
return None
|
| 233 |
+
|
| 234 |
+
with gr.Column(scale=618, min_width=100):
|
| 235 |
+
with gr.Accordion(label="Entity Painter"):
|
| 236 |
+
for painter_layer_id in range(config["max_num_painter_layers"]):
|
| 237 |
+
with gr.Tab(label=f"Entity {painter_layer_id}"):
|
| 238 |
+
local_prompt = gr.Textbox(label="Local prompt", key=f"local_prompt_{painter_layer_id}")
|
| 239 |
+
canvas = gr.ImageEditor(
|
| 240 |
+
canvas_size=(512, 512),
|
| 241 |
+
sources=None,
|
| 242 |
+
layers=False,
|
| 243 |
+
interactive=True,
|
| 244 |
+
image_mode="RGBA",
|
| 245 |
+
brush=gr.Brush(
|
| 246 |
+
default_size=50,
|
| 247 |
+
default_color="#000000",
|
| 248 |
+
colors=["#000000"],
|
| 249 |
+
),
|
| 250 |
+
label="Entity Mask Painter",
|
| 251 |
+
key=f"canvas_{painter_layer_id}",
|
| 252 |
+
width=width,
|
| 253 |
+
height=height,
|
| 254 |
+
)
|
| 255 |
+
@gr.on(inputs=[height, width, canvas], outputs=canvas, triggers=[height.change, width.change, canvas.clear], show_progress="hidden")
|
| 256 |
+
def resize_canvas(height, width, canvas):
|
| 257 |
+
h, w = canvas["background"].shape[:2]
|
| 258 |
+
if h != height or width != w:
|
| 259 |
+
return np.ones((height, width, 3), dtype=np.uint8) * 255
|
| 260 |
+
else:
|
| 261 |
+
return canvas
|
| 262 |
+
local_prompt_list.append(local_prompt)
|
| 263 |
+
canvas_list.append(canvas)
|
| 264 |
+
with gr.Accordion(label="Results"):
|
| 265 |
+
run_button = gr.Button(value="Generate", variant="primary")
|
| 266 |
+
output_image = gr.Image(sources=None, show_label=False, interactive=False, type="pil")
|
| 267 |
+
with gr.Row():
|
| 268 |
+
with gr.Column():
|
| 269 |
+
output_to_painter_button = gr.Button(value="Set as painter's background")
|
| 270 |
+
with gr.Column():
|
| 271 |
+
return_with_mask = gr.Checkbox(value=False, interactive=True, label="show result with mask painting")
|
| 272 |
+
output_to_input_button = gr.Button(value="Set as input image", visible=False, interactive=False)
|
| 273 |
+
real_output = gr.State(None)
|
| 274 |
+
mask_out = gr.State(None)
|
| 275 |
+
|
| 276 |
+
@gr.on(
|
| 277 |
+
inputs=[model_type, model_path, prompt, negative_prompt, cfg_scale, embedded_guidance, num_inference_steps, height, width, return_with_mask, seed, input_image, background_weight, random_mask_dir] + local_prompt_list + canvas_list,
|
| 278 |
+
outputs=[output_image, real_output, mask_out],
|
| 279 |
+
triggers=run_button.click
|
| 280 |
+
)
|
| 281 |
+
def generate_image(model_type, model_path, prompt, negative_prompt, cfg_scale, embedded_guidance, num_inference_steps, height, width, return_with_mask, seed, input_image, background_weight, random_mask_dir, *args, progress=gr.Progress()):
|
| 282 |
+
_, pipe = load_model(model_type, model_path)
|
| 283 |
+
input_params = {
|
| 284 |
+
"prompt": prompt,
|
| 285 |
+
"negative_prompt": negative_prompt,
|
| 286 |
+
"cfg_scale": cfg_scale,
|
| 287 |
+
"num_inference_steps": num_inference_steps,
|
| 288 |
+
"height": height,
|
| 289 |
+
"width": width,
|
| 290 |
+
"progress_bar_cmd": progress.tqdm,
|
| 291 |
+
}
|
| 292 |
+
if isinstance(pipe, FluxImagePipeline):
|
| 293 |
+
input_params["embedded_guidance"] = embedded_guidance
|
| 294 |
+
if input_image is not None:
|
| 295 |
+
input_params["input_image"] = input_image.resize((width, height)).convert("RGB")
|
| 296 |
+
input_params["enable_eligen_inpaint"] = True
|
| 297 |
+
|
| 298 |
+
local_prompt_list, canvas_list = (
|
| 299 |
+
args[0 * config["max_num_painter_layers"]: 1 * config["max_num_painter_layers"]],
|
| 300 |
+
args[1 * config["max_num_painter_layers"]: 2 * config["max_num_painter_layers"]],
|
| 301 |
+
)
|
| 302 |
+
local_prompts, masks = [], []
|
| 303 |
+
for local_prompt, canvas in zip(local_prompt_list, canvas_list):
|
| 304 |
+
if isinstance(local_prompt, str) and len(local_prompt) > 0:
|
| 305 |
+
local_prompts.append(local_prompt)
|
| 306 |
+
masks.append(Image.fromarray(canvas["layers"][0][:, :, -1]).convert("RGB"))
|
| 307 |
+
entity_masks = None if len(masks) == 0 else masks
|
| 308 |
+
entity_prompts = None if len(local_prompts) == 0 else local_prompts
|
| 309 |
+
input_params.update({
|
| 310 |
+
"eligen_entity_prompts": entity_prompts,
|
| 311 |
+
"eligen_entity_masks": entity_masks,
|
| 312 |
+
})
|
| 313 |
+
torch.manual_seed(seed)
|
| 314 |
+
# save_mask_prompts(masks, local_prompts, prompt, seed, random_mask_dir)
|
| 315 |
+
image = pipe(**input_params)
|
| 316 |
+
masks = [mask.resize(image.size) for mask in masks]
|
| 317 |
+
image_with_mask = visualize_masks(image, masks, local_prompts)
|
| 318 |
+
|
| 319 |
+
real_output = gr.State(image)
|
| 320 |
+
mask_out = gr.State(image_with_mask)
|
| 321 |
+
|
| 322 |
+
if return_with_mask:
|
| 323 |
+
return image_with_mask, real_output, mask_out
|
| 324 |
+
return image, real_output, mask_out
|
| 325 |
+
|
| 326 |
+
@gr.on(inputs=[input_image] + canvas_list, outputs=canvas_list, triggers=send_input_to_painter.click)
|
| 327 |
+
def send_input_to_painter_background(input_image, *canvas_list):
|
| 328 |
+
if input_image is None:
|
| 329 |
+
return tuple(canvas_list)
|
| 330 |
+
for canvas in canvas_list:
|
| 331 |
+
h, w = canvas["background"].shape[:2]
|
| 332 |
+
canvas["background"] = input_image.resize((w, h))
|
| 333 |
+
return tuple(canvas_list)
|
| 334 |
+
@gr.on(inputs=[real_output] + canvas_list, outputs=canvas_list, triggers=output_to_painter_button.click)
|
| 335 |
+
def send_output_to_painter_background(real_output, *canvas_list):
|
| 336 |
+
if real_output is None:
|
| 337 |
+
return tuple(canvas_list)
|
| 338 |
+
for canvas in canvas_list:
|
| 339 |
+
h, w = canvas["background"].shape[:2]
|
| 340 |
+
canvas["background"] = real_output.value.resize((w, h))
|
| 341 |
+
return tuple(canvas_list)
|
| 342 |
+
@gr.on(inputs=[return_with_mask, real_output, mask_out], outputs=[output_image], triggers=[return_with_mask.change], show_progress="hidden")
|
| 343 |
+
def show_output(return_with_mask, real_output, mask_out):
|
| 344 |
+
if return_with_mask:
|
| 345 |
+
return mask_out.value
|
| 346 |
+
else:
|
| 347 |
+
return real_output.value
|
| 348 |
+
@gr.on(inputs=[real_output], outputs=[input_image], triggers=output_to_input_button.click)
|
| 349 |
+
def send_output_to_pipe_input(real_output):
|
| 350 |
+
return real_output.value
|
| 351 |
+
|
| 352 |
+
with gr.Column():
|
| 353 |
+
gr.Markdown("## Examples")
|
| 354 |
+
for i in range(0, len(examples), 2):
|
| 355 |
+
with gr.Row():
|
| 356 |
+
if i < len(examples):
|
| 357 |
+
example = examples[i]
|
| 358 |
+
with gr.Column():
|
| 359 |
+
example_image = gr.Image(
|
| 360 |
+
value=f"data/examples/eligen/entity_control/example_{example['example_id']}/example_image.png",
|
| 361 |
+
label=example["description"],
|
| 362 |
+
interactive=False,
|
| 363 |
+
width=1024,
|
| 364 |
+
height=512
|
| 365 |
+
)
|
| 366 |
+
load_example_button = gr.Button(value=f"Load Example {example['example_id']}")
|
| 367 |
+
load_example_button.click(
|
| 368 |
+
load_example,
|
| 369 |
+
inputs=[load_example_button],
|
| 370 |
+
outputs=[num_inference_steps, prompt, negative_prompt, seed] + local_prompt_list + canvas_list
|
| 371 |
+
)
|
| 372 |
+
|
| 373 |
+
if i + 1 < len(examples):
|
| 374 |
+
example = examples[i + 1]
|
| 375 |
+
with gr.Column():
|
| 376 |
+
example_image = gr.Image(
|
| 377 |
+
value=f"data/examples/eligen/entity_control/example_{example['example_id']}/example_image.png",
|
| 378 |
+
label=example["description"],
|
| 379 |
+
interactive=False,
|
| 380 |
+
width=1024,
|
| 381 |
+
height=512
|
| 382 |
+
)
|
| 383 |
+
load_example_button = gr.Button(value=f"Load Example {example['example_id']}")
|
| 384 |
+
load_example_button.click(
|
| 385 |
+
load_example,
|
| 386 |
+
inputs=[load_example_button],
|
| 387 |
+
outputs=[num_inference_steps, prompt, negative_prompt, seed] + local_prompt_list + canvas_list
|
| 388 |
+
)
|
| 389 |
+
app.config["show_progress"] = "hidden"
|
| 390 |
+
app.launch()
|
diffsynth-studio/apps/streamlit/DiffSynth_Studio.py
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Set web page format
|
| 2 |
+
import streamlit as st
|
| 3 |
+
st.set_page_config(layout="wide")
|
| 4 |
+
# Disable virtual VRAM on windows system
|
| 5 |
+
import torch
|
| 6 |
+
torch.cuda.set_per_process_memory_fraction(0.999, 0)
|
| 7 |
+
|
| 8 |
+
|
| 9 |
+
st.markdown("""
|
| 10 |
+
# DiffSynth Studio
|
| 11 |
+
|
| 12 |
+
[Source Code](https://github.com/Artiprocher/DiffSynth-Studio)
|
| 13 |
+
|
| 14 |
+
Welcome to DiffSynth Studio.
|
| 15 |
+
""")
|
diffsynth-studio/apps/streamlit/pages/1_Image_Creator.py
ADDED
|
@@ -0,0 +1,362 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import torch, os, io, json, time
|
| 2 |
+
import numpy as np
|
| 3 |
+
from PIL import Image
|
| 4 |
+
import streamlit as st
|
| 5 |
+
st.set_page_config(layout="wide")
|
| 6 |
+
from streamlit_drawable_canvas import st_canvas
|
| 7 |
+
from diffsynth.models import ModelManager
|
| 8 |
+
from diffsynth.pipelines import SDImagePipeline, SDXLImagePipeline, SD3ImagePipeline, HunyuanDiTImagePipeline, FluxImagePipeline
|
| 9 |
+
from diffsynth.data.video import crop_and_resize
|
| 10 |
+
|
| 11 |
+
|
| 12 |
+
config = {
|
| 13 |
+
"Stable Diffusion": {
|
| 14 |
+
"model_folder": "models/stable_diffusion",
|
| 15 |
+
"pipeline_class": SDImagePipeline,
|
| 16 |
+
"fixed_parameters": {}
|
| 17 |
+
},
|
| 18 |
+
"Stable Diffusion XL": {
|
| 19 |
+
"model_folder": "models/stable_diffusion_xl",
|
| 20 |
+
"pipeline_class": SDXLImagePipeline,
|
| 21 |
+
"fixed_parameters": {}
|
| 22 |
+
},
|
| 23 |
+
"Stable Diffusion 3": {
|
| 24 |
+
"model_folder": "models/stable_diffusion_3",
|
| 25 |
+
"pipeline_class": SD3ImagePipeline,
|
| 26 |
+
"fixed_parameters": {}
|
| 27 |
+
},
|
| 28 |
+
"Stable Diffusion XL Turbo": {
|
| 29 |
+
"model_folder": "models/stable_diffusion_xl_turbo",
|
| 30 |
+
"pipeline_class": SDXLImagePipeline,
|
| 31 |
+
"fixed_parameters": {
|
| 32 |
+
"negative_prompt": "",
|
| 33 |
+
"cfg_scale": 1.0,
|
| 34 |
+
"num_inference_steps": 1,
|
| 35 |
+
"height": 512,
|
| 36 |
+
"width": 512,
|
| 37 |
+
}
|
| 38 |
+
},
|
| 39 |
+
"Kolors": {
|
| 40 |
+
"model_folder": "models/kolors",
|
| 41 |
+
"pipeline_class": SDXLImagePipeline,
|
| 42 |
+
"fixed_parameters": {}
|
| 43 |
+
},
|
| 44 |
+
"HunyuanDiT": {
|
| 45 |
+
"model_folder": "models/HunyuanDiT",
|
| 46 |
+
"pipeline_class": HunyuanDiTImagePipeline,
|
| 47 |
+
"fixed_parameters": {
|
| 48 |
+
"height": 1024,
|
| 49 |
+
"width": 1024,
|
| 50 |
+
}
|
| 51 |
+
},
|
| 52 |
+
"FLUX": {
|
| 53 |
+
"model_folder": "models/FLUX",
|
| 54 |
+
"pipeline_class": FluxImagePipeline,
|
| 55 |
+
"fixed_parameters": {
|
| 56 |
+
"cfg_scale": 1.0,
|
| 57 |
+
}
|
| 58 |
+
}
|
| 59 |
+
}
|
| 60 |
+
|
| 61 |
+
|
| 62 |
+
def load_model_list(model_type):
|
| 63 |
+
folder = config[model_type]["model_folder"]
|
| 64 |
+
file_list = [i for i in os.listdir(folder) if i.endswith(".safetensors")]
|
| 65 |
+
if model_type in ["HunyuanDiT", "Kolors", "FLUX"]:
|
| 66 |
+
file_list += [i for i in os.listdir(folder) if os.path.isdir(os.path.join(folder, i))]
|
| 67 |
+
file_list = sorted(file_list)
|
| 68 |
+
return file_list
|
| 69 |
+
|
| 70 |
+
|
| 71 |
+
def release_model():
|
| 72 |
+
if "model_manager" in st.session_state:
|
| 73 |
+
st.session_state["model_manager"].to("cpu")
|
| 74 |
+
del st.session_state["loaded_model_path"]
|
| 75 |
+
del st.session_state["model_manager"]
|
| 76 |
+
del st.session_state["pipeline"]
|
| 77 |
+
torch.cuda.empty_cache()
|
| 78 |
+
|
| 79 |
+
|
| 80 |
+
def load_model(model_type, model_path):
|
| 81 |
+
model_manager = ModelManager()
|
| 82 |
+
if model_type == "HunyuanDiT":
|
| 83 |
+
model_manager.load_models([
|
| 84 |
+
os.path.join(model_path, "clip_text_encoder/pytorch_model.bin"),
|
| 85 |
+
os.path.join(model_path, "mt5/pytorch_model.bin"),
|
| 86 |
+
os.path.join(model_path, "model/pytorch_model_ema.pt"),
|
| 87 |
+
os.path.join(model_path, "sdxl-vae-fp16-fix/diffusion_pytorch_model.bin"),
|
| 88 |
+
])
|
| 89 |
+
elif model_type == "Kolors":
|
| 90 |
+
model_manager.load_models([
|
| 91 |
+
os.path.join(model_path, "text_encoder"),
|
| 92 |
+
os.path.join(model_path, "unet/diffusion_pytorch_model.safetensors"),
|
| 93 |
+
os.path.join(model_path, "vae/diffusion_pytorch_model.safetensors"),
|
| 94 |
+
])
|
| 95 |
+
elif model_type == "FLUX":
|
| 96 |
+
model_manager.torch_dtype = torch.bfloat16
|
| 97 |
+
file_list = [
|
| 98 |
+
os.path.join(model_path, "text_encoder/model.safetensors"),
|
| 99 |
+
os.path.join(model_path, "text_encoder_2"),
|
| 100 |
+
]
|
| 101 |
+
for file_name in os.listdir(model_path):
|
| 102 |
+
if file_name.endswith(".safetensors"):
|
| 103 |
+
file_list.append(os.path.join(model_path, file_name))
|
| 104 |
+
model_manager.load_models(file_list)
|
| 105 |
+
else:
|
| 106 |
+
model_manager.load_model(model_path)
|
| 107 |
+
pipeline = config[model_type]["pipeline_class"].from_model_manager(model_manager)
|
| 108 |
+
st.session_state.loaded_model_path = model_path
|
| 109 |
+
st.session_state.model_manager = model_manager
|
| 110 |
+
st.session_state.pipeline = pipeline
|
| 111 |
+
return model_manager, pipeline
|
| 112 |
+
|
| 113 |
+
|
| 114 |
+
def use_output_image_as_input(update=True):
|
| 115 |
+
# Search for input image
|
| 116 |
+
output_image_id = 0
|
| 117 |
+
selected_output_image = None
|
| 118 |
+
while True:
|
| 119 |
+
if f"use_output_as_input_{output_image_id}" not in st.session_state:
|
| 120 |
+
break
|
| 121 |
+
if st.session_state[f"use_output_as_input_{output_image_id}"]:
|
| 122 |
+
selected_output_image = st.session_state["output_images"][output_image_id]
|
| 123 |
+
break
|
| 124 |
+
output_image_id += 1
|
| 125 |
+
if update and selected_output_image is not None:
|
| 126 |
+
st.session_state["input_image"] = selected_output_image
|
| 127 |
+
return selected_output_image is not None
|
| 128 |
+
|
| 129 |
+
|
| 130 |
+
def apply_stroke_to_image(stroke_image, image):
|
| 131 |
+
image = np.array(image.convert("RGB")).astype(np.float32)
|
| 132 |
+
height, width, _ = image.shape
|
| 133 |
+
|
| 134 |
+
stroke_image = np.array(Image.fromarray(stroke_image).resize((width, height))).astype(np.float32)
|
| 135 |
+
weight = stroke_image[:, :, -1:] / 255
|
| 136 |
+
stroke_image = stroke_image[:, :, :-1]
|
| 137 |
+
|
| 138 |
+
image = stroke_image * weight + image * (1 - weight)
|
| 139 |
+
image = np.clip(image, 0, 255).astype(np.uint8)
|
| 140 |
+
image = Image.fromarray(image)
|
| 141 |
+
return image
|
| 142 |
+
|
| 143 |
+
|
| 144 |
+
@st.cache_data
|
| 145 |
+
def image2bits(image):
|
| 146 |
+
image_byte = io.BytesIO()
|
| 147 |
+
image.save(image_byte, format="PNG")
|
| 148 |
+
image_byte = image_byte.getvalue()
|
| 149 |
+
return image_byte
|
| 150 |
+
|
| 151 |
+
|
| 152 |
+
def show_output_image(image):
|
| 153 |
+
st.image(image, use_column_width="always")
|
| 154 |
+
st.button("Use it as input image", key=f"use_output_as_input_{image_id}")
|
| 155 |
+
st.download_button("Download", data=image2bits(image), file_name="image.png", mime="image/png", key=f"download_output_{image_id}")
|
| 156 |
+
|
| 157 |
+
|
| 158 |
+
column_input, column_output = st.columns(2)
|
| 159 |
+
with st.sidebar:
|
| 160 |
+
# Select a model
|
| 161 |
+
with st.expander("Model", expanded=True):
|
| 162 |
+
model_type = st.selectbox("Model type", [model_type_ for model_type_ in config])
|
| 163 |
+
fixed_parameters = config[model_type]["fixed_parameters"]
|
| 164 |
+
model_path_list = ["None"] + load_model_list(model_type)
|
| 165 |
+
model_path = st.selectbox("Model path", model_path_list)
|
| 166 |
+
|
| 167 |
+
# Load the model
|
| 168 |
+
if model_path == "None":
|
| 169 |
+
# No models are selected. Release VRAM.
|
| 170 |
+
st.markdown("No models are selected.")
|
| 171 |
+
release_model()
|
| 172 |
+
else:
|
| 173 |
+
# A model is selected.
|
| 174 |
+
model_path = os.path.join(config[model_type]["model_folder"], model_path)
|
| 175 |
+
if st.session_state.get("loaded_model_path", "") != model_path:
|
| 176 |
+
# The loaded model is not the selected model. Reload it.
|
| 177 |
+
st.markdown(f"Loading model at {model_path}.")
|
| 178 |
+
st.markdown("Please wait a moment...")
|
| 179 |
+
release_model()
|
| 180 |
+
model_manager, pipeline = load_model(model_type, model_path)
|
| 181 |
+
st.markdown("Done.")
|
| 182 |
+
else:
|
| 183 |
+
# The loaded model is not the selected model. Fetch it from `st.session_state`.
|
| 184 |
+
st.markdown(f"Loading model at {model_path}.")
|
| 185 |
+
st.markdown("Please wait a moment...")
|
| 186 |
+
model_manager, pipeline = st.session_state.model_manager, st.session_state.pipeline
|
| 187 |
+
st.markdown("Done.")
|
| 188 |
+
|
| 189 |
+
# Show parameters
|
| 190 |
+
with st.expander("Prompt", expanded=True):
|
| 191 |
+
prompt = st.text_area("Positive prompt")
|
| 192 |
+
if "negative_prompt" in fixed_parameters:
|
| 193 |
+
negative_prompt = fixed_parameters["negative_prompt"]
|
| 194 |
+
else:
|
| 195 |
+
negative_prompt = st.text_area("Negative prompt")
|
| 196 |
+
if "cfg_scale" in fixed_parameters:
|
| 197 |
+
cfg_scale = fixed_parameters["cfg_scale"]
|
| 198 |
+
else:
|
| 199 |
+
cfg_scale = st.slider("Classifier-free guidance scale", min_value=1.0, max_value=10.0, value=7.5)
|
| 200 |
+
with st.expander("Image", expanded=True):
|
| 201 |
+
if "num_inference_steps" in fixed_parameters:
|
| 202 |
+
num_inference_steps = fixed_parameters["num_inference_steps"]
|
| 203 |
+
else:
|
| 204 |
+
num_inference_steps = st.slider("Inference steps", min_value=1, max_value=100, value=20)
|
| 205 |
+
if "height" in fixed_parameters:
|
| 206 |
+
height = fixed_parameters["height"]
|
| 207 |
+
else:
|
| 208 |
+
height = st.select_slider("Height", options=[256, 512, 768, 1024, 2048], value=512)
|
| 209 |
+
if "width" in fixed_parameters:
|
| 210 |
+
width = fixed_parameters["width"]
|
| 211 |
+
else:
|
| 212 |
+
width = st.select_slider("Width", options=[256, 512, 768, 1024, 2048], value=512)
|
| 213 |
+
num_images = st.number_input("Number of images", value=2)
|
| 214 |
+
use_fixed_seed = st.checkbox("Use fixed seed", value=False)
|
| 215 |
+
if use_fixed_seed:
|
| 216 |
+
seed = st.number_input("Random seed", min_value=0, max_value=10**9, step=1, value=0)
|
| 217 |
+
|
| 218 |
+
# Other fixed parameters
|
| 219 |
+
denoising_strength = 1.0
|
| 220 |
+
repetition = 1
|
| 221 |
+
|
| 222 |
+
|
| 223 |
+
# Show input image
|
| 224 |
+
with column_input:
|
| 225 |
+
with st.expander("Input image (Optional)", expanded=True):
|
| 226 |
+
with st.container(border=True):
|
| 227 |
+
column_white_board, column_upload_image = st.columns([1, 2])
|
| 228 |
+
with column_white_board:
|
| 229 |
+
create_white_board = st.button("Create white board")
|
| 230 |
+
delete_input_image = st.button("Delete input image")
|
| 231 |
+
with column_upload_image:
|
| 232 |
+
upload_image = st.file_uploader("Upload image", type=["png", "jpg"], key="upload_image")
|
| 233 |
+
|
| 234 |
+
if upload_image is not None:
|
| 235 |
+
st.session_state["input_image"] = crop_and_resize(Image.open(upload_image), height, width)
|
| 236 |
+
elif create_white_board:
|
| 237 |
+
st.session_state["input_image"] = Image.fromarray(np.ones((height, width, 3), dtype=np.uint8) * 255)
|
| 238 |
+
else:
|
| 239 |
+
use_output_image_as_input()
|
| 240 |
+
|
| 241 |
+
if delete_input_image and "input_image" in st.session_state:
|
| 242 |
+
del st.session_state.input_image
|
| 243 |
+
if delete_input_image and "upload_image" in st.session_state:
|
| 244 |
+
del st.session_state.upload_image
|
| 245 |
+
|
| 246 |
+
input_image = st.session_state.get("input_image", None)
|
| 247 |
+
if input_image is not None:
|
| 248 |
+
with st.container(border=True):
|
| 249 |
+
column_drawing_mode, column_color_1, column_color_2 = st.columns([4, 1, 1])
|
| 250 |
+
with column_drawing_mode:
|
| 251 |
+
drawing_mode = st.radio("Drawing tool", ["transform", "freedraw", "line", "rect"], horizontal=True, index=1)
|
| 252 |
+
with column_color_1:
|
| 253 |
+
stroke_color = st.color_picker("Stroke color")
|
| 254 |
+
with column_color_2:
|
| 255 |
+
fill_color = st.color_picker("Fill color")
|
| 256 |
+
stroke_width = st.slider("Stroke width", min_value=1, max_value=50, value=10)
|
| 257 |
+
with st.container(border=True):
|
| 258 |
+
denoising_strength = st.slider("Denoising strength", min_value=0.0, max_value=1.0, value=0.7)
|
| 259 |
+
repetition = st.slider("Repetition", min_value=1, max_value=8, value=1)
|
| 260 |
+
with st.container(border=True):
|
| 261 |
+
input_width, input_height = input_image.size
|
| 262 |
+
canvas_result = st_canvas(
|
| 263 |
+
fill_color=fill_color,
|
| 264 |
+
stroke_width=stroke_width,
|
| 265 |
+
stroke_color=stroke_color,
|
| 266 |
+
background_color="rgba(255, 255, 255, 0)",
|
| 267 |
+
background_image=input_image,
|
| 268 |
+
update_streamlit=True,
|
| 269 |
+
height=int(512 / input_width * input_height),
|
| 270 |
+
width=512,
|
| 271 |
+
drawing_mode=drawing_mode,
|
| 272 |
+
key="canvas"
|
| 273 |
+
)
|
| 274 |
+
|
| 275 |
+
num_painter_layer = st.number_input("Number of painter layers", min_value=0, max_value=10, step=1, value=0)
|
| 276 |
+
local_prompts, masks, mask_scales = [], [], []
|
| 277 |
+
white_board = Image.fromarray(np.ones((512, 512, 3), dtype=np.uint8) * 255)
|
| 278 |
+
painter_layers_json_data = []
|
| 279 |
+
for painter_tab_id in range(num_painter_layer):
|
| 280 |
+
with st.expander(f"Painter layer {painter_tab_id}", expanded=True):
|
| 281 |
+
enable_local_prompt = st.checkbox(f"Enable prompt {painter_tab_id}", value=True)
|
| 282 |
+
local_prompt = st.text_area(f"Prompt {painter_tab_id}")
|
| 283 |
+
mask_scale = st.slider(f"Mask scale {painter_tab_id}", min_value=0.0, max_value=3.0, value=1.0)
|
| 284 |
+
stroke_width = st.slider(f"Stroke width {painter_tab_id}", min_value=1, max_value=300, value=100)
|
| 285 |
+
canvas_result_local = st_canvas(
|
| 286 |
+
fill_color="#000000",
|
| 287 |
+
stroke_width=stroke_width,
|
| 288 |
+
stroke_color="#000000",
|
| 289 |
+
background_color="rgba(255, 255, 255, 0)",
|
| 290 |
+
background_image=white_board,
|
| 291 |
+
update_streamlit=True,
|
| 292 |
+
height=512,
|
| 293 |
+
width=512,
|
| 294 |
+
drawing_mode="freedraw",
|
| 295 |
+
key=f"canvas_{painter_tab_id}"
|
| 296 |
+
)
|
| 297 |
+
if canvas_result_local.json_data is not None:
|
| 298 |
+
painter_layers_json_data.append(canvas_result_local.json_data.copy())
|
| 299 |
+
painter_layers_json_data[-1]["prompt"] = local_prompt
|
| 300 |
+
if enable_local_prompt:
|
| 301 |
+
local_prompts.append(local_prompt)
|
| 302 |
+
if canvas_result_local.image_data is not None:
|
| 303 |
+
mask = apply_stroke_to_image(canvas_result_local.image_data, white_board)
|
| 304 |
+
else:
|
| 305 |
+
mask = white_board
|
| 306 |
+
mask = Image.fromarray(255 - np.array(mask))
|
| 307 |
+
masks.append(mask)
|
| 308 |
+
mask_scales.append(mask_scale)
|
| 309 |
+
save_painter_layers = st.button("Save painter layers")
|
| 310 |
+
if save_painter_layers:
|
| 311 |
+
os.makedirs("data/painter_layers", exist_ok=True)
|
| 312 |
+
json_file_path = f"data/painter_layers/{time.time_ns()}.json"
|
| 313 |
+
with open(json_file_path, "w") as f:
|
| 314 |
+
json.dump(painter_layers_json_data, f, indent=4)
|
| 315 |
+
st.markdown(f"Painter layers are saved in {json_file_path}.")
|
| 316 |
+
|
| 317 |
+
|
| 318 |
+
with column_output:
|
| 319 |
+
run_button = st.button("Generate image", type="primary")
|
| 320 |
+
auto_update = st.checkbox("Auto update", value=False)
|
| 321 |
+
num_image_columns = st.slider("Columns", min_value=1, max_value=8, value=2)
|
| 322 |
+
image_columns = st.columns(num_image_columns)
|
| 323 |
+
|
| 324 |
+
# Run
|
| 325 |
+
if (run_button or auto_update) and model_path != "None":
|
| 326 |
+
|
| 327 |
+
if input_image is not None:
|
| 328 |
+
input_image = input_image.resize((width, height))
|
| 329 |
+
if canvas_result.image_data is not None:
|
| 330 |
+
input_image = apply_stroke_to_image(canvas_result.image_data, input_image)
|
| 331 |
+
|
| 332 |
+
output_images = []
|
| 333 |
+
for image_id in range(num_images * repetition):
|
| 334 |
+
if use_fixed_seed:
|
| 335 |
+
torch.manual_seed(seed + image_id)
|
| 336 |
+
else:
|
| 337 |
+
torch.manual_seed(np.random.randint(0, 10**9))
|
| 338 |
+
if image_id >= num_images:
|
| 339 |
+
input_image = output_images[image_id - num_images]
|
| 340 |
+
with image_columns[image_id % num_image_columns]:
|
| 341 |
+
progress_bar_st = st.progress(0.0)
|
| 342 |
+
image = pipeline(
|
| 343 |
+
prompt, negative_prompt=negative_prompt,
|
| 344 |
+
local_prompts=local_prompts, masks=masks, mask_scales=mask_scales,
|
| 345 |
+
cfg_scale=cfg_scale, num_inference_steps=num_inference_steps,
|
| 346 |
+
height=height, width=width,
|
| 347 |
+
input_image=input_image, denoising_strength=denoising_strength,
|
| 348 |
+
progress_bar_st=progress_bar_st
|
| 349 |
+
)
|
| 350 |
+
output_images.append(image)
|
| 351 |
+
progress_bar_st.progress(1.0)
|
| 352 |
+
show_output_image(image)
|
| 353 |
+
st.session_state["output_images"] = output_images
|
| 354 |
+
|
| 355 |
+
elif "output_images" in st.session_state:
|
| 356 |
+
for image_id in range(len(st.session_state.output_images)):
|
| 357 |
+
with image_columns[image_id % num_image_columns]:
|
| 358 |
+
image = st.session_state.output_images[image_id]
|
| 359 |
+
progress_bar = st.progress(1.0)
|
| 360 |
+
show_output_image(image)
|
| 361 |
+
if "upload_image" in st.session_state and use_output_image_as_input(update=False):
|
| 362 |
+
st.markdown("If you want to use an output image as input image, please delete the uploaded image manually.")
|
diffsynth-studio/apps/streamlit/pages/2_Video_Creator.py
ADDED
|
@@ -0,0 +1,197 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import streamlit as st
|
| 2 |
+
st.set_page_config(layout="wide")
|
| 3 |
+
from diffsynth import SDVideoPipelineRunner
|
| 4 |
+
import os
|
| 5 |
+
import numpy as np
|
| 6 |
+
|
| 7 |
+
|
| 8 |
+
def load_model_list(folder):
|
| 9 |
+
file_list = os.listdir(folder)
|
| 10 |
+
file_list = [i for i in file_list if i.endswith(".safetensors") or i.endswith(".pth") or i.endswith(".ckpt")]
|
| 11 |
+
file_list = sorted(file_list)
|
| 12 |
+
return file_list
|
| 13 |
+
|
| 14 |
+
|
| 15 |
+
def match_processor_id(model_name, supported_processor_id_list):
|
| 16 |
+
sorted_processor_id = [i[1] for i in sorted([(-len(i), i) for i in supported_processor_id_list])]
|
| 17 |
+
for processor_id in sorted_processor_id:
|
| 18 |
+
if processor_id in model_name:
|
| 19 |
+
return supported_processor_id_list.index(processor_id) + 1
|
| 20 |
+
return 0
|
| 21 |
+
|
| 22 |
+
|
| 23 |
+
config = {
|
| 24 |
+
"models": {
|
| 25 |
+
"model_list": [],
|
| 26 |
+
"textual_inversion_folder": "models/textual_inversion",
|
| 27 |
+
"device": "cuda",
|
| 28 |
+
"lora_alphas": [],
|
| 29 |
+
"controlnet_units": []
|
| 30 |
+
},
|
| 31 |
+
"data": {
|
| 32 |
+
"input_frames": None,
|
| 33 |
+
"controlnet_frames": [],
|
| 34 |
+
"output_folder": "output",
|
| 35 |
+
"fps": 60
|
| 36 |
+
},
|
| 37 |
+
"pipeline": {
|
| 38 |
+
"seed": 0,
|
| 39 |
+
"pipeline_inputs": {}
|
| 40 |
+
}
|
| 41 |
+
}
|
| 42 |
+
|
| 43 |
+
|
| 44 |
+
with st.expander("Model", expanded=True):
|
| 45 |
+
stable_diffusion_ckpt = st.selectbox("Stable Diffusion", ["None"] + load_model_list("models/stable_diffusion"))
|
| 46 |
+
if stable_diffusion_ckpt != "None":
|
| 47 |
+
config["models"]["model_list"].append(os.path.join("models/stable_diffusion", stable_diffusion_ckpt))
|
| 48 |
+
animatediff_ckpt = st.selectbox("AnimateDiff", ["None"] + load_model_list("models/AnimateDiff"))
|
| 49 |
+
if animatediff_ckpt != "None":
|
| 50 |
+
config["models"]["model_list"].append(os.path.join("models/AnimateDiff", animatediff_ckpt))
|
| 51 |
+
column_lora, column_lora_alpha = st.columns([2, 1])
|
| 52 |
+
with column_lora:
|
| 53 |
+
sd_lora_ckpt = st.selectbox("LoRA", ["None"] + load_model_list("models/lora"))
|
| 54 |
+
with column_lora_alpha:
|
| 55 |
+
lora_alpha = st.slider("LoRA Alpha", min_value=-4.0, max_value=4.0, value=1.0, step=0.1)
|
| 56 |
+
if sd_lora_ckpt != "None":
|
| 57 |
+
config["models"]["model_list"].append(os.path.join("models/lora", sd_lora_ckpt))
|
| 58 |
+
config["models"]["lora_alphas"].append(lora_alpha)
|
| 59 |
+
|
| 60 |
+
|
| 61 |
+
with st.expander("Data", expanded=True):
|
| 62 |
+
with st.container(border=True):
|
| 63 |
+
input_video = st.text_input("Input Video File Path (e.g., data/your_video.mp4)", value="")
|
| 64 |
+
column_height, column_width, column_start_frame_index, column_end_frame_index = st.columns([2, 2, 1, 1])
|
| 65 |
+
with column_height:
|
| 66 |
+
height = st.select_slider("Height", options=[256, 512, 768, 1024, 1536, 2048], value=1024)
|
| 67 |
+
with column_width:
|
| 68 |
+
width = st.select_slider("Width", options=[256, 512, 768, 1024, 1536, 2048], value=1024)
|
| 69 |
+
with column_start_frame_index:
|
| 70 |
+
start_frame_id = st.number_input("Start Frame id", value=0)
|
| 71 |
+
with column_end_frame_index:
|
| 72 |
+
end_frame_id = st.number_input("End Frame id", value=16)
|
| 73 |
+
if input_video != "":
|
| 74 |
+
config["data"]["input_frames"] = {
|
| 75 |
+
"video_file": input_video,
|
| 76 |
+
"image_folder": None,
|
| 77 |
+
"height": height,
|
| 78 |
+
"width": width,
|
| 79 |
+
"start_frame_id": start_frame_id,
|
| 80 |
+
"end_frame_id": end_frame_id
|
| 81 |
+
}
|
| 82 |
+
with st.container(border=True):
|
| 83 |
+
output_video = st.text_input("Output Video File Path (e.g., data/a_folder_to_save_something)", value="output")
|
| 84 |
+
fps = st.number_input("FPS", value=60)
|
| 85 |
+
config["data"]["output_folder"] = output_video
|
| 86 |
+
config["data"]["fps"] = fps
|
| 87 |
+
|
| 88 |
+
|
| 89 |
+
with st.expander("ControlNet Units", expanded=True):
|
| 90 |
+
supported_processor_id_list = ["canny", "depth", "softedge", "lineart", "lineart_anime", "openpose", "tile"]
|
| 91 |
+
controlnet_units = st.tabs(["ControlNet Unit 0", "ControlNet Unit 1", "ControlNet Unit 2"])
|
| 92 |
+
for controlnet_id in range(len(controlnet_units)):
|
| 93 |
+
with controlnet_units[controlnet_id]:
|
| 94 |
+
controlnet_ckpt = st.selectbox("ControlNet", ["None"] + load_model_list("models/ControlNet"),
|
| 95 |
+
key=f"controlnet_ckpt_{controlnet_id}")
|
| 96 |
+
processor_id = st.selectbox("Processor", ["None"] + supported_processor_id_list,
|
| 97 |
+
index=match_processor_id(controlnet_ckpt, supported_processor_id_list),
|
| 98 |
+
disabled=controlnet_ckpt == "None", key=f"processor_id_{controlnet_id}")
|
| 99 |
+
controlnet_scale = st.slider("Scale", min_value=0.0, max_value=1.0, step=0.01, value=0.5,
|
| 100 |
+
disabled=controlnet_ckpt == "None", key=f"controlnet_scale_{controlnet_id}")
|
| 101 |
+
use_input_video_as_controlnet_input = st.checkbox("Use input video as ControlNet input", value=True,
|
| 102 |
+
disabled=controlnet_ckpt == "None",
|
| 103 |
+
key=f"use_input_video_as_controlnet_input_{controlnet_id}")
|
| 104 |
+
if not use_input_video_as_controlnet_input:
|
| 105 |
+
controlnet_input_video = st.text_input("ControlNet Input Video File Path", value="",
|
| 106 |
+
disabled=controlnet_ckpt == "None", key=f"controlnet_input_video_{controlnet_id}")
|
| 107 |
+
column_height, column_width, column_start_frame_index, column_end_frame_index = st.columns([2, 2, 1, 1])
|
| 108 |
+
with column_height:
|
| 109 |
+
height = st.select_slider("Height", options=[256, 512, 768, 1024, 1536, 2048], value=1024,
|
| 110 |
+
disabled=controlnet_ckpt == "None", key=f"controlnet_height_{controlnet_id}")
|
| 111 |
+
with column_width:
|
| 112 |
+
width = st.select_slider("Width", options=[256, 512, 768, 1024, 1536, 2048], value=1024,
|
| 113 |
+
disabled=controlnet_ckpt == "None", key=f"controlnet_width_{controlnet_id}")
|
| 114 |
+
with column_start_frame_index:
|
| 115 |
+
start_frame_id = st.number_input("Start Frame id", value=0,
|
| 116 |
+
disabled=controlnet_ckpt == "None", key=f"controlnet_start_frame_id_{controlnet_id}")
|
| 117 |
+
with column_end_frame_index:
|
| 118 |
+
end_frame_id = st.number_input("End Frame id", value=16,
|
| 119 |
+
disabled=controlnet_ckpt == "None", key=f"controlnet_end_frame_id_{controlnet_id}")
|
| 120 |
+
if input_video != "":
|
| 121 |
+
config["data"]["input_video"] = {
|
| 122 |
+
"video_file": input_video,
|
| 123 |
+
"image_folder": None,
|
| 124 |
+
"height": height,
|
| 125 |
+
"width": width,
|
| 126 |
+
"start_frame_id": start_frame_id,
|
| 127 |
+
"end_frame_id": end_frame_id
|
| 128 |
+
}
|
| 129 |
+
if controlnet_ckpt != "None":
|
| 130 |
+
config["models"]["model_list"].append(os.path.join("models/ControlNet", controlnet_ckpt))
|
| 131 |
+
config["models"]["controlnet_units"].append({
|
| 132 |
+
"processor_id": processor_id,
|
| 133 |
+
"model_path": os.path.join("models/ControlNet", controlnet_ckpt),
|
| 134 |
+
"scale": controlnet_scale,
|
| 135 |
+
})
|
| 136 |
+
if use_input_video_as_controlnet_input:
|
| 137 |
+
config["data"]["controlnet_frames"].append(config["data"]["input_frames"])
|
| 138 |
+
else:
|
| 139 |
+
config["data"]["controlnet_frames"].append({
|
| 140 |
+
"video_file": input_video,
|
| 141 |
+
"image_folder": None,
|
| 142 |
+
"height": height,
|
| 143 |
+
"width": width,
|
| 144 |
+
"start_frame_id": start_frame_id,
|
| 145 |
+
"end_frame_id": end_frame_id
|
| 146 |
+
})
|
| 147 |
+
|
| 148 |
+
|
| 149 |
+
with st.container(border=True):
|
| 150 |
+
with st.expander("Seed", expanded=True):
|
| 151 |
+
use_fixed_seed = st.checkbox("Use fixed seed", value=False)
|
| 152 |
+
if use_fixed_seed:
|
| 153 |
+
seed = st.number_input("Random seed", min_value=0, max_value=10**9, step=1, value=0)
|
| 154 |
+
else:
|
| 155 |
+
seed = np.random.randint(0, 10**9)
|
| 156 |
+
with st.expander("Textual Guidance", expanded=True):
|
| 157 |
+
prompt = st.text_area("Positive prompt")
|
| 158 |
+
negative_prompt = st.text_area("Negative prompt")
|
| 159 |
+
column_cfg_scale, column_clip_skip = st.columns(2)
|
| 160 |
+
with column_cfg_scale:
|
| 161 |
+
cfg_scale = st.slider("Classifier-free guidance scale", min_value=1.0, max_value=10.0, value=7.0)
|
| 162 |
+
with column_clip_skip:
|
| 163 |
+
clip_skip = st.slider("Clip Skip", min_value=1, max_value=4, value=1)
|
| 164 |
+
with st.expander("Denoising", expanded=True):
|
| 165 |
+
column_num_inference_steps, column_denoising_strength = st.columns(2)
|
| 166 |
+
with column_num_inference_steps:
|
| 167 |
+
num_inference_steps = st.slider("Inference steps", min_value=1, max_value=100, value=10)
|
| 168 |
+
with column_denoising_strength:
|
| 169 |
+
denoising_strength = st.slider("Denoising strength", min_value=0.0, max_value=1.0, value=1.0)
|
| 170 |
+
with st.expander("Efficiency", expanded=False):
|
| 171 |
+
animatediff_batch_size = st.slider("Animatediff batch size (sliding window size)", min_value=1, max_value=32, value=16, step=1)
|
| 172 |
+
animatediff_stride = st.slider("Animatediff stride",
|
| 173 |
+
min_value=1,
|
| 174 |
+
max_value=max(2, animatediff_batch_size),
|
| 175 |
+
value=max(1, animatediff_batch_size // 2),
|
| 176 |
+
step=1)
|
| 177 |
+
unet_batch_size = st.slider("UNet batch size", min_value=1, max_value=32, value=1, step=1)
|
| 178 |
+
controlnet_batch_size = st.slider("ControlNet batch size", min_value=1, max_value=32, value=1, step=1)
|
| 179 |
+
cross_frame_attention = st.checkbox("Enable Cross-Frame Attention", value=False)
|
| 180 |
+
config["pipeline"]["seed"] = seed
|
| 181 |
+
config["pipeline"]["pipeline_inputs"] = {
|
| 182 |
+
"prompt": prompt,
|
| 183 |
+
"negative_prompt": negative_prompt,
|
| 184 |
+
"cfg_scale": cfg_scale,
|
| 185 |
+
"clip_skip": clip_skip,
|
| 186 |
+
"denoising_strength": denoising_strength,
|
| 187 |
+
"num_inference_steps": num_inference_steps,
|
| 188 |
+
"animatediff_batch_size": animatediff_batch_size,
|
| 189 |
+
"animatediff_stride": animatediff_stride,
|
| 190 |
+
"unet_batch_size": unet_batch_size,
|
| 191 |
+
"controlnet_batch_size": controlnet_batch_size,
|
| 192 |
+
"cross_frame_attention": cross_frame_attention,
|
| 193 |
+
}
|
| 194 |
+
|
| 195 |
+
run_button = st.button("☢️Run☢️", type="primary")
|
| 196 |
+
if run_button:
|
| 197 |
+
SDVideoPipelineRunner(in_streamlit=True).run(config)
|
diffsynth-studio/diffsynth.egg-info/PKG-INFO
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
Metadata-Version: 2.4
|
| 2 |
+
Name: diffsynth
|
| 3 |
+
Version: 1.1.7
|
| 4 |
+
Summary: Enjoy the magic of Diffusion models!
|
| 5 |
+
Author: Artiprocher
|
| 6 |
+
Classifier: Programming Language :: Python :: 3
|
| 7 |
+
Classifier: License :: OSI Approved :: Apache Software License
|
| 8 |
+
Classifier: Operating System :: OS Independent
|
| 9 |
+
Requires-Python: >=3.6
|
| 10 |
+
License-File: LICENSE
|
| 11 |
+
Requires-Dist: torch>=2.0.0
|
| 12 |
+
Requires-Dist: torchvision
|
| 13 |
+
Requires-Dist: cupy-cuda12x
|
| 14 |
+
Requires-Dist: transformers==4.56.0
|
| 15 |
+
Requires-Dist: controlnet-aux==0.0.7
|
| 16 |
+
Requires-Dist: imageio
|
| 17 |
+
Requires-Dist: imageio[ffmpeg]
|
| 18 |
+
Requires-Dist: safetensors
|
| 19 |
+
Requires-Dist: einops
|
| 20 |
+
Requires-Dist: sentencepiece
|
| 21 |
+
Requires-Dist: protobuf
|
| 22 |
+
Requires-Dist: modelscope
|
| 23 |
+
Requires-Dist: ftfy
|
| 24 |
+
Requires-Dist: pynvml
|
| 25 |
+
Requires-Dist: pandas
|
| 26 |
+
Requires-Dist: accelerate
|
| 27 |
+
Dynamic: author
|
| 28 |
+
Dynamic: classifier
|
| 29 |
+
Dynamic: license-file
|
| 30 |
+
Dynamic: requires-dist
|
| 31 |
+
Dynamic: requires-python
|
| 32 |
+
Dynamic: summary
|
diffsynth-studio/diffsynth.egg-info/SOURCES.txt
ADDED
|
@@ -0,0 +1,252 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
LICENSE
|
| 2 |
+
setup.py
|
| 3 |
+
diffsynth/__init__.py
|
| 4 |
+
diffsynth.egg-info/PKG-INFO
|
| 5 |
+
diffsynth.egg-info/SOURCES.txt
|
| 6 |
+
diffsynth.egg-info/dependency_links.txt
|
| 7 |
+
diffsynth.egg-info/requires.txt
|
| 8 |
+
diffsynth.egg-info/top_level.txt
|
| 9 |
+
diffsynth/configs/__init__.py
|
| 10 |
+
diffsynth/configs/model_config.py
|
| 11 |
+
diffsynth/controlnets/__init__.py
|
| 12 |
+
diffsynth/controlnets/controlnet_unit.py
|
| 13 |
+
diffsynth/controlnets/processors.py
|
| 14 |
+
diffsynth/data/__init__.py
|
| 15 |
+
diffsynth/data/simple_text_image.py
|
| 16 |
+
diffsynth/data/video.py
|
| 17 |
+
diffsynth/distributed/__init__.py
|
| 18 |
+
diffsynth/distributed/xdit_context_parallel.py
|
| 19 |
+
diffsynth/extensions/__init__.py
|
| 20 |
+
diffsynth/extensions/ESRGAN/__init__.py
|
| 21 |
+
diffsynth/extensions/FastBlend/__init__.py
|
| 22 |
+
diffsynth/extensions/FastBlend/api.py
|
| 23 |
+
diffsynth/extensions/FastBlend/cupy_kernels.py
|
| 24 |
+
diffsynth/extensions/FastBlend/data.py
|
| 25 |
+
diffsynth/extensions/FastBlend/patch_match.py
|
| 26 |
+
diffsynth/extensions/FastBlend/runners/__init__.py
|
| 27 |
+
diffsynth/extensions/FastBlend/runners/accurate.py
|
| 28 |
+
diffsynth/extensions/FastBlend/runners/balanced.py
|
| 29 |
+
diffsynth/extensions/FastBlend/runners/fast.py
|
| 30 |
+
diffsynth/extensions/FastBlend/runners/interpolation.py
|
| 31 |
+
diffsynth/extensions/ImageQualityMetric/__init__.py
|
| 32 |
+
diffsynth/extensions/ImageQualityMetric/aesthetic.py
|
| 33 |
+
diffsynth/extensions/ImageQualityMetric/clip.py
|
| 34 |
+
diffsynth/extensions/ImageQualityMetric/config.py
|
| 35 |
+
diffsynth/extensions/ImageQualityMetric/hps.py
|
| 36 |
+
diffsynth/extensions/ImageQualityMetric/imagereward.py
|
| 37 |
+
diffsynth/extensions/ImageQualityMetric/mps.py
|
| 38 |
+
diffsynth/extensions/ImageQualityMetric/pickscore.py
|
| 39 |
+
diffsynth/extensions/ImageQualityMetric/BLIP/__init__.py
|
| 40 |
+
diffsynth/extensions/ImageQualityMetric/BLIP/blip.py
|
| 41 |
+
diffsynth/extensions/ImageQualityMetric/BLIP/blip_pretrain.py
|
| 42 |
+
diffsynth/extensions/ImageQualityMetric/BLIP/med.py
|
| 43 |
+
diffsynth/extensions/ImageQualityMetric/BLIP/vit.py
|
| 44 |
+
diffsynth/extensions/ImageQualityMetric/open_clip/__init__.py
|
| 45 |
+
diffsynth/extensions/ImageQualityMetric/open_clip/coca_model.py
|
| 46 |
+
diffsynth/extensions/ImageQualityMetric/open_clip/constants.py
|
| 47 |
+
diffsynth/extensions/ImageQualityMetric/open_clip/factory.py
|
| 48 |
+
diffsynth/extensions/ImageQualityMetric/open_clip/generation_utils.py
|
| 49 |
+
diffsynth/extensions/ImageQualityMetric/open_clip/hf_configs.py
|
| 50 |
+
diffsynth/extensions/ImageQualityMetric/open_clip/hf_model.py
|
| 51 |
+
diffsynth/extensions/ImageQualityMetric/open_clip/loss.py
|
| 52 |
+
diffsynth/extensions/ImageQualityMetric/open_clip/model.py
|
| 53 |
+
diffsynth/extensions/ImageQualityMetric/open_clip/modified_resnet.py
|
| 54 |
+
diffsynth/extensions/ImageQualityMetric/open_clip/openai.py
|
| 55 |
+
diffsynth/extensions/ImageQualityMetric/open_clip/pretrained.py
|
| 56 |
+
diffsynth/extensions/ImageQualityMetric/open_clip/push_to_hf_hub.py
|
| 57 |
+
diffsynth/extensions/ImageQualityMetric/open_clip/timm_model.py
|
| 58 |
+
diffsynth/extensions/ImageQualityMetric/open_clip/tokenizer.py
|
| 59 |
+
diffsynth/extensions/ImageQualityMetric/open_clip/transform.py
|
| 60 |
+
diffsynth/extensions/ImageQualityMetric/open_clip/transformer.py
|
| 61 |
+
diffsynth/extensions/ImageQualityMetric/open_clip/utils.py
|
| 62 |
+
diffsynth/extensions/ImageQualityMetric/open_clip/version.py
|
| 63 |
+
diffsynth/extensions/ImageQualityMetric/trainer/__init__.py
|
| 64 |
+
diffsynth/extensions/ImageQualityMetric/trainer/models/__init__.py
|
| 65 |
+
diffsynth/extensions/ImageQualityMetric/trainer/models/base_model.py
|
| 66 |
+
diffsynth/extensions/ImageQualityMetric/trainer/models/clip_model.py
|
| 67 |
+
diffsynth/extensions/ImageQualityMetric/trainer/models/cross_modeling.py
|
| 68 |
+
diffsynth/extensions/RIFE/__init__.py
|
| 69 |
+
diffsynth/extensions/pixartsigma/__init__.py
|
| 70 |
+
diffsynth/extensions/pixartsigma/diffusion_utils.py
|
| 71 |
+
diffsynth/extensions/pixartsigma/dpm_solver.py
|
| 72 |
+
diffsynth/extensions/pixartsigma/gaussian_diffusion.py
|
| 73 |
+
diffsynth/extensions/pixartsigma/utils.py
|
| 74 |
+
diffsynth/extensions/pixartsigma/dpm/__init__.py
|
| 75 |
+
diffsynth/extensions/pixartsigma/dpm/dpm_solver.py
|
| 76 |
+
diffsynth/extensions/pixartsigma/nets/PixArt.py
|
| 77 |
+
diffsynth/extensions/pixartsigma/nets/PixArtMS.py
|
| 78 |
+
diffsynth/extensions/pixartsigma/nets/PixArt_blocks.py
|
| 79 |
+
diffsynth/extensions/pixartsigma/nets/__init__.py
|
| 80 |
+
diffsynth/lora/__init__.py
|
| 81 |
+
diffsynth/lora/flux_lora.py
|
| 82 |
+
diffsynth/models/__init__.py
|
| 83 |
+
diffsynth/models/attention.py
|
| 84 |
+
diffsynth/models/cog_dit.py
|
| 85 |
+
diffsynth/models/cog_vae.py
|
| 86 |
+
diffsynth/models/downloader.py
|
| 87 |
+
diffsynth/models/flux_controlnet.py
|
| 88 |
+
diffsynth/models/flux_dit.py
|
| 89 |
+
diffsynth/models/flux_infiniteyou.py
|
| 90 |
+
diffsynth/models/flux_ipadapter.py
|
| 91 |
+
diffsynth/models/flux_lora_encoder.py
|
| 92 |
+
diffsynth/models/flux_text_encoder.py
|
| 93 |
+
diffsynth/models/flux_vae.py
|
| 94 |
+
diffsynth/models/flux_value_control.py
|
| 95 |
+
diffsynth/models/hunyuan_dit.py
|
| 96 |
+
diffsynth/models/hunyuan_dit_text_encoder.py
|
| 97 |
+
diffsynth/models/hunyuan_video_dit.py
|
| 98 |
+
diffsynth/models/hunyuan_video_text_encoder.py
|
| 99 |
+
diffsynth/models/hunyuan_video_vae_decoder.py
|
| 100 |
+
diffsynth/models/hunyuan_video_vae_encoder.py
|
| 101 |
+
diffsynth/models/kolors_text_encoder.py
|
| 102 |
+
diffsynth/models/lora.py
|
| 103 |
+
diffsynth/models/model_manager.py
|
| 104 |
+
diffsynth/models/nexus_gen.py
|
| 105 |
+
diffsynth/models/nexus_gen_ar_model.py
|
| 106 |
+
diffsynth/models/nexus_gen_projector.py
|
| 107 |
+
diffsynth/models/omnigen.py
|
| 108 |
+
diffsynth/models/qwen_image_dit.py
|
| 109 |
+
diffsynth/models/qwen_image_text_encoder.py
|
| 110 |
+
diffsynth/models/qwen_image_vae.py
|
| 111 |
+
diffsynth/models/qwenvl.py
|
| 112 |
+
diffsynth/models/sd3_dit.py
|
| 113 |
+
diffsynth/models/sd3_temp_dit.py
|
| 114 |
+
diffsynth/models/sd3_text_encoder.py
|
| 115 |
+
diffsynth/models/sd3_vae_decoder.py
|
| 116 |
+
diffsynth/models/sd3_vae_encoder.py
|
| 117 |
+
diffsynth/models/sd_controlnet.py
|
| 118 |
+
diffsynth/models/sd_ipadapter.py
|
| 119 |
+
diffsynth/models/sd_motion.py
|
| 120 |
+
diffsynth/models/sd_text_encoder.py
|
| 121 |
+
diffsynth/models/sd_unet.py
|
| 122 |
+
diffsynth/models/sd_vae_decoder.py
|
| 123 |
+
diffsynth/models/sd_vae_encoder.py
|
| 124 |
+
diffsynth/models/sdxl_controlnet.py
|
| 125 |
+
diffsynth/models/sdxl_ipadapter.py
|
| 126 |
+
diffsynth/models/sdxl_motion.py
|
| 127 |
+
diffsynth/models/sdxl_text_encoder.py
|
| 128 |
+
diffsynth/models/sdxl_unet.py
|
| 129 |
+
diffsynth/models/sdxl_vae_decoder.py
|
| 130 |
+
diffsynth/models/sdxl_vae_encoder.py
|
| 131 |
+
diffsynth/models/step1x_connector.py
|
| 132 |
+
diffsynth/models/stepvideo_dit.py
|
| 133 |
+
diffsynth/models/stepvideo_text_encoder.py
|
| 134 |
+
diffsynth/models/stepvideo_vae.py
|
| 135 |
+
diffsynth/models/svd_image_encoder.py
|
| 136 |
+
diffsynth/models/svd_unet.py
|
| 137 |
+
diffsynth/models/svd_vae_decoder.py
|
| 138 |
+
diffsynth/models/svd_vae_encoder.py
|
| 139 |
+
diffsynth/models/tiler.py
|
| 140 |
+
diffsynth/models/utils.py
|
| 141 |
+
diffsynth/models/wan_video_camera_controller.py
|
| 142 |
+
diffsynth/models/wan_video_dit.py
|
| 143 |
+
diffsynth/models/wan_video_dit_dino.py
|
| 144 |
+
diffsynth/models/wan_video_image_encoder.py
|
| 145 |
+
diffsynth/models/wan_video_motion_controller.py
|
| 146 |
+
diffsynth/models/wan_video_text_encoder.py
|
| 147 |
+
diffsynth/models/wan_video_vace.py
|
| 148 |
+
diffsynth/models/wan_video_vae.py
|
| 149 |
+
diffsynth/pipelines/__init__.py
|
| 150 |
+
diffsynth/pipelines/base.py
|
| 151 |
+
diffsynth/pipelines/cog_video.py
|
| 152 |
+
diffsynth/pipelines/dancer.py
|
| 153 |
+
diffsynth/pipelines/flux_image.py
|
| 154 |
+
diffsynth/pipelines/flux_image_new.py
|
| 155 |
+
diffsynth/pipelines/hunyuan_image.py
|
| 156 |
+
diffsynth/pipelines/hunyuan_video.py
|
| 157 |
+
diffsynth/pipelines/omnigen_image.py
|
| 158 |
+
diffsynth/pipelines/pipeline_runner.py
|
| 159 |
+
diffsynth/pipelines/qwen_image.py
|
| 160 |
+
diffsynth/pipelines/sd3_image.py
|
| 161 |
+
diffsynth/pipelines/sd_image.py
|
| 162 |
+
diffsynth/pipelines/sd_video.py
|
| 163 |
+
diffsynth/pipelines/sdxl_image.py
|
| 164 |
+
diffsynth/pipelines/sdxl_video.py
|
| 165 |
+
diffsynth/pipelines/step_video.py
|
| 166 |
+
diffsynth/pipelines/svd_video.py
|
| 167 |
+
diffsynth/pipelines/wan_video.py
|
| 168 |
+
diffsynth/pipelines/wan_video_new.py
|
| 169 |
+
diffsynth/processors/FastBlend.py
|
| 170 |
+
diffsynth/processors/PILEditor.py
|
| 171 |
+
diffsynth/processors/RIFE.py
|
| 172 |
+
diffsynth/processors/__init__.py
|
| 173 |
+
diffsynth/processors/base.py
|
| 174 |
+
diffsynth/processors/sequencial_processor.py
|
| 175 |
+
diffsynth/prompters/__init__.py
|
| 176 |
+
diffsynth/prompters/base_prompter.py
|
| 177 |
+
diffsynth/prompters/cog_prompter.py
|
| 178 |
+
diffsynth/prompters/flux_prompter.py
|
| 179 |
+
diffsynth/prompters/hunyuan_dit_prompter.py
|
| 180 |
+
diffsynth/prompters/hunyuan_video_prompter.py
|
| 181 |
+
diffsynth/prompters/kolors_prompter.py
|
| 182 |
+
diffsynth/prompters/omnigen_prompter.py
|
| 183 |
+
diffsynth/prompters/omost.py
|
| 184 |
+
diffsynth/prompters/prompt_refiners.py
|
| 185 |
+
diffsynth/prompters/sd3_prompter.py
|
| 186 |
+
diffsynth/prompters/sd_prompter.py
|
| 187 |
+
diffsynth/prompters/sdxl_prompter.py
|
| 188 |
+
diffsynth/prompters/stepvideo_prompter.py
|
| 189 |
+
diffsynth/prompters/wan_prompter.py
|
| 190 |
+
diffsynth/schedulers/__init__.py
|
| 191 |
+
diffsynth/schedulers/continuous_ode.py
|
| 192 |
+
diffsynth/schedulers/ddim.py
|
| 193 |
+
diffsynth/schedulers/flow_match.py
|
| 194 |
+
diffsynth/tokenizer_configs/__init__.py
|
| 195 |
+
diffsynth/tokenizer_configs/cog/tokenizer/added_tokens.json
|
| 196 |
+
diffsynth/tokenizer_configs/cog/tokenizer/special_tokens_map.json
|
| 197 |
+
diffsynth/tokenizer_configs/cog/tokenizer/spiece.model
|
| 198 |
+
diffsynth/tokenizer_configs/cog/tokenizer/tokenizer_config.json
|
| 199 |
+
diffsynth/tokenizer_configs/flux/tokenizer_1/merges.txt
|
| 200 |
+
diffsynth/tokenizer_configs/flux/tokenizer_1/special_tokens_map.json
|
| 201 |
+
diffsynth/tokenizer_configs/flux/tokenizer_1/tokenizer_config.json
|
| 202 |
+
diffsynth/tokenizer_configs/flux/tokenizer_1/vocab.json
|
| 203 |
+
diffsynth/tokenizer_configs/flux/tokenizer_2/special_tokens_map.json
|
| 204 |
+
diffsynth/tokenizer_configs/flux/tokenizer_2/spiece.model
|
| 205 |
+
diffsynth/tokenizer_configs/flux/tokenizer_2/tokenizer.json
|
| 206 |
+
diffsynth/tokenizer_configs/flux/tokenizer_2/tokenizer_config.json
|
| 207 |
+
diffsynth/tokenizer_configs/hunyuan_dit/tokenizer/special_tokens_map.json
|
| 208 |
+
diffsynth/tokenizer_configs/hunyuan_dit/tokenizer/tokenizer_config.json
|
| 209 |
+
diffsynth/tokenizer_configs/hunyuan_dit/tokenizer/vocab.txt
|
| 210 |
+
diffsynth/tokenizer_configs/hunyuan_dit/tokenizer/vocab_org.txt
|
| 211 |
+
diffsynth/tokenizer_configs/hunyuan_dit/tokenizer_t5/config.json
|
| 212 |
+
diffsynth/tokenizer_configs/hunyuan_dit/tokenizer_t5/special_tokens_map.json
|
| 213 |
+
diffsynth/tokenizer_configs/hunyuan_dit/tokenizer_t5/spiece.model
|
| 214 |
+
diffsynth/tokenizer_configs/hunyuan_dit/tokenizer_t5/tokenizer_config.json
|
| 215 |
+
diffsynth/tokenizer_configs/hunyuan_video/tokenizer_1/merges.txt
|
| 216 |
+
diffsynth/tokenizer_configs/hunyuan_video/tokenizer_1/special_tokens_map.json
|
| 217 |
+
diffsynth/tokenizer_configs/hunyuan_video/tokenizer_1/tokenizer_config.json
|
| 218 |
+
diffsynth/tokenizer_configs/hunyuan_video/tokenizer_1/vocab.json
|
| 219 |
+
diffsynth/tokenizer_configs/hunyuan_video/tokenizer_2/preprocessor_config.json
|
| 220 |
+
diffsynth/tokenizer_configs/hunyuan_video/tokenizer_2/special_tokens_map.json
|
| 221 |
+
diffsynth/tokenizer_configs/hunyuan_video/tokenizer_2/tokenizer.json
|
| 222 |
+
diffsynth/tokenizer_configs/hunyuan_video/tokenizer_2/tokenizer_config.json
|
| 223 |
+
diffsynth/tokenizer_configs/kolors/tokenizer/tokenizer.model
|
| 224 |
+
diffsynth/tokenizer_configs/kolors/tokenizer/tokenizer_config.json
|
| 225 |
+
diffsynth/tokenizer_configs/kolors/tokenizer/vocab.txt
|
| 226 |
+
diffsynth/tokenizer_configs/stable_diffusion/tokenizer/merges.txt
|
| 227 |
+
diffsynth/tokenizer_configs/stable_diffusion/tokenizer/special_tokens_map.json
|
| 228 |
+
diffsynth/tokenizer_configs/stable_diffusion/tokenizer/tokenizer_config.json
|
| 229 |
+
diffsynth/tokenizer_configs/stable_diffusion/tokenizer/vocab.json
|
| 230 |
+
diffsynth/tokenizer_configs/stable_diffusion_3/tokenizer_1/merges.txt
|
| 231 |
+
diffsynth/tokenizer_configs/stable_diffusion_3/tokenizer_1/special_tokens_map.json
|
| 232 |
+
diffsynth/tokenizer_configs/stable_diffusion_3/tokenizer_1/tokenizer_config.json
|
| 233 |
+
diffsynth/tokenizer_configs/stable_diffusion_3/tokenizer_1/vocab.json
|
| 234 |
+
diffsynth/tokenizer_configs/stable_diffusion_3/tokenizer_2/merges.txt
|
| 235 |
+
diffsynth/tokenizer_configs/stable_diffusion_3/tokenizer_2/special_tokens_map.json
|
| 236 |
+
diffsynth/tokenizer_configs/stable_diffusion_3/tokenizer_2/tokenizer_config.json
|
| 237 |
+
diffsynth/tokenizer_configs/stable_diffusion_3/tokenizer_2/vocab.json
|
| 238 |
+
diffsynth/tokenizer_configs/stable_diffusion_3/tokenizer_3/special_tokens_map.json
|
| 239 |
+
diffsynth/tokenizer_configs/stable_diffusion_3/tokenizer_3/spiece.model
|
| 240 |
+
diffsynth/tokenizer_configs/stable_diffusion_3/tokenizer_3/tokenizer.json
|
| 241 |
+
diffsynth/tokenizer_configs/stable_diffusion_3/tokenizer_3/tokenizer_config.json
|
| 242 |
+
diffsynth/tokenizer_configs/stable_diffusion_xl/tokenizer_2/merges.txt
|
| 243 |
+
diffsynth/tokenizer_configs/stable_diffusion_xl/tokenizer_2/special_tokens_map.json
|
| 244 |
+
diffsynth/tokenizer_configs/stable_diffusion_xl/tokenizer_2/tokenizer_config.json
|
| 245 |
+
diffsynth/tokenizer_configs/stable_diffusion_xl/tokenizer_2/vocab.json
|
| 246 |
+
diffsynth/trainers/__init__.py
|
| 247 |
+
diffsynth/trainers/text_to_image.py
|
| 248 |
+
diffsynth/trainers/utils.py
|
| 249 |
+
diffsynth/utils/__init__.py
|
| 250 |
+
diffsynth/vram_management/__init__.py
|
| 251 |
+
diffsynth/vram_management/gradient_checkpointing.py
|
| 252 |
+
diffsynth/vram_management/layers.py
|
diffsynth-studio/diffsynth.egg-info/dependency_links.txt
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
|
diffsynth-studio/diffsynth.egg-info/requires.txt
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
torch>=2.0.0
|
| 2 |
+
torchvision
|
| 3 |
+
cupy-cuda12x
|
| 4 |
+
transformers==4.56.0
|
| 5 |
+
controlnet-aux==0.0.7
|
| 6 |
+
imageio
|
| 7 |
+
imageio[ffmpeg]
|
| 8 |
+
safetensors
|
| 9 |
+
einops
|
| 10 |
+
sentencepiece
|
| 11 |
+
protobuf
|
| 12 |
+
modelscope
|
| 13 |
+
ftfy
|
| 14 |
+
pynvml
|
| 15 |
+
pandas
|
| 16 |
+
accelerate
|
diffsynth-studio/diffsynth.egg-info/top_level.txt
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
diffsynth
|
diffsynth-studio/diffsynth/__init__.py
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from .data import *
|
| 2 |
+
from .models import *
|
| 3 |
+
from .prompters import *
|
| 4 |
+
from .schedulers import *
|
| 5 |
+
from .pipelines import *
|
| 6 |
+
from .controlnets import *
|
diffsynth-studio/diffsynth/__pycache__/__init__.cpython-310.pyc
ADDED
|
Binary file (332 Bytes). View file
|
|
|
diffsynth-studio/diffsynth/__pycache__/__init__.cpython-311.pyc
ADDED
|
Binary file (385 Bytes). View file
|
|
|
diffsynth-studio/diffsynth/configs/__init__.py
ADDED
|
File without changes
|
diffsynth-studio/diffsynth/configs/__pycache__/__init__.cpython-310.pyc
ADDED
|
Binary file (214 Bytes). View file
|
|
|
diffsynth-studio/diffsynth/configs/__pycache__/__init__.cpython-311.pyc
ADDED
|
Binary file (209 Bytes). View file
|
|
|
diffsynth-studio/diffsynth/configs/__pycache__/model_config.cpython-310.pyc
ADDED
|
Binary file (27.5 kB). View file
|
|
|
diffsynth-studio/diffsynth/configs/__pycache__/model_config.cpython-311.pyc
ADDED
|
Binary file (33 kB). View file
|
|
|
diffsynth-studio/diffsynth/configs/model_config.py
ADDED
|
@@ -0,0 +1,843 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from typing_extensions import Literal, TypeAlias
|
| 2 |
+
|
| 3 |
+
from ..models.sd_text_encoder import SDTextEncoder
|
| 4 |
+
from ..models.sd_unet import SDUNet
|
| 5 |
+
from ..models.sd_vae_encoder import SDVAEEncoder
|
| 6 |
+
from ..models.sd_vae_decoder import SDVAEDecoder
|
| 7 |
+
|
| 8 |
+
from ..models.sdxl_text_encoder import SDXLTextEncoder, SDXLTextEncoder2
|
| 9 |
+
from ..models.sdxl_unet import SDXLUNet
|
| 10 |
+
from ..models.sdxl_vae_decoder import SDXLVAEDecoder
|
| 11 |
+
from ..models.sdxl_vae_encoder import SDXLVAEEncoder
|
| 12 |
+
|
| 13 |
+
from ..models.sd3_text_encoder import SD3TextEncoder1, SD3TextEncoder2, SD3TextEncoder3
|
| 14 |
+
from ..models.sd3_dit import SD3DiT
|
| 15 |
+
from ..models.sd3_vae_decoder import SD3VAEDecoder
|
| 16 |
+
from ..models.sd3_vae_encoder import SD3VAEEncoder
|
| 17 |
+
|
| 18 |
+
from ..models.sd_controlnet import SDControlNet
|
| 19 |
+
from ..models.sdxl_controlnet import SDXLControlNetUnion
|
| 20 |
+
|
| 21 |
+
from ..models.sd_motion import SDMotionModel
|
| 22 |
+
from ..models.sdxl_motion import SDXLMotionModel
|
| 23 |
+
|
| 24 |
+
from ..models.svd_image_encoder import SVDImageEncoder
|
| 25 |
+
from ..models.svd_unet import SVDUNet
|
| 26 |
+
from ..models.svd_vae_decoder import SVDVAEDecoder
|
| 27 |
+
from ..models.svd_vae_encoder import SVDVAEEncoder
|
| 28 |
+
|
| 29 |
+
from ..models.sd_ipadapter import SDIpAdapter, IpAdapterCLIPImageEmbedder
|
| 30 |
+
from ..models.sdxl_ipadapter import SDXLIpAdapter, IpAdapterXLCLIPImageEmbedder
|
| 31 |
+
|
| 32 |
+
from ..models.hunyuan_dit_text_encoder import HunyuanDiTCLIPTextEncoder, HunyuanDiTT5TextEncoder
|
| 33 |
+
from ..models.hunyuan_dit import HunyuanDiT
|
| 34 |
+
|
| 35 |
+
from ..models.flux_dit import FluxDiT
|
| 36 |
+
from ..models.flux_text_encoder import FluxTextEncoder2
|
| 37 |
+
from ..models.flux_vae import FluxVAEEncoder, FluxVAEDecoder
|
| 38 |
+
from ..models.flux_controlnet import FluxControlNet
|
| 39 |
+
from ..models.flux_ipadapter import FluxIpAdapter
|
| 40 |
+
from ..models.flux_infiniteyou import InfiniteYouImageProjector
|
| 41 |
+
|
| 42 |
+
from ..models.cog_vae import CogVAEEncoder, CogVAEDecoder
|
| 43 |
+
from ..models.cog_dit import CogDiT
|
| 44 |
+
|
| 45 |
+
from ..models.omnigen import OmniGenTransformer
|
| 46 |
+
|
| 47 |
+
from ..models.hunyuan_video_vae_decoder import HunyuanVideoVAEDecoder
|
| 48 |
+
from ..models.hunyuan_video_vae_encoder import HunyuanVideoVAEEncoder
|
| 49 |
+
|
| 50 |
+
from ..extensions.RIFE import IFNet
|
| 51 |
+
from ..extensions.ESRGAN import RRDBNet
|
| 52 |
+
|
| 53 |
+
from ..models.hunyuan_video_dit import HunyuanVideoDiT
|
| 54 |
+
|
| 55 |
+
from ..models.stepvideo_vae import StepVideoVAE
|
| 56 |
+
from ..models.stepvideo_dit import StepVideoModel
|
| 57 |
+
|
| 58 |
+
from ..models.wan_video_dit import WanModel
|
| 59 |
+
from ..models.wan_video_text_encoder import WanTextEncoder
|
| 60 |
+
from ..models.wan_video_image_encoder import WanImageEncoder
|
| 61 |
+
from ..models.wan_video_vae import WanVideoVAE, WanVideoVAE38
|
| 62 |
+
from ..models.wan_video_motion_controller import WanMotionControllerModel
|
| 63 |
+
from ..models.wan_video_vace import VaceWanModel
|
| 64 |
+
|
| 65 |
+
from ..models.step1x_connector import Qwen2Connector
|
| 66 |
+
|
| 67 |
+
from ..models.flux_value_control import SingleValueEncoder
|
| 68 |
+
|
| 69 |
+
from ..lora.flux_lora import FluxLoraPatcher
|
| 70 |
+
from ..models.flux_lora_encoder import FluxLoRAEncoder
|
| 71 |
+
|
| 72 |
+
from ..models.nexus_gen_projector import NexusGenAdapter, NexusGenImageEmbeddingMerger
|
| 73 |
+
from ..models.nexus_gen import NexusGenAutoregressiveModel
|
| 74 |
+
|
| 75 |
+
from ..models.qwen_image_dit import QwenImageDiT
|
| 76 |
+
from ..models.qwen_image_text_encoder import QwenImageTextEncoder
|
| 77 |
+
from ..models.qwen_image_vae import QwenImageVAE
|
| 78 |
+
|
| 79 |
+
model_loader_configs = [
|
| 80 |
+
# These configs are provided for detecting model type automatically.
|
| 81 |
+
# The format is (state_dict_keys_hash, state_dict_keys_hash_with_shape, model_names, model_classes, model_resource)
|
| 82 |
+
(None, "091b0e30e77c76626b3ba62acdf95343", ["sd_controlnet"], [SDControlNet], "civitai"),
|
| 83 |
+
(None, "4a6c8306a27d916dea81263c8c88f450", ["hunyuan_dit_clip_text_encoder"], [HunyuanDiTCLIPTextEncoder], "civitai"),
|
| 84 |
+
(None, "f4aec400fe394297961218c768004521", ["hunyuan_dit"], [HunyuanDiT], "civitai"),
|
| 85 |
+
(None, "9e6e58043a5a2e332803ed42f6ee7181", ["hunyuan_dit_t5_text_encoder"], [HunyuanDiTT5TextEncoder], "civitai"),
|
| 86 |
+
(None, "13115dd45a6e1c39860f91ab073b8a78", ["sdxl_vae_encoder", "sdxl_vae_decoder"], [SDXLVAEEncoder, SDXLVAEDecoder], "diffusers"),
|
| 87 |
+
(None, "d78aa6797382a6d455362358a3295ea9", ["sd_ipadapter_clip_image_encoder"], [IpAdapterCLIPImageEmbedder], "diffusers"),
|
| 88 |
+
(None, "e291636cc15e803186b47404262ef812", ["sd_ipadapter"], [SDIpAdapter], "civitai"),
|
| 89 |
+
(None, "399c81f2f8de8d1843d0127a00f3c224", ["sdxl_ipadapter_clip_image_encoder"], [IpAdapterXLCLIPImageEmbedder], "diffusers"),
|
| 90 |
+
(None, "a64eac9aa0db4b9602213bc0131281c7", ["sdxl_ipadapter"], [SDXLIpAdapter], "civitai"),
|
| 91 |
+
(None, "52817e4fdd89df154f02749ca6f692ac", ["sdxl_unet"], [SDXLUNet], "diffusers"),
|
| 92 |
+
(None, "03343c606f16d834d6411d0902b53636", ["sd_text_encoder", "sd_unet", "sd_vae_decoder", "sd_vae_encoder"], [SDTextEncoder, SDUNet, SDVAEDecoder, SDVAEEncoder], "civitai"),
|
| 93 |
+
(None, "d4ba77a7ece070679b4a987f58f201e9", ["sd_text_encoder"], [SDTextEncoder], "civitai"),
|
| 94 |
+
(None, "d0c89e55c5a57cf3981def0cb1c9e65a", ["sd_vae_decoder", "sd_vae_encoder"], [SDVAEDecoder, SDVAEEncoder], "civitai"),
|
| 95 |
+
(None, "3926bf373b39a67eeafd7901478a47a7", ["sd_unet"], [SDUNet], "civitai"),
|
| 96 |
+
(None, "1e0c39ec176b9007c05f76d52b554a4d", ["sd3_text_encoder_1", "sd3_text_encoder_2", "sd3_dit", "sd3_vae_encoder", "sd3_vae_decoder"], [SD3TextEncoder1, SD3TextEncoder2, SD3DiT, SD3VAEEncoder, SD3VAEDecoder], "civitai"),
|
| 97 |
+
(None, "d9e0290829ba8d98e28e1a2b1407db4a", ["sd3_text_encoder_1", "sd3_text_encoder_2", "sd3_text_encoder_3", "sd3_dit", "sd3_vae_encoder", "sd3_vae_decoder"], [SD3TextEncoder1, SD3TextEncoder2, SD3TextEncoder3, SD3DiT, SD3VAEEncoder, SD3VAEDecoder], "civitai"),
|
| 98 |
+
(None, "5072d0b24e406b49507abe861cf97691", ["sd3_text_encoder_3"], [SD3TextEncoder3], "civitai"),
|
| 99 |
+
(None, "4cf64a799d04260df438c6f33c9a047e", ["sdxl_text_encoder", "sdxl_text_encoder_2", "sdxl_unet", "sdxl_vae_decoder", "sdxl_vae_encoder"], [SDXLTextEncoder, SDXLTextEncoder2, SDXLUNet, SDXLVAEDecoder, SDXLVAEEncoder], "civitai"),
|
| 100 |
+
(None, "d9b008a867c498ab12ad24042eff8e3f", ["sdxl_text_encoder", "sdxl_text_encoder_2", "sdxl_unet", "sdxl_vae_decoder", "sdxl_vae_encoder"], [SDXLTextEncoder, SDXLTextEncoder2, SDXLUNet, SDXLVAEDecoder, SDXLVAEEncoder], "civitai"), # SDXL-Turbo
|
| 101 |
+
(None, "025bb7452e531a3853d951d77c63f032", ["sdxl_text_encoder", "sdxl_text_encoder_2"], [SDXLTextEncoder, SDXLTextEncoder2], "civitai"),
|
| 102 |
+
(None, "298997b403a4245c04102c9f36aac348", ["sdxl_unet"], [SDXLUNet], "civitai"),
|
| 103 |
+
(None, "2a07abce74b4bdc696b76254ab474da6", ["svd_image_encoder", "svd_unet", "svd_vae_decoder", "svd_vae_encoder"], [SVDImageEncoder, SVDUNet, SVDVAEDecoder, SVDVAEEncoder], "civitai"),
|
| 104 |
+
(None, "c96a285a6888465f87de22a984d049fb", ["sd_motion_modules"], [SDMotionModel], "civitai"),
|
| 105 |
+
(None, "72907b92caed19bdb2adb89aa4063fe2", ["sdxl_motion_modules"], [SDXLMotionModel], "civitai"),
|
| 106 |
+
(None, "31d2d9614fba60511fc9bf2604aa01f7", ["sdxl_controlnet"], [SDXLControlNetUnion], "diffusers"),
|
| 107 |
+
(None, "94eefa3dac9cec93cb1ebaf1747d7b78", ["sd3_text_encoder_1"], [SD3TextEncoder1], "diffusers"),
|
| 108 |
+
(None, "1aafa3cc91716fb6b300cc1cd51b85a3", ["flux_vae_encoder", "flux_vae_decoder"], [FluxVAEEncoder, FluxVAEDecoder], "diffusers"),
|
| 109 |
+
(None, "21ea55f476dfc4fd135587abb59dfe5d", ["flux_vae_encoder", "flux_vae_decoder"], [FluxVAEEncoder, FluxVAEDecoder], "civitai"),
|
| 110 |
+
(None, "a29710fea6dddb0314663ee823598e50", ["flux_dit"], [FluxDiT], "civitai"),
|
| 111 |
+
(None, "57b02550baab820169365b3ee3afa2c9", ["flux_dit"], [FluxDiT], "civitai"),
|
| 112 |
+
(None, "3394f306c4cbf04334b712bf5aaed95f", ["flux_dit"], [FluxDiT], "civitai"),
|
| 113 |
+
(None, "023f054d918a84ccf503481fd1e3379e", ["flux_dit"], [FluxDiT], "civitai"),
|
| 114 |
+
(None, "d02f41c13549fa5093d3521f62a5570a", ["flux_dit"], [FluxDiT], "civitai"),
|
| 115 |
+
(None, "605c56eab23e9e2af863ad8f0813a25d", ["flux_dit"], [FluxDiT], "diffusers"),
|
| 116 |
+
(None, "0629116fce1472503a66992f96f3eb1a", ["flux_value_controller"], [SingleValueEncoder], "civitai"),
|
| 117 |
+
(None, "280189ee084bca10f70907bf6ce1649d", ["cog_vae_encoder", "cog_vae_decoder"], [CogVAEEncoder, CogVAEDecoder], "diffusers"),
|
| 118 |
+
(None, "9b9313d104ac4df27991352fec013fd4", ["rife"], [IFNet], "civitai"),
|
| 119 |
+
(None, "6b7116078c4170bfbeaedc8fe71f6649", ["esrgan"], [RRDBNet], "civitai"),
|
| 120 |
+
(None, "61cbcbc7ac11f169c5949223efa960d1", ["omnigen_transformer"], [OmniGenTransformer], "diffusers"),
|
| 121 |
+
(None, "78d18b9101345ff695f312e7e62538c0", ["flux_controlnet"], [FluxControlNet], "diffusers"),
|
| 122 |
+
(None, "b001c89139b5f053c715fe772362dd2a", ["flux_controlnet"], [FluxControlNet], "diffusers"),
|
| 123 |
+
(None, "52357cb26250681367488a8954c271e8", ["flux_controlnet"], [FluxControlNet], "diffusers"),
|
| 124 |
+
(None, "0cfd1740758423a2a854d67c136d1e8c", ["flux_controlnet"], [FluxControlNet], "diffusers"),
|
| 125 |
+
(None, "7f9583eb8ba86642abb9a21a4b2c9e16", ["flux_controlnet"], [FluxControlNet], "diffusers"),
|
| 126 |
+
(None, "43ad5aaa27dd4ee01b832ed16773fa52", ["flux_controlnet"], [FluxControlNet], "diffusers"),
|
| 127 |
+
(None, "c07c0f04f5ff55e86b4e937c7a40d481", ["infiniteyou_image_projector"], [InfiniteYouImageProjector], "diffusers"),
|
| 128 |
+
(None, "4daaa66cc656a8fe369908693dad0a35", ["flux_ipadapter"], [FluxIpAdapter], "diffusers"),
|
| 129 |
+
(None, "51aed3d27d482fceb5e0739b03060e8f", ["sd3_dit", "sd3_vae_encoder", "sd3_vae_decoder"], [SD3DiT, SD3VAEEncoder, SD3VAEDecoder], "civitai"),
|
| 130 |
+
(None, "98cc34ccc5b54ae0e56bdea8688dcd5a", ["sd3_text_encoder_2"], [SD3TextEncoder2], "civitai"),
|
| 131 |
+
(None, "77ff18050dbc23f50382e45d51a779fe", ["sd3_dit", "sd3_vae_encoder", "sd3_vae_decoder"], [SD3DiT, SD3VAEEncoder, SD3VAEDecoder], "civitai"),
|
| 132 |
+
(None, "5da81baee73198a7c19e6d2fe8b5148e", ["sd3_text_encoder_1"], [SD3TextEncoder1], "diffusers"),
|
| 133 |
+
(None, "aeb82dce778a03dcb4d726cb03f3c43f", ["hunyuan_video_vae_decoder", "hunyuan_video_vae_encoder"], [HunyuanVideoVAEDecoder, HunyuanVideoVAEEncoder], "diffusers"),
|
| 134 |
+
(None, "b9588f02e78f5ccafc9d7c0294e46308", ["hunyuan_video_dit"], [HunyuanVideoDiT], "civitai"),
|
| 135 |
+
(None, "84ef4bd4757f60e906b54aa6a7815dc6", ["hunyuan_video_dit"], [HunyuanVideoDiT], "civitai"),
|
| 136 |
+
(None, "68beaf8429b7c11aa8ca05b1bd0058bd", ["stepvideo_vae"], [StepVideoVAE], "civitai"),
|
| 137 |
+
(None, "5c0216a2132b082c10cb7a0e0377e681", ["stepvideo_dit"], [StepVideoModel], "civitai"),
|
| 138 |
+
(None, "9269f8db9040a9d860eaca435be61814", ["wan_video_dit"], [WanModel], "civitai"),
|
| 139 |
+
(None, "aafcfd9672c3a2456dc46e1cb6e52c70", ["wan_video_dit"], [WanModel], "civitai"),
|
| 140 |
+
(None, "6bfcfb3b342cb286ce886889d519a77e", ["wan_video_dit"], [WanModel], "civitai"),
|
| 141 |
+
(None, "6d6ccde6845b95ad9114ab993d917893", ["wan_video_dit"], [WanModel], "civitai"),
|
| 142 |
+
(None, "6bfcfb3b342cb286ce886889d519a77e", ["wan_video_dit"], [WanModel], "civitai"),
|
| 143 |
+
(None, "349723183fc063b2bfc10bb2835cf677", ["wan_video_dit"], [WanModel], "civitai"),
|
| 144 |
+
(None, "efa44cddf936c70abd0ea28b6cbe946c", ["wan_video_dit"], [WanModel], "civitai"),
|
| 145 |
+
(None, "3ef3b1f8e1dab83d5b71fd7b617f859f", ["wan_video_dit"], [WanModel], "civitai"),
|
| 146 |
+
(None, "70ddad9d3a133785da5ea371aae09504", ["wan_video_dit"], [WanModel], "civitai"),
|
| 147 |
+
(None, "26bde73488a92e64cc20b0a7485b9e5b", ["wan_video_dit"], [WanModel], "civitai"),
|
| 148 |
+
(None, "ac6a5aa74f4a0aab6f64eb9a72f19901", ["wan_video_dit"], [WanModel], "civitai"),
|
| 149 |
+
(None, "b61c605c2adbd23124d152ed28e049ae", ["wan_video_dit"], [WanModel], "civitai"),
|
| 150 |
+
(None, "1f5ab7703c6fc803fdded85ff040c316", ["wan_video_dit"], [WanModel], "civitai"),
|
| 151 |
+
(None, "5b013604280dd715f8457c6ed6d6a626", ["wan_video_dit"], [WanModel], "civitai"),
|
| 152 |
+
(None, "a61453409b67cd3246cf0c3bebad47ba", ["wan_video_dit", "wan_video_vace"], [WanModel, VaceWanModel], "civitai"),
|
| 153 |
+
(None, "7a513e1f257a861512b1afd387a8ecd9", ["wan_video_dit", "wan_video_vace"], [WanModel, VaceWanModel], "civitai"),
|
| 154 |
+
(None, "cb104773c6c2cb6df4f9529ad5c60d0b", ["wan_video_dit"], [WanModel], "diffusers"),
|
| 155 |
+
(None, "9c8818c2cbea55eca56c7b447df170da", ["wan_video_text_encoder"], [WanTextEncoder], "civitai"),
|
| 156 |
+
(None, "5941c53e207d62f20f9025686193c40b", ["wan_video_image_encoder"], [WanImageEncoder], "civitai"),
|
| 157 |
+
(None, "1378ea763357eea97acdef78e65d6d96", ["wan_video_vae"], [WanVideoVAE], "civitai"),
|
| 158 |
+
(None, "ccc42284ea13e1ad04693284c7a09be6", ["wan_video_vae"], [WanVideoVAE], "civitai"),
|
| 159 |
+
(None, "e1de6c02cdac79f8b739f4d3698cd216", ["wan_video_vae"], [WanVideoVAE38], "civitai"),
|
| 160 |
+
(None, "dbd5ec76bbf977983f972c151d545389", ["wan_video_motion_controller"], [WanMotionControllerModel], "civitai"),
|
| 161 |
+
(None, "d30fb9e02b1dbf4e509142f05cf7dd50", ["flux_dit", "step1x_connector"], [FluxDiT, Qwen2Connector], "civitai"),
|
| 162 |
+
(None, "30143afb2dea73d1ac580e0787628f8c", ["flux_lora_patcher"], [FluxLoraPatcher], "civitai"),
|
| 163 |
+
(None, "77c2e4dd2440269eb33bfaa0d004f6ab", ["flux_lora_encoder"], [FluxLoRAEncoder], "civitai"),
|
| 164 |
+
(None, "3e6c61b0f9471135fc9c6d6a98e98b6d", ["flux_dit", "nexus_gen_generation_adapter"], [FluxDiT, NexusGenAdapter], "civitai"),
|
| 165 |
+
(None, "63c969fd37cce769a90aa781fbff5f81", ["flux_dit", "nexus_gen_editing_adapter"], [FluxDiT, NexusGenImageEmbeddingMerger], "civitai"),
|
| 166 |
+
(None, "2bd19e845116e4f875a0a048e27fc219", ["nexus_gen_llm"], [NexusGenAutoregressiveModel], "civitai"),
|
| 167 |
+
(None, "0319a1cb19835fb510907dd3367c95ff", ["qwen_image_dit"], [QwenImageDiT], "civitai"),
|
| 168 |
+
(None, "8004730443f55db63092006dd9f7110e", ["qwen_image_text_encoder"], [QwenImageTextEncoder], "diffusers"),
|
| 169 |
+
(None, "ed4ea5824d55ec3107b09815e318123a", ["qwen_image_vae"], [QwenImageVAE], "diffusers"),
|
| 170 |
+
]
|
| 171 |
+
huggingface_model_loader_configs = [
|
| 172 |
+
# These configs are provided for detecting model type automatically.
|
| 173 |
+
# The format is (architecture_in_huggingface_config, huggingface_lib, model_name, redirected_architecture)
|
| 174 |
+
("ChatGLMModel", "diffsynth.models.kolors_text_encoder", "kolors_text_encoder", None),
|
| 175 |
+
("MarianMTModel", "transformers.models.marian.modeling_marian", "translator", None),
|
| 176 |
+
("BloomForCausalLM", "transformers.models.bloom.modeling_bloom", "beautiful_prompt", None),
|
| 177 |
+
("Qwen2ForCausalLM", "transformers.models.qwen2.modeling_qwen2", "qwen_prompt", None),
|
| 178 |
+
# ("LlamaForCausalLM", "transformers.models.llama.modeling_llama", "omost_prompt", None),
|
| 179 |
+
("T5EncoderModel", "diffsynth.models.flux_text_encoder", "flux_text_encoder_2", "FluxTextEncoder2"),
|
| 180 |
+
("CogVideoXTransformer3DModel", "diffsynth.models.cog_dit", "cog_dit", "CogDiT"),
|
| 181 |
+
("SiglipModel", "transformers.models.siglip.modeling_siglip", "siglip_vision_model", "SiglipVisionModel"),
|
| 182 |
+
("LlamaForCausalLM", "diffsynth.models.hunyuan_video_text_encoder", "hunyuan_video_text_encoder_2", "HunyuanVideoLLMEncoder"),
|
| 183 |
+
("LlavaForConditionalGeneration", "diffsynth.models.hunyuan_video_text_encoder", "hunyuan_video_text_encoder_2", "HunyuanVideoMLLMEncoder"),
|
| 184 |
+
("Step1Model", "diffsynth.models.stepvideo_text_encoder", "stepvideo_text_encoder_2", "STEP1TextEncoder"),
|
| 185 |
+
("Qwen2_5_VLForConditionalGeneration", "diffsynth.models.qwenvl", "qwenvl", "Qwen25VL_7b_Embedder"),
|
| 186 |
+
]
|
| 187 |
+
patch_model_loader_configs = [
|
| 188 |
+
# These configs are provided for detecting model type automatically.
|
| 189 |
+
# The format is (state_dict_keys_hash_with_shape, model_name, model_class, extra_kwargs)
|
| 190 |
+
("9a4ab6869ac9b7d6e31f9854e397c867", ["svd_unet"], [SVDUNet], {"add_positional_conv": 128}),
|
| 191 |
+
]
|
| 192 |
+
|
| 193 |
+
preset_models_on_huggingface = {
|
| 194 |
+
"HunyuanDiT": [
|
| 195 |
+
("Tencent-Hunyuan/HunyuanDiT", "t2i/clip_text_encoder/pytorch_model.bin", "models/HunyuanDiT/t2i/clip_text_encoder"),
|
| 196 |
+
("Tencent-Hunyuan/HunyuanDiT", "t2i/mt5/pytorch_model.bin", "models/HunyuanDiT/t2i/mt5"),
|
| 197 |
+
("Tencent-Hunyuan/HunyuanDiT", "t2i/model/pytorch_model_ema.pt", "models/HunyuanDiT/t2i/model"),
|
| 198 |
+
("Tencent-Hunyuan/HunyuanDiT", "t2i/sdxl-vae-fp16-fix/diffusion_pytorch_model.bin", "models/HunyuanDiT/t2i/sdxl-vae-fp16-fix"),
|
| 199 |
+
],
|
| 200 |
+
"stable-video-diffusion-img2vid-xt": [
|
| 201 |
+
("stabilityai/stable-video-diffusion-img2vid-xt", "svd_xt.safetensors", "models/stable_video_diffusion"),
|
| 202 |
+
],
|
| 203 |
+
"ExVideo-SVD-128f-v1": [
|
| 204 |
+
("ECNU-CILab/ExVideo-SVD-128f-v1", "model.fp16.safetensors", "models/stable_video_diffusion"),
|
| 205 |
+
],
|
| 206 |
+
# Stable Diffusion
|
| 207 |
+
"StableDiffusion_v15": [
|
| 208 |
+
("benjamin-paine/stable-diffusion-v1-5", "v1-5-pruned-emaonly.safetensors", "models/stable_diffusion"),
|
| 209 |
+
],
|
| 210 |
+
"DreamShaper_8": [
|
| 211 |
+
("Yntec/Dreamshaper8", "dreamshaper_8.safetensors", "models/stable_diffusion"),
|
| 212 |
+
],
|
| 213 |
+
# Textual Inversion
|
| 214 |
+
"TextualInversion_VeryBadImageNegative_v1.3": [
|
| 215 |
+
("gemasai/verybadimagenegative_v1.3", "verybadimagenegative_v1.3.pt", "models/textual_inversion"),
|
| 216 |
+
],
|
| 217 |
+
# Stable Diffusion XL
|
| 218 |
+
"StableDiffusionXL_v1": [
|
| 219 |
+
("stabilityai/stable-diffusion-xl-base-1.0", "sd_xl_base_1.0.safetensors", "models/stable_diffusion_xl"),
|
| 220 |
+
],
|
| 221 |
+
"BluePencilXL_v200": [
|
| 222 |
+
("frankjoshua/bluePencilXL_v200", "bluePencilXL_v200.safetensors", "models/stable_diffusion_xl"),
|
| 223 |
+
],
|
| 224 |
+
"StableDiffusionXL_Turbo": [
|
| 225 |
+
("stabilityai/sdxl-turbo", "sd_xl_turbo_1.0_fp16.safetensors", "models/stable_diffusion_xl_turbo"),
|
| 226 |
+
],
|
| 227 |
+
# Stable Diffusion 3
|
| 228 |
+
"StableDiffusion3": [
|
| 229 |
+
("stabilityai/stable-diffusion-3-medium", "sd3_medium_incl_clips_t5xxlfp16.safetensors", "models/stable_diffusion_3"),
|
| 230 |
+
],
|
| 231 |
+
"StableDiffusion3_without_T5": [
|
| 232 |
+
("stabilityai/stable-diffusion-3-medium", "sd3_medium_incl_clips.safetensors", "models/stable_diffusion_3"),
|
| 233 |
+
],
|
| 234 |
+
# ControlNet
|
| 235 |
+
"ControlNet_v11f1p_sd15_depth": [
|
| 236 |
+
("lllyasviel/ControlNet-v1-1", "control_v11f1p_sd15_depth.pth", "models/ControlNet"),
|
| 237 |
+
("lllyasviel/Annotators", "dpt_hybrid-midas-501f0c75.pt", "models/Annotators")
|
| 238 |
+
],
|
| 239 |
+
"ControlNet_v11p_sd15_softedge": [
|
| 240 |
+
("lllyasviel/ControlNet-v1-1", "control_v11p_sd15_softedge.pth", "models/ControlNet"),
|
| 241 |
+
("lllyasviel/Annotators", "ControlNetHED.pth", "models/Annotators")
|
| 242 |
+
],
|
| 243 |
+
"ControlNet_v11f1e_sd15_tile": [
|
| 244 |
+
("lllyasviel/ControlNet-v1-1", "control_v11f1e_sd15_tile.pth", "models/ControlNet")
|
| 245 |
+
],
|
| 246 |
+
"ControlNet_v11p_sd15_lineart": [
|
| 247 |
+
("lllyasviel/ControlNet-v1-1", "control_v11p_sd15_lineart.pth", "models/ControlNet"),
|
| 248 |
+
("lllyasviel/Annotators", "sk_model.pth", "models/Annotators"),
|
| 249 |
+
("lllyasviel/Annotators", "sk_model2.pth", "models/Annotators")
|
| 250 |
+
],
|
| 251 |
+
"ControlNet_union_sdxl_promax": [
|
| 252 |
+
("xinsir/controlnet-union-sdxl-1.0", "diffusion_pytorch_model_promax.safetensors", "models/ControlNet/controlnet_union"),
|
| 253 |
+
("lllyasviel/Annotators", "dpt_hybrid-midas-501f0c75.pt", "models/Annotators")
|
| 254 |
+
],
|
| 255 |
+
# AnimateDiff
|
| 256 |
+
"AnimateDiff_v2": [
|
| 257 |
+
("guoyww/animatediff", "mm_sd_v15_v2.ckpt", "models/AnimateDiff"),
|
| 258 |
+
],
|
| 259 |
+
"AnimateDiff_xl_beta": [
|
| 260 |
+
("guoyww/animatediff", "mm_sdxl_v10_beta.ckpt", "models/AnimateDiff"),
|
| 261 |
+
],
|
| 262 |
+
|
| 263 |
+
# Qwen Prompt
|
| 264 |
+
"QwenPrompt": [
|
| 265 |
+
("Qwen/Qwen2-1.5B-Instruct", "config.json", "models/QwenPrompt/qwen2-1.5b-instruct"),
|
| 266 |
+
("Qwen/Qwen2-1.5B-Instruct", "generation_config.json", "models/QwenPrompt/qwen2-1.5b-instruct"),
|
| 267 |
+
("Qwen/Qwen2-1.5B-Instruct", "model.safetensors", "models/QwenPrompt/qwen2-1.5b-instruct"),
|
| 268 |
+
("Qwen/Qwen2-1.5B-Instruct", "special_tokens_map.json", "models/QwenPrompt/qwen2-1.5b-instruct"),
|
| 269 |
+
("Qwen/Qwen2-1.5B-Instruct", "tokenizer.json", "models/QwenPrompt/qwen2-1.5b-instruct"),
|
| 270 |
+
("Qwen/Qwen2-1.5B-Instruct", "tokenizer_config.json", "models/QwenPrompt/qwen2-1.5b-instruct"),
|
| 271 |
+
("Qwen/Qwen2-1.5B-Instruct", "merges.txt", "models/QwenPrompt/qwen2-1.5b-instruct"),
|
| 272 |
+
("Qwen/Qwen2-1.5B-Instruct", "vocab.json", "models/QwenPrompt/qwen2-1.5b-instruct"),
|
| 273 |
+
],
|
| 274 |
+
# Beautiful Prompt
|
| 275 |
+
"BeautifulPrompt": [
|
| 276 |
+
("alibaba-pai/pai-bloom-1b1-text2prompt-sd", "config.json", "models/BeautifulPrompt/pai-bloom-1b1-text2prompt-sd"),
|
| 277 |
+
("alibaba-pai/pai-bloom-1b1-text2prompt-sd", "generation_config.json", "models/BeautifulPrompt/pai-bloom-1b1-text2prompt-sd"),
|
| 278 |
+
("alibaba-pai/pai-bloom-1b1-text2prompt-sd", "model.safetensors", "models/BeautifulPrompt/pai-bloom-1b1-text2prompt-sd"),
|
| 279 |
+
("alibaba-pai/pai-bloom-1b1-text2prompt-sd", "special_tokens_map.json", "models/BeautifulPrompt/pai-bloom-1b1-text2prompt-sd"),
|
| 280 |
+
("alibaba-pai/pai-bloom-1b1-text2prompt-sd", "tokenizer.json", "models/BeautifulPrompt/pai-bloom-1b1-text2prompt-sd"),
|
| 281 |
+
("alibaba-pai/pai-bloom-1b1-text2prompt-sd", "tokenizer_config.json", "models/BeautifulPrompt/pai-bloom-1b1-text2prompt-sd"),
|
| 282 |
+
],
|
| 283 |
+
# Omost prompt
|
| 284 |
+
"OmostPrompt":[
|
| 285 |
+
("lllyasviel/omost-llama-3-8b-4bits", "model-00001-of-00002.safetensors", "models/OmostPrompt/omost-llama-3-8b-4bits"),
|
| 286 |
+
("lllyasviel/omost-llama-3-8b-4bits", "model-00002-of-00002.safetensors", "models/OmostPrompt/omost-llama-3-8b-4bits"),
|
| 287 |
+
("lllyasviel/omost-llama-3-8b-4bits", "tokenizer.json", "models/OmostPrompt/omost-llama-3-8b-4bits"),
|
| 288 |
+
("lllyasviel/omost-llama-3-8b-4bits", "tokenizer_config.json", "models/OmostPrompt/omost-llama-3-8b-4bits"),
|
| 289 |
+
("lllyasviel/omost-llama-3-8b-4bits", "config.json", "models/OmostPrompt/omost-llama-3-8b-4bits"),
|
| 290 |
+
("lllyasviel/omost-llama-3-8b-4bits", "generation_config.json", "models/OmostPrompt/omost-llama-3-8b-4bits"),
|
| 291 |
+
("lllyasviel/omost-llama-3-8b-4bits", "model.safetensors.index.json", "models/OmostPrompt/omost-llama-3-8b-4bits"),
|
| 292 |
+
("lllyasviel/omost-llama-3-8b-4bits", "special_tokens_map.json", "models/OmostPrompt/omost-llama-3-8b-4bits"),
|
| 293 |
+
],
|
| 294 |
+
# Translator
|
| 295 |
+
"opus-mt-zh-en": [
|
| 296 |
+
("Helsinki-NLP/opus-mt-zh-en", "config.json", "models/translator/opus-mt-zh-en"),
|
| 297 |
+
("Helsinki-NLP/opus-mt-zh-en", "generation_config.json", "models/translator/opus-mt-zh-en"),
|
| 298 |
+
("Helsinki-NLP/opus-mt-zh-en", "metadata.json", "models/translator/opus-mt-zh-en"),
|
| 299 |
+
("Helsinki-NLP/opus-mt-zh-en", "pytorch_model.bin", "models/translator/opus-mt-zh-en"),
|
| 300 |
+
("Helsinki-NLP/opus-mt-zh-en", "source.spm", "models/translator/opus-mt-zh-en"),
|
| 301 |
+
("Helsinki-NLP/opus-mt-zh-en", "target.spm", "models/translator/opus-mt-zh-en"),
|
| 302 |
+
("Helsinki-NLP/opus-mt-zh-en", "tokenizer_config.json", "models/translator/opus-mt-zh-en"),
|
| 303 |
+
("Helsinki-NLP/opus-mt-zh-en", "vocab.json", "models/translator/opus-mt-zh-en"),
|
| 304 |
+
],
|
| 305 |
+
# IP-Adapter
|
| 306 |
+
"IP-Adapter-SD": [
|
| 307 |
+
("h94/IP-Adapter", "models/image_encoder/model.safetensors", "models/IpAdapter/stable_diffusion/image_encoder"),
|
| 308 |
+
("h94/IP-Adapter", "models/ip-adapter_sd15.bin", "models/IpAdapter/stable_diffusion"),
|
| 309 |
+
],
|
| 310 |
+
"IP-Adapter-SDXL": [
|
| 311 |
+
("h94/IP-Adapter", "sdxl_models/image_encoder/model.safetensors", "models/IpAdapter/stable_diffusion_xl/image_encoder"),
|
| 312 |
+
("h94/IP-Adapter", "sdxl_models/ip-adapter_sdxl.bin", "models/IpAdapter/stable_diffusion_xl"),
|
| 313 |
+
],
|
| 314 |
+
"SDXL-vae-fp16-fix": [
|
| 315 |
+
("madebyollin/sdxl-vae-fp16-fix", "diffusion_pytorch_model.safetensors", "models/sdxl-vae-fp16-fix")
|
| 316 |
+
],
|
| 317 |
+
# Kolors
|
| 318 |
+
"Kolors": [
|
| 319 |
+
("Kwai-Kolors/Kolors", "text_encoder/config.json", "models/kolors/Kolors/text_encoder"),
|
| 320 |
+
("Kwai-Kolors/Kolors", "text_encoder/pytorch_model.bin.index.json", "models/kolors/Kolors/text_encoder"),
|
| 321 |
+
("Kwai-Kolors/Kolors", "text_encoder/pytorch_model-00001-of-00007.bin", "models/kolors/Kolors/text_encoder"),
|
| 322 |
+
("Kwai-Kolors/Kolors", "text_encoder/pytorch_model-00002-of-00007.bin", "models/kolors/Kolors/text_encoder"),
|
| 323 |
+
("Kwai-Kolors/Kolors", "text_encoder/pytorch_model-00003-of-00007.bin", "models/kolors/Kolors/text_encoder"),
|
| 324 |
+
("Kwai-Kolors/Kolors", "text_encoder/pytorch_model-00004-of-00007.bin", "models/kolors/Kolors/text_encoder"),
|
| 325 |
+
("Kwai-Kolors/Kolors", "text_encoder/pytorch_model-00005-of-00007.bin", "models/kolors/Kolors/text_encoder"),
|
| 326 |
+
("Kwai-Kolors/Kolors", "text_encoder/pytorch_model-00006-of-00007.bin", "models/kolors/Kolors/text_encoder"),
|
| 327 |
+
("Kwai-Kolors/Kolors", "text_encoder/pytorch_model-00007-of-00007.bin", "models/kolors/Kolors/text_encoder"),
|
| 328 |
+
("Kwai-Kolors/Kolors", "unet/diffusion_pytorch_model.safetensors", "models/kolors/Kolors/unet"),
|
| 329 |
+
("Kwai-Kolors/Kolors", "vae/diffusion_pytorch_model.safetensors", "models/kolors/Kolors/vae"),
|
| 330 |
+
],
|
| 331 |
+
# FLUX
|
| 332 |
+
"FLUX.1-dev": [
|
| 333 |
+
("black-forest-labs/FLUX.1-dev", "text_encoder/model.safetensors", "models/FLUX/FLUX.1-dev/text_encoder"),
|
| 334 |
+
("black-forest-labs/FLUX.1-dev", "text_encoder_2/config.json", "models/FLUX/FLUX.1-dev/text_encoder_2"),
|
| 335 |
+
("black-forest-labs/FLUX.1-dev", "text_encoder_2/model-00001-of-00002.safetensors", "models/FLUX/FLUX.1-dev/text_encoder_2"),
|
| 336 |
+
("black-forest-labs/FLUX.1-dev", "text_encoder_2/model-00002-of-00002.safetensors", "models/FLUX/FLUX.1-dev/text_encoder_2"),
|
| 337 |
+
("black-forest-labs/FLUX.1-dev", "text_encoder_2/model.safetensors.index.json", "models/FLUX/FLUX.1-dev/text_encoder_2"),
|
| 338 |
+
("black-forest-labs/FLUX.1-dev", "ae.safetensors", "models/FLUX/FLUX.1-dev"),
|
| 339 |
+
("black-forest-labs/FLUX.1-dev", "flux1-dev.safetensors", "models/FLUX/FLUX.1-dev"),
|
| 340 |
+
],
|
| 341 |
+
"InstantX/FLUX.1-dev-IP-Adapter": {
|
| 342 |
+
"file_list": [
|
| 343 |
+
("InstantX/FLUX.1-dev-IP-Adapter", "ip-adapter.bin", "models/IpAdapter/InstantX/FLUX.1-dev-IP-Adapter"),
|
| 344 |
+
("google/siglip-so400m-patch14-384", "model.safetensors", "models/IpAdapter/InstantX/FLUX.1-dev-IP-Adapter/image_encoder"),
|
| 345 |
+
("google/siglip-so400m-patch14-384", "config.json", "models/IpAdapter/InstantX/FLUX.1-dev-IP-Adapter/image_encoder"),
|
| 346 |
+
],
|
| 347 |
+
"load_path": [
|
| 348 |
+
"models/IpAdapter/InstantX/FLUX.1-dev-IP-Adapter/ip-adapter.bin",
|
| 349 |
+
"models/IpAdapter/InstantX/FLUX.1-dev-IP-Adapter/image_encoder",
|
| 350 |
+
],
|
| 351 |
+
},
|
| 352 |
+
# RIFE
|
| 353 |
+
"RIFE": [
|
| 354 |
+
("AlexWortega/RIFE", "flownet.pkl", "models/RIFE"),
|
| 355 |
+
],
|
| 356 |
+
# CogVideo
|
| 357 |
+
"CogVideoX-5B": [
|
| 358 |
+
("THUDM/CogVideoX-5b", "text_encoder/config.json", "models/CogVideo/CogVideoX-5b/text_encoder"),
|
| 359 |
+
("THUDM/CogVideoX-5b", "text_encoder/model.safetensors.index.json", "models/CogVideo/CogVideoX-5b/text_encoder"),
|
| 360 |
+
("THUDM/CogVideoX-5b", "text_encoder/model-00001-of-00002.safetensors", "models/CogVideo/CogVideoX-5b/text_encoder"),
|
| 361 |
+
("THUDM/CogVideoX-5b", "text_encoder/model-00002-of-00002.safetensors", "models/CogVideo/CogVideoX-5b/text_encoder"),
|
| 362 |
+
("THUDM/CogVideoX-5b", "transformer/config.json", "models/CogVideo/CogVideoX-5b/transformer"),
|
| 363 |
+
("THUDM/CogVideoX-5b", "transformer/diffusion_pytorch_model.safetensors.index.json", "models/CogVideo/CogVideoX-5b/transformer"),
|
| 364 |
+
("THUDM/CogVideoX-5b", "transformer/diffusion_pytorch_model-00001-of-00002.safetensors", "models/CogVideo/CogVideoX-5b/transformer"),
|
| 365 |
+
("THUDM/CogVideoX-5b", "transformer/diffusion_pytorch_model-00002-of-00002.safetensors", "models/CogVideo/CogVideoX-5b/transformer"),
|
| 366 |
+
("THUDM/CogVideoX-5b", "vae/diffusion_pytorch_model.safetensors", "models/CogVideo/CogVideoX-5b/vae"),
|
| 367 |
+
],
|
| 368 |
+
# Stable Diffusion 3.5
|
| 369 |
+
"StableDiffusion3.5-large": [
|
| 370 |
+
("stabilityai/stable-diffusion-3.5-large", "sd3.5_large.safetensors", "models/stable_diffusion_3"),
|
| 371 |
+
("stabilityai/stable-diffusion-3.5-large", "text_encoders/clip_l.safetensors", "models/stable_diffusion_3/text_encoders"),
|
| 372 |
+
("stabilityai/stable-diffusion-3.5-large", "text_encoders/clip_g.safetensors", "models/stable_diffusion_3/text_encoders"),
|
| 373 |
+
("stabilityai/stable-diffusion-3.5-large", "text_encoders/t5xxl_fp16.safetensors", "models/stable_diffusion_3/text_encoders"),
|
| 374 |
+
],
|
| 375 |
+
}
|
| 376 |
+
preset_models_on_modelscope = {
|
| 377 |
+
# Hunyuan DiT
|
| 378 |
+
"HunyuanDiT": [
|
| 379 |
+
("modelscope/HunyuanDiT", "t2i/clip_text_encoder/pytorch_model.bin", "models/HunyuanDiT/t2i/clip_text_encoder"),
|
| 380 |
+
("modelscope/HunyuanDiT", "t2i/mt5/pytorch_model.bin", "models/HunyuanDiT/t2i/mt5"),
|
| 381 |
+
("modelscope/HunyuanDiT", "t2i/model/pytorch_model_ema.pt", "models/HunyuanDiT/t2i/model"),
|
| 382 |
+
("modelscope/HunyuanDiT", "t2i/sdxl-vae-fp16-fix/diffusion_pytorch_model.bin", "models/HunyuanDiT/t2i/sdxl-vae-fp16-fix"),
|
| 383 |
+
],
|
| 384 |
+
# Stable Video Diffusion
|
| 385 |
+
"stable-video-diffusion-img2vid-xt": [
|
| 386 |
+
("AI-ModelScope/stable-video-diffusion-img2vid-xt", "svd_xt.safetensors", "models/stable_video_diffusion"),
|
| 387 |
+
],
|
| 388 |
+
# ExVideo
|
| 389 |
+
"ExVideo-SVD-128f-v1": [
|
| 390 |
+
("ECNU-CILab/ExVideo-SVD-128f-v1", "model.fp16.safetensors", "models/stable_video_diffusion"),
|
| 391 |
+
],
|
| 392 |
+
"ExVideo-CogVideoX-LoRA-129f-v1": [
|
| 393 |
+
("ECNU-CILab/ExVideo-CogVideoX-LoRA-129f-v1", "ExVideo-CogVideoX-LoRA-129f-v1.safetensors", "models/lora"),
|
| 394 |
+
],
|
| 395 |
+
# Stable Diffusion
|
| 396 |
+
"StableDiffusion_v15": [
|
| 397 |
+
("AI-ModelScope/stable-diffusion-v1-5", "v1-5-pruned-emaonly.safetensors", "models/stable_diffusion"),
|
| 398 |
+
],
|
| 399 |
+
"DreamShaper_8": [
|
| 400 |
+
("sd_lora/dreamshaper_8", "dreamshaper_8.safetensors", "models/stable_diffusion"),
|
| 401 |
+
],
|
| 402 |
+
"AingDiffusion_v12": [
|
| 403 |
+
("sd_lora/aingdiffusion_v12", "aingdiffusion_v12.safetensors", "models/stable_diffusion"),
|
| 404 |
+
],
|
| 405 |
+
"Flat2DAnimerge_v45Sharp": [
|
| 406 |
+
("sd_lora/Flat-2D-Animerge", "flat2DAnimerge_v45Sharp.safetensors", "models/stable_diffusion"),
|
| 407 |
+
],
|
| 408 |
+
# Textual Inversion
|
| 409 |
+
"TextualInversion_VeryBadImageNegative_v1.3": [
|
| 410 |
+
("sd_lora/verybadimagenegative_v1.3", "verybadimagenegative_v1.3.pt", "models/textual_inversion"),
|
| 411 |
+
],
|
| 412 |
+
# Stable Diffusion XL
|
| 413 |
+
"StableDiffusionXL_v1": [
|
| 414 |
+
("AI-ModelScope/stable-diffusion-xl-base-1.0", "sd_xl_base_1.0.safetensors", "models/stable_diffusion_xl"),
|
| 415 |
+
],
|
| 416 |
+
"BluePencilXL_v200": [
|
| 417 |
+
("sd_lora/bluePencilXL_v200", "bluePencilXL_v200.safetensors", "models/stable_diffusion_xl"),
|
| 418 |
+
],
|
| 419 |
+
"StableDiffusionXL_Turbo": [
|
| 420 |
+
("AI-ModelScope/sdxl-turbo", "sd_xl_turbo_1.0_fp16.safetensors", "models/stable_diffusion_xl_turbo"),
|
| 421 |
+
],
|
| 422 |
+
"SDXL_lora_zyd232_ChineseInkStyle_SDXL_v1_0": [
|
| 423 |
+
("sd_lora/zyd232_ChineseInkStyle_SDXL_v1_0", "zyd232_ChineseInkStyle_SDXL_v1_0.safetensors", "models/lora"),
|
| 424 |
+
],
|
| 425 |
+
# Stable Diffusion 3
|
| 426 |
+
"StableDiffusion3": [
|
| 427 |
+
("AI-ModelScope/stable-diffusion-3-medium", "sd3_medium_incl_clips_t5xxlfp16.safetensors", "models/stable_diffusion_3"),
|
| 428 |
+
],
|
| 429 |
+
"StableDiffusion3_without_T5": [
|
| 430 |
+
("AI-ModelScope/stable-diffusion-3-medium", "sd3_medium_incl_clips.safetensors", "models/stable_diffusion_3"),
|
| 431 |
+
],
|
| 432 |
+
# ControlNet
|
| 433 |
+
"ControlNet_v11f1p_sd15_depth": [
|
| 434 |
+
("AI-ModelScope/ControlNet-v1-1", "control_v11f1p_sd15_depth.pth", "models/ControlNet"),
|
| 435 |
+
("sd_lora/Annotators", "dpt_hybrid-midas-501f0c75.pt", "models/Annotators")
|
| 436 |
+
],
|
| 437 |
+
"ControlNet_v11p_sd15_softedge": [
|
| 438 |
+
("AI-ModelScope/ControlNet-v1-1", "control_v11p_sd15_softedge.pth", "models/ControlNet"),
|
| 439 |
+
("sd_lora/Annotators", "ControlNetHED.pth", "models/Annotators")
|
| 440 |
+
],
|
| 441 |
+
"ControlNet_v11f1e_sd15_tile": [
|
| 442 |
+
("AI-ModelScope/ControlNet-v1-1", "control_v11f1e_sd15_tile.pth", "models/ControlNet")
|
| 443 |
+
],
|
| 444 |
+
"ControlNet_v11p_sd15_lineart": [
|
| 445 |
+
("AI-ModelScope/ControlNet-v1-1", "control_v11p_sd15_lineart.pth", "models/ControlNet"),
|
| 446 |
+
("sd_lora/Annotators", "sk_model.pth", "models/Annotators"),
|
| 447 |
+
("sd_lora/Annotators", "sk_model2.pth", "models/Annotators")
|
| 448 |
+
],
|
| 449 |
+
"ControlNet_union_sdxl_promax": [
|
| 450 |
+
("AI-ModelScope/controlnet-union-sdxl-1.0", "diffusion_pytorch_model_promax.safetensors", "models/ControlNet/controlnet_union"),
|
| 451 |
+
("sd_lora/Annotators", "dpt_hybrid-midas-501f0c75.pt", "models/Annotators")
|
| 452 |
+
],
|
| 453 |
+
"Annotators:Depth": [
|
| 454 |
+
("sd_lora/Annotators", "dpt_hybrid-midas-501f0c75.pt", "models/Annotators"),
|
| 455 |
+
],
|
| 456 |
+
"Annotators:Softedge": [
|
| 457 |
+
("sd_lora/Annotators", "ControlNetHED.pth", "models/Annotators"),
|
| 458 |
+
],
|
| 459 |
+
"Annotators:Lineart": [
|
| 460 |
+
("sd_lora/Annotators", "sk_model.pth", "models/Annotators"),
|
| 461 |
+
("sd_lora/Annotators", "sk_model2.pth", "models/Annotators"),
|
| 462 |
+
],
|
| 463 |
+
"Annotators:Normal": [
|
| 464 |
+
("sd_lora/Annotators", "scannet.pt", "models/Annotators"),
|
| 465 |
+
],
|
| 466 |
+
"Annotators:Openpose": [
|
| 467 |
+
("sd_lora/Annotators", "body_pose_model.pth", "models/Annotators"),
|
| 468 |
+
("sd_lora/Annotators", "facenet.pth", "models/Annotators"),
|
| 469 |
+
("sd_lora/Annotators", "hand_pose_model.pth", "models/Annotators"),
|
| 470 |
+
],
|
| 471 |
+
# AnimateDiff
|
| 472 |
+
"AnimateDiff_v2": [
|
| 473 |
+
("Shanghai_AI_Laboratory/animatediff", "mm_sd_v15_v2.ckpt", "models/AnimateDiff"),
|
| 474 |
+
],
|
| 475 |
+
"AnimateDiff_xl_beta": [
|
| 476 |
+
("Shanghai_AI_Laboratory/animatediff", "mm_sdxl_v10_beta.ckpt", "models/AnimateDiff"),
|
| 477 |
+
],
|
| 478 |
+
# RIFE
|
| 479 |
+
"RIFE": [
|
| 480 |
+
("Damo_XR_Lab/cv_rife_video-frame-interpolation", "flownet.pkl", "models/RIFE"),
|
| 481 |
+
],
|
| 482 |
+
# Qwen Prompt
|
| 483 |
+
"QwenPrompt": {
|
| 484 |
+
"file_list": [
|
| 485 |
+
("qwen/Qwen2-1.5B-Instruct", "config.json", "models/QwenPrompt/qwen2-1.5b-instruct"),
|
| 486 |
+
("qwen/Qwen2-1.5B-Instruct", "generation_config.json", "models/QwenPrompt/qwen2-1.5b-instruct"),
|
| 487 |
+
("qwen/Qwen2-1.5B-Instruct", "model.safetensors", "models/QwenPrompt/qwen2-1.5b-instruct"),
|
| 488 |
+
("qwen/Qwen2-1.5B-Instruct", "special_tokens_map.json", "models/QwenPrompt/qwen2-1.5b-instruct"),
|
| 489 |
+
("qwen/Qwen2-1.5B-Instruct", "tokenizer.json", "models/QwenPrompt/qwen2-1.5b-instruct"),
|
| 490 |
+
("qwen/Qwen2-1.5B-Instruct", "tokenizer_config.json", "models/QwenPrompt/qwen2-1.5b-instruct"),
|
| 491 |
+
("qwen/Qwen2-1.5B-Instruct", "merges.txt", "models/QwenPrompt/qwen2-1.5b-instruct"),
|
| 492 |
+
("qwen/Qwen2-1.5B-Instruct", "vocab.json", "models/QwenPrompt/qwen2-1.5b-instruct"),
|
| 493 |
+
],
|
| 494 |
+
"load_path": [
|
| 495 |
+
"models/QwenPrompt/qwen2-1.5b-instruct",
|
| 496 |
+
],
|
| 497 |
+
},
|
| 498 |
+
# Beautiful Prompt
|
| 499 |
+
"BeautifulPrompt": {
|
| 500 |
+
"file_list": [
|
| 501 |
+
("AI-ModelScope/pai-bloom-1b1-text2prompt-sd", "config.json", "models/BeautifulPrompt/pai-bloom-1b1-text2prompt-sd"),
|
| 502 |
+
("AI-ModelScope/pai-bloom-1b1-text2prompt-sd", "generation_config.json", "models/BeautifulPrompt/pai-bloom-1b1-text2prompt-sd"),
|
| 503 |
+
("AI-ModelScope/pai-bloom-1b1-text2prompt-sd", "model.safetensors", "models/BeautifulPrompt/pai-bloom-1b1-text2prompt-sd"),
|
| 504 |
+
("AI-ModelScope/pai-bloom-1b1-text2prompt-sd", "special_tokens_map.json", "models/BeautifulPrompt/pai-bloom-1b1-text2prompt-sd"),
|
| 505 |
+
("AI-ModelScope/pai-bloom-1b1-text2prompt-sd", "tokenizer.json", "models/BeautifulPrompt/pai-bloom-1b1-text2prompt-sd"),
|
| 506 |
+
("AI-ModelScope/pai-bloom-1b1-text2prompt-sd", "tokenizer_config.json", "models/BeautifulPrompt/pai-bloom-1b1-text2prompt-sd"),
|
| 507 |
+
],
|
| 508 |
+
"load_path": [
|
| 509 |
+
"models/BeautifulPrompt/pai-bloom-1b1-text2prompt-sd",
|
| 510 |
+
],
|
| 511 |
+
},
|
| 512 |
+
# Omost prompt
|
| 513 |
+
"OmostPrompt": {
|
| 514 |
+
"file_list": [
|
| 515 |
+
("Omost/omost-llama-3-8b-4bits", "model-00001-of-00002.safetensors", "models/OmostPrompt/omost-llama-3-8b-4bits"),
|
| 516 |
+
("Omost/omost-llama-3-8b-4bits", "model-00002-of-00002.safetensors", "models/OmostPrompt/omost-llama-3-8b-4bits"),
|
| 517 |
+
("Omost/omost-llama-3-8b-4bits", "tokenizer.json", "models/OmostPrompt/omost-llama-3-8b-4bits"),
|
| 518 |
+
("Omost/omost-llama-3-8b-4bits", "tokenizer_config.json", "models/OmostPrompt/omost-llama-3-8b-4bits"),
|
| 519 |
+
("Omost/omost-llama-3-8b-4bits", "config.json", "models/OmostPrompt/omost-llama-3-8b-4bits"),
|
| 520 |
+
("Omost/omost-llama-3-8b-4bits", "generation_config.json", "models/OmostPrompt/omost-llama-3-8b-4bits"),
|
| 521 |
+
("Omost/omost-llama-3-8b-4bits", "model.safetensors.index.json", "models/OmostPrompt/omost-llama-3-8b-4bits"),
|
| 522 |
+
("Omost/omost-llama-3-8b-4bits", "special_tokens_map.json", "models/OmostPrompt/omost-llama-3-8b-4bits"),
|
| 523 |
+
],
|
| 524 |
+
"load_path": [
|
| 525 |
+
"models/OmostPrompt/omost-llama-3-8b-4bits",
|
| 526 |
+
],
|
| 527 |
+
},
|
| 528 |
+
# Translator
|
| 529 |
+
"opus-mt-zh-en": {
|
| 530 |
+
"file_list": [
|
| 531 |
+
("moxying/opus-mt-zh-en", "config.json", "models/translator/opus-mt-zh-en"),
|
| 532 |
+
("moxying/opus-mt-zh-en", "generation_config.json", "models/translator/opus-mt-zh-en"),
|
| 533 |
+
("moxying/opus-mt-zh-en", "metadata.json", "models/translator/opus-mt-zh-en"),
|
| 534 |
+
("moxying/opus-mt-zh-en", "pytorch_model.bin", "models/translator/opus-mt-zh-en"),
|
| 535 |
+
("moxying/opus-mt-zh-en", "source.spm", "models/translator/opus-mt-zh-en"),
|
| 536 |
+
("moxying/opus-mt-zh-en", "target.spm", "models/translator/opus-mt-zh-en"),
|
| 537 |
+
("moxying/opus-mt-zh-en", "tokenizer_config.json", "models/translator/opus-mt-zh-en"),
|
| 538 |
+
("moxying/opus-mt-zh-en", "vocab.json", "models/translator/opus-mt-zh-en"),
|
| 539 |
+
],
|
| 540 |
+
"load_path": [
|
| 541 |
+
"models/translator/opus-mt-zh-en",
|
| 542 |
+
],
|
| 543 |
+
},
|
| 544 |
+
# IP-Adapter
|
| 545 |
+
"IP-Adapter-SD": [
|
| 546 |
+
("AI-ModelScope/IP-Adapter", "models/image_encoder/model.safetensors", "models/IpAdapter/stable_diffusion/image_encoder"),
|
| 547 |
+
("AI-ModelScope/IP-Adapter", "models/ip-adapter_sd15.bin", "models/IpAdapter/stable_diffusion"),
|
| 548 |
+
],
|
| 549 |
+
"IP-Adapter-SDXL": [
|
| 550 |
+
("AI-ModelScope/IP-Adapter", "sdxl_models/image_encoder/model.safetensors", "models/IpAdapter/stable_diffusion_xl/image_encoder"),
|
| 551 |
+
("AI-ModelScope/IP-Adapter", "sdxl_models/ip-adapter_sdxl.bin", "models/IpAdapter/stable_diffusion_xl"),
|
| 552 |
+
],
|
| 553 |
+
# Kolors
|
| 554 |
+
"Kolors": {
|
| 555 |
+
"file_list": [
|
| 556 |
+
("Kwai-Kolors/Kolors", "text_encoder/config.json", "models/kolors/Kolors/text_encoder"),
|
| 557 |
+
("Kwai-Kolors/Kolors", "text_encoder/pytorch_model.bin.index.json", "models/kolors/Kolors/text_encoder"),
|
| 558 |
+
("Kwai-Kolors/Kolors", "text_encoder/pytorch_model-00001-of-00007.bin", "models/kolors/Kolors/text_encoder"),
|
| 559 |
+
("Kwai-Kolors/Kolors", "text_encoder/pytorch_model-00002-of-00007.bin", "models/kolors/Kolors/text_encoder"),
|
| 560 |
+
("Kwai-Kolors/Kolors", "text_encoder/pytorch_model-00003-of-00007.bin", "models/kolors/Kolors/text_encoder"),
|
| 561 |
+
("Kwai-Kolors/Kolors", "text_encoder/pytorch_model-00004-of-00007.bin", "models/kolors/Kolors/text_encoder"),
|
| 562 |
+
("Kwai-Kolors/Kolors", "text_encoder/pytorch_model-00005-of-00007.bin", "models/kolors/Kolors/text_encoder"),
|
| 563 |
+
("Kwai-Kolors/Kolors", "text_encoder/pytorch_model-00006-of-00007.bin", "models/kolors/Kolors/text_encoder"),
|
| 564 |
+
("Kwai-Kolors/Kolors", "text_encoder/pytorch_model-00007-of-00007.bin", "models/kolors/Kolors/text_encoder"),
|
| 565 |
+
("Kwai-Kolors/Kolors", "unet/diffusion_pytorch_model.safetensors", "models/kolors/Kolors/unet"),
|
| 566 |
+
("Kwai-Kolors/Kolors", "vae/diffusion_pytorch_model.safetensors", "models/kolors/Kolors/vae"),
|
| 567 |
+
],
|
| 568 |
+
"load_path": [
|
| 569 |
+
"models/kolors/Kolors/text_encoder",
|
| 570 |
+
"models/kolors/Kolors/unet/diffusion_pytorch_model.safetensors",
|
| 571 |
+
"models/kolors/Kolors/vae/diffusion_pytorch_model.safetensors",
|
| 572 |
+
],
|
| 573 |
+
},
|
| 574 |
+
"SDXL-vae-fp16-fix": [
|
| 575 |
+
("AI-ModelScope/sdxl-vae-fp16-fix", "diffusion_pytorch_model.safetensors", "models/sdxl-vae-fp16-fix")
|
| 576 |
+
],
|
| 577 |
+
# FLUX
|
| 578 |
+
"FLUX.1-dev": {
|
| 579 |
+
"file_list": [
|
| 580 |
+
("AI-ModelScope/FLUX.1-dev", "text_encoder/model.safetensors", "models/FLUX/FLUX.1-dev/text_encoder"),
|
| 581 |
+
("AI-ModelScope/FLUX.1-dev", "text_encoder_2/config.json", "models/FLUX/FLUX.1-dev/text_encoder_2"),
|
| 582 |
+
("AI-ModelScope/FLUX.1-dev", "text_encoder_2/model-00001-of-00002.safetensors", "models/FLUX/FLUX.1-dev/text_encoder_2"),
|
| 583 |
+
("AI-ModelScope/FLUX.1-dev", "text_encoder_2/model-00002-of-00002.safetensors", "models/FLUX/FLUX.1-dev/text_encoder_2"),
|
| 584 |
+
("AI-ModelScope/FLUX.1-dev", "text_encoder_2/model.safetensors.index.json", "models/FLUX/FLUX.1-dev/text_encoder_2"),
|
| 585 |
+
("AI-ModelScope/FLUX.1-dev", "ae.safetensors", "models/FLUX/FLUX.1-dev"),
|
| 586 |
+
("AI-ModelScope/FLUX.1-dev", "flux1-dev.safetensors", "models/FLUX/FLUX.1-dev"),
|
| 587 |
+
],
|
| 588 |
+
"load_path": [
|
| 589 |
+
"models/FLUX/FLUX.1-dev/text_encoder/model.safetensors",
|
| 590 |
+
"models/FLUX/FLUX.1-dev/text_encoder_2",
|
| 591 |
+
"models/FLUX/FLUX.1-dev/ae.safetensors",
|
| 592 |
+
"models/FLUX/FLUX.1-dev/flux1-dev.safetensors"
|
| 593 |
+
],
|
| 594 |
+
},
|
| 595 |
+
"FLUX.1-schnell": {
|
| 596 |
+
"file_list": [
|
| 597 |
+
("AI-ModelScope/FLUX.1-dev", "text_encoder/model.safetensors", "models/FLUX/FLUX.1-dev/text_encoder"),
|
| 598 |
+
("AI-ModelScope/FLUX.1-dev", "text_encoder_2/config.json", "models/FLUX/FLUX.1-dev/text_encoder_2"),
|
| 599 |
+
("AI-ModelScope/FLUX.1-dev", "text_encoder_2/model-00001-of-00002.safetensors", "models/FLUX/FLUX.1-dev/text_encoder_2"),
|
| 600 |
+
("AI-ModelScope/FLUX.1-dev", "text_encoder_2/model-00002-of-00002.safetensors", "models/FLUX/FLUX.1-dev/text_encoder_2"),
|
| 601 |
+
("AI-ModelScope/FLUX.1-dev", "text_encoder_2/model.safetensors.index.json", "models/FLUX/FLUX.1-dev/text_encoder_2"),
|
| 602 |
+
("AI-ModelScope/FLUX.1-dev", "ae.safetensors", "models/FLUX/FLUX.1-dev"),
|
| 603 |
+
("AI-ModelScope/FLUX.1-schnell", "flux1-schnell.safetensors", "models/FLUX/FLUX.1-schnell"),
|
| 604 |
+
],
|
| 605 |
+
"load_path": [
|
| 606 |
+
"models/FLUX/FLUX.1-dev/text_encoder/model.safetensors",
|
| 607 |
+
"models/FLUX/FLUX.1-dev/text_encoder_2",
|
| 608 |
+
"models/FLUX/FLUX.1-dev/ae.safetensors",
|
| 609 |
+
"models/FLUX/FLUX.1-schnell/flux1-schnell.safetensors"
|
| 610 |
+
],
|
| 611 |
+
},
|
| 612 |
+
"InstantX/FLUX.1-dev-Controlnet-Union-alpha": [
|
| 613 |
+
("InstantX/FLUX.1-dev-Controlnet-Union-alpha", "diffusion_pytorch_model.safetensors", "models/ControlNet/InstantX/FLUX.1-dev-Controlnet-Union-alpha"),
|
| 614 |
+
],
|
| 615 |
+
"jasperai/Flux.1-dev-Controlnet-Depth": [
|
| 616 |
+
("jasperai/Flux.1-dev-Controlnet-Depth", "diffusion_pytorch_model.safetensors", "models/ControlNet/jasperai/Flux.1-dev-Controlnet-Depth"),
|
| 617 |
+
],
|
| 618 |
+
"jasperai/Flux.1-dev-Controlnet-Surface-Normals": [
|
| 619 |
+
("jasperai/Flux.1-dev-Controlnet-Surface-Normals", "diffusion_pytorch_model.safetensors", "models/ControlNet/jasperai/Flux.1-dev-Controlnet-Surface-Normals"),
|
| 620 |
+
],
|
| 621 |
+
"jasperai/Flux.1-dev-Controlnet-Upscaler": [
|
| 622 |
+
("jasperai/Flux.1-dev-Controlnet-Upscaler", "diffusion_pytorch_model.safetensors", "models/ControlNet/jasperai/Flux.1-dev-Controlnet-Upscaler"),
|
| 623 |
+
],
|
| 624 |
+
"alimama-creative/FLUX.1-dev-Controlnet-Inpainting-Alpha": [
|
| 625 |
+
("alimama-creative/FLUX.1-dev-Controlnet-Inpainting-Alpha", "diffusion_pytorch_model.safetensors", "models/ControlNet/alimama-creative/FLUX.1-dev-Controlnet-Inpainting-Alpha"),
|
| 626 |
+
],
|
| 627 |
+
"alimama-creative/FLUX.1-dev-Controlnet-Inpainting-Beta": [
|
| 628 |
+
("alimama-creative/FLUX.1-dev-Controlnet-Inpainting-Beta", "diffusion_pytorch_model.safetensors", "models/ControlNet/alimama-creative/FLUX.1-dev-Controlnet-Inpainting-Beta"),
|
| 629 |
+
],
|
| 630 |
+
"Shakker-Labs/FLUX.1-dev-ControlNet-Depth": [
|
| 631 |
+
("Shakker-Labs/FLUX.1-dev-ControlNet-Depth", "diffusion_pytorch_model.safetensors", "models/ControlNet/Shakker-Labs/FLUX.1-dev-ControlNet-Depth"),
|
| 632 |
+
],
|
| 633 |
+
"Shakker-Labs/FLUX.1-dev-ControlNet-Union-Pro": [
|
| 634 |
+
("Shakker-Labs/FLUX.1-dev-ControlNet-Union-Pro", "diffusion_pytorch_model.safetensors", "models/ControlNet/Shakker-Labs/FLUX.1-dev-ControlNet-Union-Pro"),
|
| 635 |
+
],
|
| 636 |
+
"InstantX/FLUX.1-dev-IP-Adapter": {
|
| 637 |
+
"file_list": [
|
| 638 |
+
("InstantX/FLUX.1-dev-IP-Adapter", "ip-adapter.bin", "models/IpAdapter/InstantX/FLUX.1-dev-IP-Adapter"),
|
| 639 |
+
("AI-ModelScope/siglip-so400m-patch14-384", "model.safetensors", "models/IpAdapter/InstantX/FLUX.1-dev-IP-Adapter/image_encoder"),
|
| 640 |
+
("AI-ModelScope/siglip-so400m-patch14-384", "config.json", "models/IpAdapter/InstantX/FLUX.1-dev-IP-Adapter/image_encoder"),
|
| 641 |
+
],
|
| 642 |
+
"load_path": [
|
| 643 |
+
"models/IpAdapter/InstantX/FLUX.1-dev-IP-Adapter/ip-adapter.bin",
|
| 644 |
+
"models/IpAdapter/InstantX/FLUX.1-dev-IP-Adapter/image_encoder",
|
| 645 |
+
],
|
| 646 |
+
},
|
| 647 |
+
"InfiniteYou":{
|
| 648 |
+
"file_list":[
|
| 649 |
+
("ByteDance/InfiniteYou", "infu_flux_v1.0/aes_stage2/InfuseNetModel/diffusion_pytorch_model-00001-of-00002.safetensors", "models/InfiniteYou/InfuseNetModel"),
|
| 650 |
+
("ByteDance/InfiniteYou", "infu_flux_v1.0/aes_stage2/InfuseNetModel/diffusion_pytorch_model-00002-of-00002.safetensors", "models/InfiniteYou/InfuseNetModel"),
|
| 651 |
+
("ByteDance/InfiniteYou", "infu_flux_v1.0/aes_stage2/image_proj_model.bin", "models/InfiniteYou"),
|
| 652 |
+
("ByteDance/InfiniteYou", "supports/insightface/models/antelopev2/1k3d68.onnx", "models/InfiniteYou/insightface/models/antelopev2"),
|
| 653 |
+
("ByteDance/InfiniteYou", "supports/insightface/models/antelopev2/2d106det.onnx", "models/InfiniteYou/insightface/models/antelopev2"),
|
| 654 |
+
("ByteDance/InfiniteYou", "supports/insightface/models/antelopev2/genderage.onnx", "models/InfiniteYou/insightface/models/antelopev2"),
|
| 655 |
+
("ByteDance/InfiniteYou", "supports/insightface/models/antelopev2/glintr100.onnx", "models/InfiniteYou/insightface/models/antelopev2"),
|
| 656 |
+
("ByteDance/InfiniteYou", "supports/insightface/models/antelopev2/scrfd_10g_bnkps.onnx", "models/InfiniteYou/insightface/models/antelopev2"),
|
| 657 |
+
],
|
| 658 |
+
"load_path":[
|
| 659 |
+
[
|
| 660 |
+
"models/InfiniteYou/InfuseNetModel/diffusion_pytorch_model-00001-of-00002.safetensors",
|
| 661 |
+
"models/InfiniteYou/InfuseNetModel/diffusion_pytorch_model-00002-of-00002.safetensors"
|
| 662 |
+
],
|
| 663 |
+
"models/InfiniteYou/image_proj_model.bin",
|
| 664 |
+
],
|
| 665 |
+
},
|
| 666 |
+
# ESRGAN
|
| 667 |
+
"ESRGAN_x4": [
|
| 668 |
+
("AI-ModelScope/Real-ESRGAN", "RealESRGAN_x4.pth", "models/ESRGAN"),
|
| 669 |
+
],
|
| 670 |
+
# RIFE
|
| 671 |
+
"RIFE": [
|
| 672 |
+
("AI-ModelScope/RIFE", "flownet.pkl", "models/RIFE"),
|
| 673 |
+
],
|
| 674 |
+
# Omnigen
|
| 675 |
+
"OmniGen-v1": {
|
| 676 |
+
"file_list": [
|
| 677 |
+
("BAAI/OmniGen-v1", "vae/diffusion_pytorch_model.safetensors", "models/OmniGen/OmniGen-v1/vae"),
|
| 678 |
+
("BAAI/OmniGen-v1", "model.safetensors", "models/OmniGen/OmniGen-v1"),
|
| 679 |
+
("BAAI/OmniGen-v1", "config.json", "models/OmniGen/OmniGen-v1"),
|
| 680 |
+
("BAAI/OmniGen-v1", "special_tokens_map.json", "models/OmniGen/OmniGen-v1"),
|
| 681 |
+
("BAAI/OmniGen-v1", "tokenizer_config.json", "models/OmniGen/OmniGen-v1"),
|
| 682 |
+
("BAAI/OmniGen-v1", "tokenizer.json", "models/OmniGen/OmniGen-v1"),
|
| 683 |
+
],
|
| 684 |
+
"load_path": [
|
| 685 |
+
"models/OmniGen/OmniGen-v1/vae/diffusion_pytorch_model.safetensors",
|
| 686 |
+
"models/OmniGen/OmniGen-v1/model.safetensors",
|
| 687 |
+
]
|
| 688 |
+
},
|
| 689 |
+
# CogVideo
|
| 690 |
+
"CogVideoX-5B": {
|
| 691 |
+
"file_list": [
|
| 692 |
+
("ZhipuAI/CogVideoX-5b", "text_encoder/config.json", "models/CogVideo/CogVideoX-5b/text_encoder"),
|
| 693 |
+
("ZhipuAI/CogVideoX-5b", "text_encoder/model.safetensors.index.json", "models/CogVideo/CogVideoX-5b/text_encoder"),
|
| 694 |
+
("ZhipuAI/CogVideoX-5b", "text_encoder/model-00001-of-00002.safetensors", "models/CogVideo/CogVideoX-5b/text_encoder"),
|
| 695 |
+
("ZhipuAI/CogVideoX-5b", "text_encoder/model-00002-of-00002.safetensors", "models/CogVideo/CogVideoX-5b/text_encoder"),
|
| 696 |
+
("ZhipuAI/CogVideoX-5b", "transformer/config.json", "models/CogVideo/CogVideoX-5b/transformer"),
|
| 697 |
+
("ZhipuAI/CogVideoX-5b", "transformer/diffusion_pytorch_model.safetensors.index.json", "models/CogVideo/CogVideoX-5b/transformer"),
|
| 698 |
+
("ZhipuAI/CogVideoX-5b", "transformer/diffusion_pytorch_model-00001-of-00002.safetensors", "models/CogVideo/CogVideoX-5b/transformer"),
|
| 699 |
+
("ZhipuAI/CogVideoX-5b", "transformer/diffusion_pytorch_model-00002-of-00002.safetensors", "models/CogVideo/CogVideoX-5b/transformer"),
|
| 700 |
+
("ZhipuAI/CogVideoX-5b", "vae/diffusion_pytorch_model.safetensors", "models/CogVideo/CogVideoX-5b/vae"),
|
| 701 |
+
],
|
| 702 |
+
"load_path": [
|
| 703 |
+
"models/CogVideo/CogVideoX-5b/text_encoder",
|
| 704 |
+
"models/CogVideo/CogVideoX-5b/transformer",
|
| 705 |
+
"models/CogVideo/CogVideoX-5b/vae/diffusion_pytorch_model.safetensors",
|
| 706 |
+
],
|
| 707 |
+
},
|
| 708 |
+
# Stable Diffusion 3.5
|
| 709 |
+
"StableDiffusion3.5-large": [
|
| 710 |
+
("AI-ModelScope/stable-diffusion-3.5-large", "sd3.5_large.safetensors", "models/stable_diffusion_3"),
|
| 711 |
+
("AI-ModelScope/stable-diffusion-3.5-large", "text_encoders/clip_l.safetensors", "models/stable_diffusion_3/text_encoders"),
|
| 712 |
+
("AI-ModelScope/stable-diffusion-3.5-large", "text_encoders/clip_g.safetensors", "models/stable_diffusion_3/text_encoders"),
|
| 713 |
+
("AI-ModelScope/stable-diffusion-3.5-large", "text_encoders/t5xxl_fp16.safetensors", "models/stable_diffusion_3/text_encoders"),
|
| 714 |
+
],
|
| 715 |
+
"StableDiffusion3.5-medium": [
|
| 716 |
+
("AI-ModelScope/stable-diffusion-3.5-medium", "sd3.5_medium.safetensors", "models/stable_diffusion_3"),
|
| 717 |
+
("AI-ModelScope/stable-diffusion-3.5-large", "text_encoders/clip_l.safetensors", "models/stable_diffusion_3/text_encoders"),
|
| 718 |
+
("AI-ModelScope/stable-diffusion-3.5-large", "text_encoders/clip_g.safetensors", "models/stable_diffusion_3/text_encoders"),
|
| 719 |
+
("AI-ModelScope/stable-diffusion-3.5-large", "text_encoders/t5xxl_fp16.safetensors", "models/stable_diffusion_3/text_encoders"),
|
| 720 |
+
],
|
| 721 |
+
"StableDiffusion3.5-large-turbo": [
|
| 722 |
+
("AI-ModelScope/stable-diffusion-3.5-large-turbo", "sd3.5_large_turbo.safetensors", "models/stable_diffusion_3"),
|
| 723 |
+
("AI-ModelScope/stable-diffusion-3.5-large", "text_encoders/clip_l.safetensors", "models/stable_diffusion_3/text_encoders"),
|
| 724 |
+
("AI-ModelScope/stable-diffusion-3.5-large", "text_encoders/clip_g.safetensors", "models/stable_diffusion_3/text_encoders"),
|
| 725 |
+
("AI-ModelScope/stable-diffusion-3.5-large", "text_encoders/t5xxl_fp16.safetensors", "models/stable_diffusion_3/text_encoders"),
|
| 726 |
+
],
|
| 727 |
+
"HunyuanVideo":{
|
| 728 |
+
"file_list": [
|
| 729 |
+
("AI-ModelScope/clip-vit-large-patch14", "model.safetensors", "models/HunyuanVideo/text_encoder"),
|
| 730 |
+
("DiffSynth-Studio/HunyuanVideo_MLLM_text_encoder", "model-00001-of-00004.safetensors", "models/HunyuanVideo/text_encoder_2"),
|
| 731 |
+
("DiffSynth-Studio/HunyuanVideo_MLLM_text_encoder", "model-00002-of-00004.safetensors", "models/HunyuanVideo/text_encoder_2"),
|
| 732 |
+
("DiffSynth-Studio/HunyuanVideo_MLLM_text_encoder", "model-00003-of-00004.safetensors", "models/HunyuanVideo/text_encoder_2"),
|
| 733 |
+
("DiffSynth-Studio/HunyuanVideo_MLLM_text_encoder", "model-00004-of-00004.safetensors", "models/HunyuanVideo/text_encoder_2"),
|
| 734 |
+
("DiffSynth-Studio/HunyuanVideo_MLLM_text_encoder", "config.json", "models/HunyuanVideo/text_encoder_2"),
|
| 735 |
+
("DiffSynth-Studio/HunyuanVideo_MLLM_text_encoder", "model.safetensors.index.json", "models/HunyuanVideo/text_encoder_2"),
|
| 736 |
+
("AI-ModelScope/HunyuanVideo", "hunyuan-video-t2v-720p/vae/pytorch_model.pt", "models/HunyuanVideo/vae"),
|
| 737 |
+
("AI-ModelScope/HunyuanVideo", "hunyuan-video-t2v-720p/transformers/mp_rank_00_model_states.pt", "models/HunyuanVideo/transformers")
|
| 738 |
+
],
|
| 739 |
+
"load_path": [
|
| 740 |
+
"models/HunyuanVideo/text_encoder/model.safetensors",
|
| 741 |
+
"models/HunyuanVideo/text_encoder_2",
|
| 742 |
+
"models/HunyuanVideo/vae/pytorch_model.pt",
|
| 743 |
+
"models/HunyuanVideo/transformers/mp_rank_00_model_states.pt"
|
| 744 |
+
],
|
| 745 |
+
},
|
| 746 |
+
"HunyuanVideoI2V":{
|
| 747 |
+
"file_list": [
|
| 748 |
+
("AI-ModelScope/clip-vit-large-patch14", "model.safetensors", "models/HunyuanVideoI2V/text_encoder"),
|
| 749 |
+
("AI-ModelScope/llava-llama-3-8b-v1_1-transformers", "model-00001-of-00004.safetensors", "models/HunyuanVideoI2V/text_encoder_2"),
|
| 750 |
+
("AI-ModelScope/llava-llama-3-8b-v1_1-transformers", "model-00002-of-00004.safetensors", "models/HunyuanVideoI2V/text_encoder_2"),
|
| 751 |
+
("AI-ModelScope/llava-llama-3-8b-v1_1-transformers", "model-00003-of-00004.safetensors", "models/HunyuanVideoI2V/text_encoder_2"),
|
| 752 |
+
("AI-ModelScope/llava-llama-3-8b-v1_1-transformers", "model-00004-of-00004.safetensors", "models/HunyuanVideoI2V/text_encoder_2"),
|
| 753 |
+
("AI-ModelScope/llava-llama-3-8b-v1_1-transformers", "config.json", "models/HunyuanVideoI2V/text_encoder_2"),
|
| 754 |
+
("AI-ModelScope/llava-llama-3-8b-v1_1-transformers", "model.safetensors.index.json", "models/HunyuanVideoI2V/text_encoder_2"),
|
| 755 |
+
("AI-ModelScope/HunyuanVideo-I2V", "hunyuan-video-i2v-720p/vae/pytorch_model.pt", "models/HunyuanVideoI2V/vae"),
|
| 756 |
+
("AI-ModelScope/HunyuanVideo-I2V", "hunyuan-video-i2v-720p/transformers/mp_rank_00_model_states.pt", "models/HunyuanVideoI2V/transformers")
|
| 757 |
+
],
|
| 758 |
+
"load_path": [
|
| 759 |
+
"models/HunyuanVideoI2V/text_encoder/model.safetensors",
|
| 760 |
+
"models/HunyuanVideoI2V/text_encoder_2",
|
| 761 |
+
"models/HunyuanVideoI2V/vae/pytorch_model.pt",
|
| 762 |
+
"models/HunyuanVideoI2V/transformers/mp_rank_00_model_states.pt"
|
| 763 |
+
],
|
| 764 |
+
},
|
| 765 |
+
"HunyuanVideo-fp8":{
|
| 766 |
+
"file_list": [
|
| 767 |
+
("AI-ModelScope/clip-vit-large-patch14", "model.safetensors", "models/HunyuanVideo/text_encoder"),
|
| 768 |
+
("DiffSynth-Studio/HunyuanVideo_MLLM_text_encoder", "model-00001-of-00004.safetensors", "models/HunyuanVideo/text_encoder_2"),
|
| 769 |
+
("DiffSynth-Studio/HunyuanVideo_MLLM_text_encoder", "model-00002-of-00004.safetensors", "models/HunyuanVideo/text_encoder_2"),
|
| 770 |
+
("DiffSynth-Studio/HunyuanVideo_MLLM_text_encoder", "model-00003-of-00004.safetensors", "models/HunyuanVideo/text_encoder_2"),
|
| 771 |
+
("DiffSynth-Studio/HunyuanVideo_MLLM_text_encoder", "model-00004-of-00004.safetensors", "models/HunyuanVideo/text_encoder_2"),
|
| 772 |
+
("DiffSynth-Studio/HunyuanVideo_MLLM_text_encoder", "config.json", "models/HunyuanVideo/text_encoder_2"),
|
| 773 |
+
("DiffSynth-Studio/HunyuanVideo_MLLM_text_encoder", "model.safetensors.index.json", "models/HunyuanVideo/text_encoder_2"),
|
| 774 |
+
("AI-ModelScope/HunyuanVideo", "hunyuan-video-t2v-720p/vae/pytorch_model.pt", "models/HunyuanVideo/vae"),
|
| 775 |
+
("DiffSynth-Studio/HunyuanVideo-safetensors", "model.fp8.safetensors", "models/HunyuanVideo/transformers")
|
| 776 |
+
],
|
| 777 |
+
"load_path": [
|
| 778 |
+
"models/HunyuanVideo/text_encoder/model.safetensors",
|
| 779 |
+
"models/HunyuanVideo/text_encoder_2",
|
| 780 |
+
"models/HunyuanVideo/vae/pytorch_model.pt",
|
| 781 |
+
"models/HunyuanVideo/transformers/model.fp8.safetensors"
|
| 782 |
+
],
|
| 783 |
+
},
|
| 784 |
+
}
|
| 785 |
+
Preset_model_id: TypeAlias = Literal[
|
| 786 |
+
"HunyuanDiT",
|
| 787 |
+
"stable-video-diffusion-img2vid-xt",
|
| 788 |
+
"ExVideo-SVD-128f-v1",
|
| 789 |
+
"ExVideo-CogVideoX-LoRA-129f-v1",
|
| 790 |
+
"StableDiffusion_v15",
|
| 791 |
+
"DreamShaper_8",
|
| 792 |
+
"AingDiffusion_v12",
|
| 793 |
+
"Flat2DAnimerge_v45Sharp",
|
| 794 |
+
"TextualInversion_VeryBadImageNegative_v1.3",
|
| 795 |
+
"StableDiffusionXL_v1",
|
| 796 |
+
"BluePencilXL_v200",
|
| 797 |
+
"StableDiffusionXL_Turbo",
|
| 798 |
+
"ControlNet_v11f1p_sd15_depth",
|
| 799 |
+
"ControlNet_v11p_sd15_softedge",
|
| 800 |
+
"ControlNet_v11f1e_sd15_tile",
|
| 801 |
+
"ControlNet_v11p_sd15_lineart",
|
| 802 |
+
"AnimateDiff_v2",
|
| 803 |
+
"AnimateDiff_xl_beta",
|
| 804 |
+
"RIFE",
|
| 805 |
+
"BeautifulPrompt",
|
| 806 |
+
"opus-mt-zh-en",
|
| 807 |
+
"IP-Adapter-SD",
|
| 808 |
+
"IP-Adapter-SDXL",
|
| 809 |
+
"StableDiffusion3",
|
| 810 |
+
"StableDiffusion3_without_T5",
|
| 811 |
+
"Kolors",
|
| 812 |
+
"SDXL-vae-fp16-fix",
|
| 813 |
+
"ControlNet_union_sdxl_promax",
|
| 814 |
+
"FLUX.1-dev",
|
| 815 |
+
"FLUX.1-schnell",
|
| 816 |
+
"InstantX/FLUX.1-dev-Controlnet-Union-alpha",
|
| 817 |
+
"jasperai/Flux.1-dev-Controlnet-Depth",
|
| 818 |
+
"jasperai/Flux.1-dev-Controlnet-Surface-Normals",
|
| 819 |
+
"jasperai/Flux.1-dev-Controlnet-Upscaler",
|
| 820 |
+
"alimama-creative/FLUX.1-dev-Controlnet-Inpainting-Alpha",
|
| 821 |
+
"alimama-creative/FLUX.1-dev-Controlnet-Inpainting-Beta",
|
| 822 |
+
"Shakker-Labs/FLUX.1-dev-ControlNet-Depth",
|
| 823 |
+
"Shakker-Labs/FLUX.1-dev-ControlNet-Union-Pro",
|
| 824 |
+
"InstantX/FLUX.1-dev-IP-Adapter",
|
| 825 |
+
"InfiniteYou",
|
| 826 |
+
"SDXL_lora_zyd232_ChineseInkStyle_SDXL_v1_0",
|
| 827 |
+
"QwenPrompt",
|
| 828 |
+
"OmostPrompt",
|
| 829 |
+
"ESRGAN_x4",
|
| 830 |
+
"RIFE",
|
| 831 |
+
"OmniGen-v1",
|
| 832 |
+
"CogVideoX-5B",
|
| 833 |
+
"Annotators:Depth",
|
| 834 |
+
"Annotators:Softedge",
|
| 835 |
+
"Annotators:Lineart",
|
| 836 |
+
"Annotators:Normal",
|
| 837 |
+
"Annotators:Openpose",
|
| 838 |
+
"StableDiffusion3.5-large",
|
| 839 |
+
"StableDiffusion3.5-medium",
|
| 840 |
+
"HunyuanVideo",
|
| 841 |
+
"HunyuanVideo-fp8",
|
| 842 |
+
"HunyuanVideoI2V",
|
| 843 |
+
]
|
diffsynth-studio/diffsynth/controlnets/__init__.py
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from .controlnet_unit import ControlNetConfigUnit, ControlNetUnit, MultiControlNetManager, FluxMultiControlNetManager
|
| 2 |
+
from .processors import Annotator
|
diffsynth-studio/diffsynth/controlnets/__pycache__/__init__.cpython-310.pyc
ADDED
|
Binary file (417 Bytes). View file
|
|
|