diffsynth-engine 0.3.6.dev7__tar.gz → 0.3.6.dev9__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/PKG-INFO +1 -1
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/flux/flux_vae.py +4 -2
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/pipelines/base.py +10 -3
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/pipelines/flux_image.py +2 -1
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/fp8_linear.py +14 -5
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/offload.py +1 -1
- diffsynth_engine-0.3.6.dev9/diffsynth_engine/utils/platform.py +20 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine.egg-info/PKG-INFO +1 -1
- diffsynth_engine-0.3.6.dev7/diffsynth_engine/utils/platform.py +0 -12
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/.gitignore +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/.pre-commit-config.yaml +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/LICENSE +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/MANIFEST.in +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/README.md +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/assets/dingtalk.png +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/assets/showcase.jpeg +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/__init__.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/__init__.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/__init__.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/base_scheduler.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/flow_match/__init__.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/flow_match/flow_beta.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/flow_match/flow_ddim.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/flow_match/recifited_flow.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/stable_diffusion/__init__.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/stable_diffusion/beta.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/stable_diffusion/ddim.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/stable_diffusion/exponential.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/stable_diffusion/karras.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/stable_diffusion/linear.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/stable_diffusion/sgm_uniform.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/__init__.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/flow_match/__init__.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/flow_match/flow_match_euler.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/stable_diffusion/__init__.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/stable_diffusion/brownian_tree.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/stable_diffusion/ddpm.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/stable_diffusion/deis.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/stable_diffusion/dpmpp_2m.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/stable_diffusion/dpmpp_2m_sde.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/stable_diffusion/dpmpp_3m_sde.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/stable_diffusion/epsilon.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/stable_diffusion/euler.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/stable_diffusion/euler_ancestral.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/components/vae.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/flux/flux_dit.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/flux/flux_text_encoder.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/flux/flux_vae.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/sd/sd_text_encoder.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/sd/sd_unet.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/sd3/sd3_dit.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/sd3/sd3_text_encoder.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/sdxl/sdxl_text_encoder.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/sdxl/sdxl_unet.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/wan/dit/1.3b-t2v.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/wan/dit/14b-flf2v.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/wan/dit/14b-i2v.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/wan/dit/14b-t2v.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/flux/tokenizer_1/merges.txt +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/flux/tokenizer_1/special_tokens_map.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/flux/tokenizer_1/tokenizer_config.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/flux/tokenizer_1/vocab.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/flux/tokenizer_2/special_tokens_map.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/flux/tokenizer_2/spiece.model +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/flux/tokenizer_2/tokenizer.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/flux/tokenizer_2/tokenizer_config.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/sdxl/tokenizer/merges.txt +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/sdxl/tokenizer/special_tokens_map.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/sdxl/tokenizer/tokenizer_config.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/sdxl/tokenizer/vocab.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/sdxl/tokenizer_2/merges.txt +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/sdxl/tokenizer_2/special_tokens_map.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/sdxl/tokenizer_2/tokenizer_config.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/sdxl/tokenizer_2/vocab.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/wan/umt5-xxl/special_tokens_map.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/wan/umt5-xxl/spiece.model +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/wan/umt5-xxl/tokenizer.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/wan/umt5-xxl/tokenizer_config.json +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/kernels/__init__.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/__init__.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/base.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/basic/__init__.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/basic/attention.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/basic/lora.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/basic/relative_position_emb.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/basic/timestep.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/basic/transformer_helper.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/basic/unet_helper.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/flux/__init__.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/flux/flux_controlnet.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/flux/flux_dit.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/flux/flux_dit_fbcache.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/flux/flux_ipadapter.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/flux/flux_redux.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/flux/flux_text_encoder.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sd/__init__.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sd/sd_controlnet.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sd/sd_text_encoder.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sd/sd_unet.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sd/sd_vae.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sd3/__init__.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sd3/sd3_dit.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sd3/sd3_text_encoder.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sd3/sd3_vae.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sdxl/__init__.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sdxl/sdxl_controlnet.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sdxl/sdxl_text_encoder.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sdxl/sdxl_unet.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sdxl/sdxl_vae.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/text_encoder/__init__.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/text_encoder/clip.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/text_encoder/siglip.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/text_encoder/t5.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/utils.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/vae/__init__.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/vae/vae.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/wan/__init__.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/wan/wan_dit.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/wan/wan_image_encoder.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/wan/wan_text_encoder.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/wan/wan_vae.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/pipelines/__init__.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/pipelines/controlnet_helper.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/pipelines/sd_image.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/pipelines/sdxl_image.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/pipelines/wan_video.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/processor/__init__.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/processor/canny_processor.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/processor/depth_processor.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tokenizers/__init__.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tokenizers/base.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tokenizers/clip.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tokenizers/t5.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tokenizers/wan.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tools/__init__.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tools/flux_inpainting_tool.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tools/flux_outpainting_tool.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tools/flux_reference_tool.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tools/flux_replace_tool.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/__init__.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/constants.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/download.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/env.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/flag.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/gguf.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/image.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/loader.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/lock.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/logging.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/onnx.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/parallel.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/prompt.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/video.py +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine.egg-info/SOURCES.txt +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine.egg-info/dependency_links.txt +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine.egg-info/requires.txt +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine.egg-info/top_level.txt +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/docs/tutorial.md +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/docs/tutorial_zh.md +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/pyproject.toml +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/setup.cfg +0 -0
- {diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/setup.py +0 -0
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/flux/flux_vae.py
RENAMED
|
@@ -53,7 +53,8 @@ class FluxVAEEncoder(VAEEncoder):
|
|
|
53
53
|
def from_state_dict(cls, state_dict: Dict[str, torch.Tensor], device: str, dtype: torch.dtype):
|
|
54
54
|
with no_init_weights():
|
|
55
55
|
model = torch.nn.utils.skip_init(cls, device=device, dtype=dtype)
|
|
56
|
-
model.load_state_dict(state_dict)
|
|
56
|
+
model.load_state_dict(state_dict, assign=True)
|
|
57
|
+
model.to(device=device, dtype=dtype, non_blocking=True)
|
|
57
58
|
return model
|
|
58
59
|
|
|
59
60
|
|
|
@@ -74,5 +75,6 @@ class FluxVAEDecoder(VAEDecoder):
|
|
|
74
75
|
def from_state_dict(cls, state_dict: Dict[str, torch.Tensor], device: str, dtype: torch.dtype):
|
|
75
76
|
with no_init_weights():
|
|
76
77
|
model = torch.nn.utils.skip_init(cls, device=device, dtype=dtype)
|
|
77
|
-
model.load_state_dict(state_dict)
|
|
78
|
+
model.load_state_dict(state_dict, assign=True)
|
|
79
|
+
model.to(device=device, dtype=dtype, non_blocking=True)
|
|
78
80
|
return model
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/pipelines/base.py
RENAMED
|
@@ -43,6 +43,7 @@ class BasePipeline:
|
|
|
43
43
|
self.dtype = dtype
|
|
44
44
|
self.offload_mode = None
|
|
45
45
|
self.model_names = []
|
|
46
|
+
self._models_offload_params = {}
|
|
46
47
|
|
|
47
48
|
@classmethod
|
|
48
49
|
def from_pretrained(
|
|
@@ -288,6 +289,10 @@ class BasePipeline:
|
|
|
288
289
|
model = getattr(self, model_name)
|
|
289
290
|
if model is not None:
|
|
290
291
|
model.to("cpu")
|
|
292
|
+
self._models_offload_params[model_name] = {}
|
|
293
|
+
for name, param in model.named_parameters(recurse=True):
|
|
294
|
+
param.data = param.data.pin_memory()
|
|
295
|
+
self._models_offload_params[model_name][name] = param.data
|
|
291
296
|
self.offload_mode = "cpu_offload"
|
|
292
297
|
|
|
293
298
|
def _enable_sequential_cpu_offload(self):
|
|
@@ -321,12 +326,14 @@ class BasePipeline:
|
|
|
321
326
|
for model_name in self.model_names:
|
|
322
327
|
if model_name not in load_model_names:
|
|
323
328
|
model = getattr(self, model_name)
|
|
324
|
-
if model is not None and (p := next(model.parameters(), None)) is not None and p.device != "cpu":
|
|
325
|
-
|
|
329
|
+
if model is not None and (p := next(model.parameters(), None)) is not None and p.device != torch.device("cpu"):
|
|
330
|
+
param_cache = self._models_offload_params[model_name]
|
|
331
|
+
for name, param in model.named_parameters(recurse=True):
|
|
332
|
+
param.data = param_cache[name]
|
|
326
333
|
# load the needed models to device
|
|
327
334
|
for model_name in load_model_names:
|
|
328
335
|
model = getattr(self, model_name)
|
|
329
|
-
if model is not None and (p := next(model.parameters(), None)) is not None and p.device != self.device:
|
|
336
|
+
if model is not None and (p := next(model.parameters(), None)) is not None and p.device != torch.device(self.device):
|
|
330
337
|
model.to(self.device)
|
|
331
338
|
# fresh the cuda cache
|
|
332
339
|
empty_cache()
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/pipelines/flux_image.py
RENAMED
|
@@ -604,7 +604,8 @@ class FluxImagePipeline(BasePipeline):
|
|
|
604
604
|
device=device,
|
|
605
605
|
dtype=model_config.dit_dtype,
|
|
606
606
|
)
|
|
607
|
-
|
|
607
|
+
if offload_mode is not None:
|
|
608
|
+
pipe.enable_cpu_offload(offload_mode)
|
|
608
609
|
if model_config.dit_dtype == torch.float8_e4m3fn:
|
|
609
610
|
pipe.dtype = torch.bfloat16 # running dtype
|
|
610
611
|
pipe.enable_fp8_autocast(
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/fp8_linear.py
RENAMED
|
@@ -2,6 +2,7 @@ import torch
|
|
|
2
2
|
import torch.nn as nn
|
|
3
3
|
import torch.nn.functional as F
|
|
4
4
|
from contextlib import contextmanager
|
|
5
|
+
from diffsynth_engine.utils.platform import DTYPE_FP8
|
|
5
6
|
|
|
6
7
|
|
|
7
8
|
def enable_fp8_autocast(module: nn.Module, compute_dtype: torch.dtype = torch.bfloat16, use_fp8_linear: bool = False):
|
|
@@ -51,7 +52,7 @@ def enable_fp8_linear(module: nn.Module):
|
|
|
51
52
|
def _enable_fp8_linear(module: nn.Module):
|
|
52
53
|
if isinstance(module, nn.Linear) and torch.is_floating_point(module.weight.data):
|
|
53
54
|
# avoid conversion for int weights like GGUF
|
|
54
|
-
module.weight.data = module.weight.data.to(
|
|
55
|
+
module.weight.data = module.weight.data.to(DTYPE_FP8)
|
|
55
56
|
for submodule in module.children():
|
|
56
57
|
_enable_fp8_linear(submodule)
|
|
57
58
|
|
|
@@ -71,8 +72,16 @@ def fp8_inference(enabled=True):
|
|
|
71
72
|
) -> torch.Tensor:
|
|
72
73
|
device = input.device
|
|
73
74
|
origin_dtype = input.dtype
|
|
74
|
-
|
|
75
|
-
|
|
75
|
+
scale_a = 1.0
|
|
76
|
+
# For float8_e4m3fnuz, the maximum representable value is half of that of e4m3fn.
|
|
77
|
+
# To avoid overflow and ensure numerical compatibility during FP8 computation,
|
|
78
|
+
# we scale down the input by 2.0 in advance.
|
|
79
|
+
# This scaling will be compensated later during the final result scaling.
|
|
80
|
+
if DTYPE_FP8 == torch.float8_e4m3fnuz:
|
|
81
|
+
scale_a = 2.0
|
|
82
|
+
input = input / scale_a
|
|
83
|
+
input = input.to(DTYPE_FP8)
|
|
84
|
+
weight = weight.to(DTYPE_FP8)
|
|
76
85
|
|
|
77
86
|
if len(input.shape) > 2:
|
|
78
87
|
origin_shape = input.shape
|
|
@@ -80,7 +89,7 @@ def fp8_inference(enabled=True):
|
|
|
80
89
|
result = torch._scaled_mm(
|
|
81
90
|
input,
|
|
82
91
|
weight.T,
|
|
83
|
-
scale_a=torch.tensor(
|
|
92
|
+
scale_a=torch.tensor(scale_a).to(device=device),
|
|
84
93
|
scale_b=torch.tensor(1.0).to(device=device),
|
|
85
94
|
bias=bias,
|
|
86
95
|
out_dtype=origin_dtype,
|
|
@@ -91,7 +100,7 @@ def fp8_inference(enabled=True):
|
|
|
91
100
|
result = torch._scaled_mm(
|
|
92
101
|
input,
|
|
93
102
|
weight.T,
|
|
94
|
-
scale_a=torch.tensor(
|
|
103
|
+
scale_a=torch.tensor(scale_a).to(device=device),
|
|
95
104
|
scale_b=torch.tensor(1.0).to(device=device),
|
|
96
105
|
bias=bias,
|
|
97
106
|
out_dtype=origin_dtype,
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/offload.py
RENAMED
|
@@ -18,7 +18,7 @@ def add_cpu_offload_hook(module: nn.Module, device: str = "cuda", recurse: bool
|
|
|
18
18
|
def _forward_pre_hook(module: nn.Module, input):
|
|
19
19
|
offload_params = {}
|
|
20
20
|
for name, param in module.named_parameters(recurse=recurse):
|
|
21
|
-
offload_params[name] = param.data
|
|
21
|
+
offload_params[name] = param.data.pin_memory()
|
|
22
22
|
param.data = param.data.to(device=device)
|
|
23
23
|
setattr(module, "_offload_params", offload_params)
|
|
24
24
|
return tuple(x.to(device=device) if isinstance(x, torch.Tensor) else x for x in input)
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# cross-platform definitions and utilities
|
|
2
|
+
import torch
|
|
3
|
+
import gc
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
# data type
|
|
7
|
+
# AMD only supports float8_e4m3fnuz
|
|
8
|
+
# https://onnx.ai/onnx/technical/float8.html
|
|
9
|
+
if torch.version.hip and "gfx94" in torch.cuda.get_device_properties(0).gcnArchName:
|
|
10
|
+
DTYPE_FP8 = torch.float8_e4m3fnuz
|
|
11
|
+
else:
|
|
12
|
+
DTYPE_FP8 = torch.float8_e4m3fn
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
def empty_cache():
|
|
16
|
+
if torch.cuda.is_available():
|
|
17
|
+
torch.cuda.empty_cache()
|
|
18
|
+
if torch.mps.is_available():
|
|
19
|
+
torch.mps.empty_cache()
|
|
20
|
+
gc.collect()
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/kernels/__init__.py
RENAMED
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/basic/lora.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/flux/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/flux/flux_dit.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sd/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sd/sd_unet.py
RENAMED
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sd/sd_vae.py
RENAMED
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sd3/__init__.py
RENAMED
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sd3/sd3_dit.py
RENAMED
|
File without changes
|
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sd3/sd3_vae.py
RENAMED
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sdxl/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sdxl/sdxl_vae.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/utils.py
RENAMED
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/vae/__init__.py
RENAMED
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/vae/vae.py
RENAMED
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/wan/__init__.py
RENAMED
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/wan/wan_dit.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/wan/wan_vae.py
RENAMED
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/pipelines/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/pipelines/sd_image.py
RENAMED
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/pipelines/sdxl_image.py
RENAMED
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/pipelines/wan_video.py
RENAMED
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/processor/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tokenizers/__init__.py
RENAMED
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tokenizers/base.py
RENAMED
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tokenizers/clip.py
RENAMED
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tokenizers/t5.py
RENAMED
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tokenizers/wan.py
RENAMED
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tools/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/__init__.py
RENAMED
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/constants.py
RENAMED
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/download.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/loader.py
RENAMED
|
File without changes
|
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/logging.py
RENAMED
|
File without changes
|
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/parallel.py
RENAMED
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/prompt.py
RENAMED
|
File without changes
|
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine.egg-info/SOURCES.txt
RENAMED
|
File without changes
|
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine.egg-info/requires.txt
RENAMED
|
File without changes
|
{diffsynth_engine-0.3.6.dev7 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|