diffsynth-engine 0.3.6.dev8__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.
Files changed (162) hide show
  1. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/PKG-INFO +1 -1
  2. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/fp8_linear.py +14 -5
  3. diffsynth_engine-0.3.6.dev9/diffsynth_engine/utils/platform.py +20 -0
  4. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine.egg-info/PKG-INFO +1 -1
  5. diffsynth_engine-0.3.6.dev8/diffsynth_engine/utils/platform.py +0 -12
  6. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/.gitignore +0 -0
  7. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/.pre-commit-config.yaml +0 -0
  8. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/LICENSE +0 -0
  9. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/MANIFEST.in +0 -0
  10. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/README.md +0 -0
  11. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/assets/dingtalk.png +0 -0
  12. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/assets/showcase.jpeg +0 -0
  13. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/__init__.py +0 -0
  14. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/__init__.py +0 -0
  15. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/__init__.py +0 -0
  16. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/base_scheduler.py +0 -0
  17. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/flow_match/__init__.py +0 -0
  18. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/flow_match/flow_beta.py +0 -0
  19. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/flow_match/flow_ddim.py +0 -0
  20. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/flow_match/recifited_flow.py +0 -0
  21. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/stable_diffusion/__init__.py +0 -0
  22. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/stable_diffusion/beta.py +0 -0
  23. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/stable_diffusion/ddim.py +0 -0
  24. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/stable_diffusion/exponential.py +0 -0
  25. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/stable_diffusion/karras.py +0 -0
  26. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/stable_diffusion/linear.py +0 -0
  27. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/noise_scheduler/stable_diffusion/sgm_uniform.py +0 -0
  28. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/__init__.py +0 -0
  29. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/flow_match/__init__.py +0 -0
  30. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/flow_match/flow_match_euler.py +0 -0
  31. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/stable_diffusion/__init__.py +0 -0
  32. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/stable_diffusion/brownian_tree.py +0 -0
  33. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/stable_diffusion/ddpm.py +0 -0
  34. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/stable_diffusion/deis.py +0 -0
  35. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/stable_diffusion/dpmpp_2m.py +0 -0
  36. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/stable_diffusion/dpmpp_2m_sde.py +0 -0
  37. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/stable_diffusion/dpmpp_3m_sde.py +0 -0
  38. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/stable_diffusion/epsilon.py +0 -0
  39. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/stable_diffusion/euler.py +0 -0
  40. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/algorithm/sampler/stable_diffusion/euler_ancestral.py +0 -0
  41. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/components/vae.json +0 -0
  42. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/flux/flux_dit.json +0 -0
  43. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/flux/flux_text_encoder.json +0 -0
  44. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/flux/flux_vae.json +0 -0
  45. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/sd/sd_text_encoder.json +0 -0
  46. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/sd/sd_unet.json +0 -0
  47. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/sd3/sd3_dit.json +0 -0
  48. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/sd3/sd3_text_encoder.json +0 -0
  49. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/sdxl/sdxl_text_encoder.json +0 -0
  50. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/sdxl/sdxl_unet.json +0 -0
  51. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/wan/dit/1.3b-t2v.json +0 -0
  52. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/wan/dit/14b-flf2v.json +0 -0
  53. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/wan/dit/14b-i2v.json +0 -0
  54. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/models/wan/dit/14b-t2v.json +0 -0
  55. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/flux/tokenizer_1/merges.txt +0 -0
  56. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/flux/tokenizer_1/special_tokens_map.json +0 -0
  57. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/flux/tokenizer_1/tokenizer_config.json +0 -0
  58. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/flux/tokenizer_1/vocab.json +0 -0
  59. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/flux/tokenizer_2/special_tokens_map.json +0 -0
  60. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/flux/tokenizer_2/spiece.model +0 -0
  61. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/flux/tokenizer_2/tokenizer.json +0 -0
  62. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/flux/tokenizer_2/tokenizer_config.json +0 -0
  63. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/sdxl/tokenizer/merges.txt +0 -0
  64. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/sdxl/tokenizer/special_tokens_map.json +0 -0
  65. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/sdxl/tokenizer/tokenizer_config.json +0 -0
  66. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/sdxl/tokenizer/vocab.json +0 -0
  67. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/sdxl/tokenizer_2/merges.txt +0 -0
  68. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/sdxl/tokenizer_2/special_tokens_map.json +0 -0
  69. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/sdxl/tokenizer_2/tokenizer_config.json +0 -0
  70. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/sdxl/tokenizer_2/vocab.json +0 -0
  71. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/wan/umt5-xxl/special_tokens_map.json +0 -0
  72. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/wan/umt5-xxl/spiece.model +0 -0
  73. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/wan/umt5-xxl/tokenizer.json +0 -0
  74. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/conf/tokenizers/wan/umt5-xxl/tokenizer_config.json +0 -0
  75. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/kernels/__init__.py +0 -0
  76. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/__init__.py +0 -0
  77. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/base.py +0 -0
  78. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/basic/__init__.py +0 -0
  79. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/basic/attention.py +0 -0
  80. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/basic/lora.py +0 -0
  81. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/basic/relative_position_emb.py +0 -0
  82. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/basic/timestep.py +0 -0
  83. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/basic/transformer_helper.py +0 -0
  84. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/basic/unet_helper.py +0 -0
  85. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/flux/__init__.py +0 -0
  86. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/flux/flux_controlnet.py +0 -0
  87. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/flux/flux_dit.py +0 -0
  88. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/flux/flux_dit_fbcache.py +0 -0
  89. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/flux/flux_ipadapter.py +0 -0
  90. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/flux/flux_redux.py +0 -0
  91. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/flux/flux_text_encoder.py +0 -0
  92. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/flux/flux_vae.py +0 -0
  93. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sd/__init__.py +0 -0
  94. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sd/sd_controlnet.py +0 -0
  95. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sd/sd_text_encoder.py +0 -0
  96. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sd/sd_unet.py +0 -0
  97. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sd/sd_vae.py +0 -0
  98. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sd3/__init__.py +0 -0
  99. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sd3/sd3_dit.py +0 -0
  100. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sd3/sd3_text_encoder.py +0 -0
  101. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sd3/sd3_vae.py +0 -0
  102. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sdxl/__init__.py +0 -0
  103. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sdxl/sdxl_controlnet.py +0 -0
  104. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sdxl/sdxl_text_encoder.py +0 -0
  105. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sdxl/sdxl_unet.py +0 -0
  106. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/sdxl/sdxl_vae.py +0 -0
  107. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/text_encoder/__init__.py +0 -0
  108. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/text_encoder/clip.py +0 -0
  109. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/text_encoder/siglip.py +0 -0
  110. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/text_encoder/t5.py +0 -0
  111. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/utils.py +0 -0
  112. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/vae/__init__.py +0 -0
  113. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/vae/vae.py +0 -0
  114. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/wan/__init__.py +0 -0
  115. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/wan/wan_dit.py +0 -0
  116. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/wan/wan_image_encoder.py +0 -0
  117. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/wan/wan_text_encoder.py +0 -0
  118. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/models/wan/wan_vae.py +0 -0
  119. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/pipelines/__init__.py +0 -0
  120. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/pipelines/base.py +0 -0
  121. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/pipelines/controlnet_helper.py +0 -0
  122. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/pipelines/flux_image.py +0 -0
  123. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/pipelines/sd_image.py +0 -0
  124. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/pipelines/sdxl_image.py +0 -0
  125. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/pipelines/wan_video.py +0 -0
  126. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/processor/__init__.py +0 -0
  127. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/processor/canny_processor.py +0 -0
  128. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/processor/depth_processor.py +0 -0
  129. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tokenizers/__init__.py +0 -0
  130. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tokenizers/base.py +0 -0
  131. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tokenizers/clip.py +0 -0
  132. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tokenizers/t5.py +0 -0
  133. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tokenizers/wan.py +0 -0
  134. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tools/__init__.py +0 -0
  135. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tools/flux_inpainting_tool.py +0 -0
  136. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tools/flux_outpainting_tool.py +0 -0
  137. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tools/flux_reference_tool.py +0 -0
  138. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/tools/flux_replace_tool.py +0 -0
  139. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/__init__.py +0 -0
  140. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/constants.py +0 -0
  141. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/download.py +0 -0
  142. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/env.py +0 -0
  143. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/flag.py +0 -0
  144. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/gguf.py +0 -0
  145. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/image.py +0 -0
  146. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/loader.py +0 -0
  147. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/lock.py +0 -0
  148. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/logging.py +0 -0
  149. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/offload.py +0 -0
  150. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/onnx.py +0 -0
  151. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/parallel.py +0 -0
  152. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/prompt.py +0 -0
  153. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine/utils/video.py +0 -0
  154. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine.egg-info/SOURCES.txt +0 -0
  155. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine.egg-info/dependency_links.txt +0 -0
  156. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine.egg-info/requires.txt +0 -0
  157. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/diffsynth_engine.egg-info/top_level.txt +0 -0
  158. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/docs/tutorial.md +0 -0
  159. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/docs/tutorial_zh.md +0 -0
  160. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/pyproject.toml +0 -0
  161. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/setup.cfg +0 -0
  162. {diffsynth_engine-0.3.6.dev8 → diffsynth_engine-0.3.6.dev9}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: diffsynth_engine
3
- Version: 0.3.6.dev8
3
+ Version: 0.3.6.dev9
4
4
  Author: MuseAI x ModelScope
5
5
  Classifier: Programming Language :: Python :: 3
6
6
  Classifier: Operating System :: OS Independent
@@ -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(torch.float8_e4m3fn)
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
- input = input.to(torch.float8_e4m3fn)
75
- weight = weight.to(torch.float8_e4m3fn)
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(1.0).to(device=device),
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(1.0).to(device=device),
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,
@@ -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()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: diffsynth_engine
3
- Version: 0.3.6.dev8
3
+ Version: 0.3.6.dev9
4
4
  Author: MuseAI x ModelScope
5
5
  Classifier: Programming Language :: Python :: 3
6
6
  Classifier: Operating System :: OS Independent
@@ -1,12 +0,0 @@
1
- import torch
2
- import gc
3
-
4
- # 存放跨平台的工具类
5
-
6
-
7
- def empty_cache():
8
- if torch.cuda.is_available():
9
- torch.cuda.empty_cache()
10
- if torch.mps.is_available():
11
- torch.mps.empty_cache()
12
- gc.collect()