horde-engine 3.3.1__tar.gz → 3.3.2__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 (239) hide show
  1. {horde_engine-3.3.1 → horde_engine-3.3.2}/PKG-INFO +1 -1
  2. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/_version.py +2 -2
  3. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/feature_impact.py +13 -1
  4. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline/constants.py +41 -0
  5. {horde_engine-3.3.1 → horde_engine-3.3.2}/.gitignore +0 -0
  6. {horde_engine-3.3.1 → horde_engine-3.3.2}/LICENSE +0 -0
  7. {horde_engine-3.3.1 → horde_engine-3.3.2}/README.md +0 -0
  8. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/__init__.py +0 -0
  9. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/__pyinstaller.py +0 -0
  10. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/api.py +0 -0
  11. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/benchmark.py +0 -0
  12. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/beta_models.py +0 -0
  13. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/comfy_horde.py +0 -0
  14. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/config_path.py +0 -0
  15. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/consts.py +0 -0
  16. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/exceptions.py +0 -0
  17. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/execution/__init__.py +0 -0
  18. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/execution/comfy_patches.py +0 -0
  19. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/execution/graph_utils.py +0 -0
  20. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/execution/in_process.py +0 -0
  21. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/execution/interface.py +0 -0
  22. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/execution/phase_timing.py +0 -0
  23. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/execution/progress_hook.py +0 -0
  24. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/execution/sampling_lease.py +0 -0
  25. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/feature_requirements.py +0 -0
  26. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/horde.py +0 -0
  27. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/initialisation.py +0 -0
  28. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/installation/__init__.py +0 -0
  29. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/installation/__main__.py +0 -0
  30. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/installation/installer.py +0 -0
  31. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/installation/manifest.json +0 -0
  32. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/installation/manifest.py +0 -0
  33. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/integrations/__init__.py +0 -0
  34. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/integrations/logfire_comfy_internals.py +0 -0
  35. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/integrations/logfire_setup.py +0 -0
  36. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/metrics.py +0 -0
  37. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/model_database/db_dep.json +0 -0
  38. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/model_database/db_embeds.json +0 -0
  39. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/model_database/diffusers.json +0 -0
  40. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/model_database/med_config.json +0 -0
  41. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/model_manager/__init__.py +0 -0
  42. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/model_manager/base.py +0 -0
  43. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/model_manager/civitai_adhoc.py +0 -0
  44. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/model_manager/civitai_provider.py +0 -0
  45. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/model_manager/civitai_records.py +0 -0
  46. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/model_manager/codeformer.py +0 -0
  47. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/model_manager/compvis.py +0 -0
  48. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/model_manager/controlnet.py +0 -0
  49. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/model_manager/diffusers.py +0 -0
  50. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/model_manager/esrgan.py +0 -0
  51. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/model_manager/gfpgan.py +0 -0
  52. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/model_manager/hyper.py +0 -0
  53. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/model_manager/lora.py +0 -0
  54. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/model_manager/miscellaneous.py +0 -0
  55. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/model_manager/safety_checker.py +0 -0
  56. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/model_manager/ti.py +0 -0
  57. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/__init__.py +0 -0
  58. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/comfyui_layerdiffuse/LICENSE +0 -0
  59. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/comfyui_layerdiffuse/README.md +0 -0
  60. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/comfyui_layerdiffuse/__init__.py +0 -0
  61. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/comfyui_layerdiffuse/examples/layer_diffusion_cond_example.json +0 -0
  62. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/comfyui_layerdiffuse/examples/layer_diffusion_cond_fg_all.json +0 -0
  63. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/comfyui_layerdiffuse/examples/layer_diffusion_cond_joint_bg.json +0 -0
  64. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/comfyui_layerdiffuse/examples/layer_diffusion_cond_joint_fg.json +0 -0
  65. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/comfyui_layerdiffuse/examples/layer_diffusion_diff_bg.json +0 -0
  66. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/comfyui_layerdiffuse/examples/layer_diffusion_diff_bg_stop_at.json +0 -0
  67. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/comfyui_layerdiffuse/examples/layer_diffusion_diff_fg.json +0 -0
  68. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/comfyui_layerdiffuse/examples/layer_diffusion_fg_example.json +0 -0
  69. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/comfyui_layerdiffuse/examples/layer_diffusion_fg_example_rgba.json +0 -0
  70. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/comfyui_layerdiffuse/examples/layer_diffusion_joint.json +0 -0
  71. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/comfyui_layerdiffuse/layered_diffusion.py +0 -0
  72. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/comfyui_layerdiffuse/lib_layerdiffusion/__init__.py +0 -0
  73. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/comfyui_layerdiffuse/lib_layerdiffusion/attention_sharing.py +0 -0
  74. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/comfyui_layerdiffuse/lib_layerdiffusion/enums.py +0 -0
  75. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/comfyui_layerdiffuse/lib_layerdiffusion/models.py +0 -0
  76. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/comfyui_layerdiffuse/lib_layerdiffusion/utils.py +0 -0
  77. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/comfyui_layerdiffuse/pyproject.toml +0 -0
  78. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/comfyui_layerdiffuse/requirements.txt +0 -0
  79. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/LICENSE +0 -0
  80. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/README.md +0 -0
  81. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/__init__.py +0 -0
  82. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/VERSION +0 -0
  83. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/__init__.py +0 -0
  84. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/archs/__init__.py +0 -0
  85. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/archs/arcface_arch.py +0 -0
  86. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/archs/arch_util.py +0 -0
  87. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/archs/codeformer_arch.py +0 -0
  88. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/archs/rrdbnet_arch.py +0 -0
  89. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/archs/vgg_arch.py +0 -0
  90. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/archs/vqgan_arch.py +0 -0
  91. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/data/__init__.py +0 -0
  92. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/data/data_sampler.py +0 -0
  93. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/data/data_util.py +0 -0
  94. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/data/prefetch_dataloader.py +0 -0
  95. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/data/transforms.py +0 -0
  96. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/losses/__init__.py +0 -0
  97. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/losses/loss_util.py +0 -0
  98. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/losses/losses.py +0 -0
  99. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/metrics/__init__.py +0 -0
  100. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/metrics/metric_util.py +0 -0
  101. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/metrics/psnr_ssim.py +0 -0
  102. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/models/__init__.py +0 -0
  103. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/ops/__init__.py +0 -0
  104. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/ops/dcn/__init__.py +0 -0
  105. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/ops/dcn/deform_conv.py +0 -0
  106. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/ops/dcn/src/deform_conv_cuda.cpp +0 -0
  107. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/ops/dcn/src/deform_conv_cuda_kernel.cu +0 -0
  108. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/ops/dcn/src/deform_conv_ext.cpp +0 -0
  109. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/ops/fused_act/__init__.py +0 -0
  110. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/ops/fused_act/fused_act.py +0 -0
  111. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/ops/fused_act/src/fused_bias_act.cpp +0 -0
  112. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/ops/fused_act/src/fused_bias_act_kernel.cu +0 -0
  113. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/ops/upfirdn2d/__init__.py +0 -0
  114. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/ops/upfirdn2d/src/upfirdn2d.cpp +0 -0
  115. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/ops/upfirdn2d/src/upfirdn2d_kernel.cu +0 -0
  116. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/ops/upfirdn2d/upfirdn2d.py +0 -0
  117. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/setup.py +0 -0
  118. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/train.py +0 -0
  119. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/utils/__init__.py +0 -0
  120. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/utils/dist_util.py +0 -0
  121. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/utils/download_util.py +0 -0
  122. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/utils/file_client.py +0 -0
  123. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/utils/img_util.py +0 -0
  124. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/utils/lmdb_util.py +0 -0
  125. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/utils/logger.py +0 -0
  126. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/utils/matlab_functions.py +0 -0
  127. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/utils/misc.py +0 -0
  128. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/utils/options.py +0 -0
  129. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/utils/realesrgan_utils.py +0 -0
  130. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/utils/registry.py +0 -0
  131. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/basicsr/version.py +0 -0
  132. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/__init__.py +0 -0
  133. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/detection/__init__.py +0 -0
  134. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/detection/align_trans.py +0 -0
  135. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/detection/matlab_cp2tform.py +0 -0
  136. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/detection/retinaface/retinaface.py +0 -0
  137. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/detection/retinaface/retinaface_net.py +0 -0
  138. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/detection/retinaface/retinaface_utils.py +0 -0
  139. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/__init__.py +0 -0
  140. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/face_detector.py +0 -0
  141. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/models/__init__.py +0 -0
  142. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/models/common.py +0 -0
  143. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/models/experimental.py +0 -0
  144. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/models/yolo.py +0 -0
  145. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/models/yolov5l.yaml +0 -0
  146. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/models/yolov5n.yaml +0 -0
  147. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/utils/__init__.py +0 -0
  148. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/utils/autoanchor.py +0 -0
  149. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/utils/datasets.py +0 -0
  150. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/utils/extract_ckpt.py +0 -0
  151. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/utils/general.py +0 -0
  152. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/utils/torch_utils.py +0 -0
  153. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/parsing/__init__.py +0 -0
  154. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/parsing/bisenet.py +0 -0
  155. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/parsing/parsenet.py +0 -0
  156. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/parsing/resnet.py +0 -0
  157. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/utils/__init__.py +0 -0
  158. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/utils/face_restoration_helper.py +0 -0
  159. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/utils/face_utils.py +0 -0
  160. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/facelib/utils/misc.py +0 -0
  161. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/r_chainner/README.md +0 -0
  162. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/r_chainner/__init__.py +0 -0
  163. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/r_chainner/gfpganv1_clean_arch.py +0 -0
  164. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/r_chainner/model_loading.py +0 -0
  165. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/r_chainner/stylegan2_clean_arch.py +0 -0
  166. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/facerestore_cf/r_chainner/types.py +0 -0
  167. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/node_controlnet_model_loader.py +0 -0
  168. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/node_image_loader.py +0 -0
  169. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/node_image_output.py +0 -0
  170. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/node_lora_loader.py +0 -0
  171. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/node_model_loader.py +0 -0
  172. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/nodes/node_upscale_model_loader.py +0 -0
  173. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline/__init__.py +0 -0
  174. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline/context.py +0 -0
  175. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline/families/__init__.py +0 -0
  176. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline/families/image.py +0 -0
  177. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline/families/post_processing.py +0 -0
  178. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline/graph.py +0 -0
  179. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline/horde_compat.py +0 -0
  180. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline/patches.py +0 -0
  181. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline/payload.py +0 -0
  182. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline/payload_pp.py +0 -0
  183. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline/registry.py +0 -0
  184. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline/resolution.py +0 -0
  185. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline/template.py +0 -0
  186. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline_designs/pipeline_controlnet.json +0 -0
  187. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline_designs/pipeline_controlnet_annotator.json +0 -0
  188. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline_designs/pipeline_controlnet_hires_fix.json +0 -0
  189. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline_designs/pipeline_flux.json +0 -0
  190. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline_designs/pipeline_image_facefix.json +0 -0
  191. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline_designs/pipeline_image_upscale.json +0 -0
  192. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline_designs/pipeline_qr_code.json +0 -0
  193. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline_designs/pipeline_qwen.json +0 -0
  194. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline_designs/pipeline_stable_cascade.json +0 -0
  195. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline_designs/pipeline_stable_cascade_2pass.json +0 -0
  196. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline_designs/pipeline_stable_cascade_remix.json +0 -0
  197. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline_designs/pipeline_stable_diffusion.json +0 -0
  198. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline_designs/pipeline_stable_diffusion_hires_fix.json +0 -0
  199. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline_designs/pipeline_stable_diffusion_img2img_mask.json +0 -0
  200. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipeline_designs/pipeline_stable_diffusion_paint.json +0 -0
  201. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipelines/pipeline_controlnet.json +0 -0
  202. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipelines/pipeline_controlnet_annotator.json +0 -0
  203. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipelines/pipeline_controlnet_hires_fix.json +0 -0
  204. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipelines/pipeline_flux.json +0 -0
  205. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipelines/pipeline_image_facefix.json +0 -0
  206. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipelines/pipeline_image_upscale.json +0 -0
  207. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipelines/pipeline_qr_code.json +0 -0
  208. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipelines/pipeline_qwen.json +0 -0
  209. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipelines/pipeline_stable_cascade.json +0 -0
  210. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipelines/pipeline_stable_cascade_2pass.json +0 -0
  211. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipelines/pipeline_stable_cascade_remix.json +0 -0
  212. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipelines/pipeline_stable_diffusion.json +0 -0
  213. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipelines/pipeline_stable_diffusion_hires_fix.json +0 -0
  214. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipelines/pipeline_stable_diffusion_img2img_mask.json +0 -0
  215. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pipelines/pipeline_stable_diffusion_paint.json +0 -0
  216. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/preload.py +0 -0
  217. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/py.typed +0 -0
  218. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pyinstaller_hooks/__init__.py +0 -0
  219. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/pyinstaller_hooks/hook-hordelib.horde.py +0 -0
  220. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/safety.py +0 -0
  221. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/safety_checker.py +0 -0
  222. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/settings.py +0 -0
  223. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/shared_model_manager.py +0 -0
  224. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/train.py +0 -0
  225. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/utils/__init__.py +0 -0
  226. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/utils/distance.py +0 -0
  227. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/utils/dynamicprompt.py +0 -0
  228. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/utils/gpuinfo.py +0 -0
  229. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/utils/image_utils.py +0 -0
  230. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/utils/ioredirect.py +0 -0
  231. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/utils/logger.py +0 -0
  232. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/utils/nvml.py +0 -0
  233. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/utils/optional_deps.py +0 -0
  234. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/utils/sanitizer.py +0 -0
  235. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/utils/switch.py +0 -0
  236. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/utils/torch_build.py +0 -0
  237. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/utils/torch_memory.py +0 -0
  238. {horde_engine-3.3.1 → horde_engine-3.3.2}/hordelib/vram_planning.py +0 -0
  239. {horde_engine-3.3.1 → horde_engine-3.3.2}/pyproject.toml +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: horde-engine
3
- Version: 3.3.1
3
+ Version: 3.3.2
4
4
  Summary: A wrapper around ComfyUI to allow use by AI Horde.
5
5
  Project-URL: Homepage, https://github.com/Haidra-Org/hordelib
6
6
  Project-URL: Bug Tracker, https://github.com/Haidra-Org/hordelib/issues
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
18
18
  commit_id: str | None
19
19
  __commit_id__: str | None
20
20
 
21
- __version__ = version = '3.3.1'
22
- __version_tuple__ = version_tuple = (3, 3, 1)
21
+ __version__ = version = '3.3.2'
22
+ __version_tuple__ = version_tuple = (3, 3, 2)
23
23
 
24
24
  __commit_id__ = commit_id = None
@@ -371,6 +371,7 @@ def estimate_job_burden(
371
371
  features: list[FEATURE_KIND] | None = None,
372
372
  model_record: ImageGenerationModelRecord | None = None,
373
373
  aux_model_weights_mb: dict[FEATURE_KIND, float] | None = None,
374
+ post_processing_upscale_factor: float = 1.0,
374
375
  ) -> BurdenEstimate:
375
376
  """Estimate the total resource burden of one job configuration.
376
377
 
@@ -385,6 +386,12 @@ def estimate_job_burden(
385
386
  ``vram_delta_mb`` term while keeping the activation (per-megapixel) term. Unsupplied features keep the
386
387
  conservative seed.
387
388
 
389
+ ``post_processing_upscale_factor`` is the linear scale of the requested upscaler (see
390
+ :func:`hordelib.pipeline.constants.max_upscale_factor`). The upscale activation peak scales with the
391
+ *output* megapixels, so the ``post_processing_upscale`` feature's per-megapixel term is applied against
392
+ ``factor**2`` the generation megapixels: a 4x upscale of a 1 MP image works a 16 MP tensor, the dominant
393
+ cost of the post-processing phase. The default of 1.0 leaves the activation at generation resolution.
394
+
388
395
  Never raises on unknown baselines: pre-flight callers need an answer for every
389
396
  job, so unknown baselines use a heavy fallback seed and are flagged via
390
397
  ``baseline_known=False``.
@@ -411,7 +418,12 @@ def estimate_job_burden(
411
418
  weight_mb = round(aux_model_weights_mb[kind])
412
419
  else:
413
420
  weight_mb = impact.vram_delta_mb
414
- vram_delta = weight_mb + round(impact.vram_delta_per_megapixel_mb * megapixels)
421
+ # The upscaler enlarges the image, so its activation peak scales with the *output* megapixels
422
+ # (factor**2 the generation megapixels); every other feature works at generation resolution.
423
+ activation_megapixels = megapixels
424
+ if kind == FEATURE_KIND.post_processing_upscale and post_processing_upscale_factor > 1.0:
425
+ activation_megapixels = megapixels * (post_processing_upscale_factor**2)
426
+ vram_delta = weight_mb + round(impact.vram_delta_per_megapixel_mb * activation_megapixels)
415
427
  if impact.phase == FEATURE_PHASE.post_processing:
416
428
  vram_post_processing_mb += vram_delta
417
429
  else:
@@ -93,6 +93,47 @@ def controlnet_annotator_download_bytes(control_types: Iterable[str | None]) ->
93
93
  return sum(CONTROLNET_ANNOTATOR_DOWNLOAD_BYTES.get(control_type, 0) for control_type in distinct)
94
94
 
95
95
 
96
+ # Horde upscaler name (KNOWN_UPSCALERS value) to its linear scale factor. The upscaler enlarges the
97
+ # generated image by this factor on each axis, so the post-processing activation peak scales with the
98
+ # *output* megapixels (factor**2 the generation megapixels), not the generation resolution. A 4x upscale
99
+ # of a 1 MP image produces a 16 MP tensor, which is the dominant VRAM cost of the post-processing phase
100
+ # (the model weights themselves are tens of MB). Used by the feature-impact estimate to size that peak.
101
+ UPSCALER_SCALE_FACTORS = {
102
+ "BACKEND_DEFAULT": 4, # the worker's default upscaler is a 4x ESRGAN; assume the larger factor
103
+ "RealESRGAN_x4plus": 4,
104
+ "RealESRGAN_x2plus": 2,
105
+ "RealESRGAN_x4plus_anime_6B": 4,
106
+ "NMKD_Siax": 4,
107
+ "4x_AnimeSharp": 4,
108
+ }
109
+ """Horde upscaler name to its linear (per-axis) scale factor (ROM)."""
110
+
111
+ _DEFAULT_UPSCALE_FACTOR = 4
112
+ """Assumed factor for an upscaler absent from the ROM: err high so the activation peak is not under-sized."""
113
+
114
+
115
+ def upscaler_scale_factor(name: str | None) -> int:
116
+ """Return the linear scale factor for upscaler *name*, or the conservative default when unknown.
117
+
118
+ ``None`` returns 1 (no upscaler, no enlargement). An unrecognised upscaler returns
119
+ :data:`_DEFAULT_UPSCALE_FACTOR` rather than 1, so a new upscaler the ROM has not learned yet
120
+ over-reserves rather than under-reserving the post-processing activation peak.
121
+ """
122
+ if name is None:
123
+ return 1
124
+ return UPSCALER_SCALE_FACTORS.get(name, _DEFAULT_UPSCALE_FACTOR)
125
+
126
+
127
+ def max_upscale_factor(names: Iterable[str | None]) -> int:
128
+ """Return the largest linear scale factor among *names*, or 1 when none enlarge the image.
129
+
130
+ A job may request several upscalers; the output size (and thus the activation peak) is driven by the
131
+ largest factor. ``None`` entries and an empty iterable contribute the no-op factor of 1.
132
+ """
133
+ factors = [upscaler_scale_factor(name) for name in names if name is not None]
134
+ return max(factors) if factors else 1
135
+
136
+
96
137
  SOURCE_IMAGE_PROCESSING_OPTIONS = ["img2img", "inpainting", "outpainting", "remix"]
97
138
 
98
139
  SCHEDULERS = ["normal", "karras", "simple", "ddim_uniform", "sgm_uniform", "exponential"]
File without changes
File without changes
File without changes