InvokeAI 5.10.0.dev2__tar.gz → 5.10.0.dev3__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 (668) hide show
  1. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/InvokeAI.egg-info/PKG-INFO +4 -22
  2. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/InvokeAI.egg-info/SOURCES.txt +4 -6
  3. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/InvokeAI.egg-info/requires.txt +3 -21
  4. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/PKG-INFO +4 -22
  5. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/api/routers/session_queue.py +12 -1
  6. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/api/routers/workflows.py +2 -0
  7. invokeai-5.10.0.dev3/invokeai/app/invocations/controlnet.py +128 -0
  8. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/denoise_latents.py +1 -1
  9. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/dw_openpose.py +6 -6
  10. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/metadata_linked.py +1 -1
  11. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/tiled_multi_diffusion_denoise_latents.py +1 -1
  12. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/model_records/model_records_sql.py +4 -1
  13. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/session_queue/session_queue_common.py +20 -0
  14. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/workflow_records/workflow_records_base.py +3 -0
  15. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/workflow_records/workflow_records_common.py +2 -0
  16. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/workflow_records/workflow_records_sqlite.py +3 -0
  17. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/util/startup_utils.py +0 -3
  18. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/dw_openpose/__init__.py +1 -105
  19. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/dw_openpose/utils.py +3 -2
  20. invokeai-5.10.0.dev3/invokeai/frontend/web/dist/assets/App-BxptzLdb.js +139 -0
  21. invokeai-5.10.0.dev2/invokeai/frontend/web/dist/assets/ThemeLocaleProvider-Bpzh-kaZ.js → invokeai-5.10.0.dev3/invokeai/frontend/web/dist/assets/ThemeLocaleProvider-BE0YQ6XM.js +1 -1
  22. invokeai-5.10.0.dev3/invokeai/frontend/web/dist/assets/index-kn6zcPGp.js +511 -0
  23. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/index.html +1 -1
  24. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/en.json +34 -1
  25. invokeai-5.10.0.dev3/invokeai/version/invokeai_version.py +1 -0
  26. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/pyproject.toml +11 -31
  27. invokeai-5.10.0.dev2/invokeai/app/invocations/controlnet_image_processors.py +0 -716
  28. invokeai-5.10.0.dev2/invokeai/backend/image_util/dw_openpose/wholebody.py +0 -44
  29. invokeai-5.10.0.dev2/invokeai/backend/util/mps_fixes.py +0 -245
  30. invokeai-5.10.0.dev2/invokeai/frontend/web/dist/assets/App-BRowKuQ_.js +0 -139
  31. invokeai-5.10.0.dev2/invokeai/frontend/web/dist/assets/index-DI5t0zMv.js +0 -511
  32. invokeai-5.10.0.dev2/invokeai/version/invokeai_version.py +0 -1
  33. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/InvokeAI.egg-info/dependency_links.txt +0 -0
  34. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/InvokeAI.egg-info/entry_points.txt +0 -0
  35. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/InvokeAI.egg-info/top_level.txt +0 -0
  36. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/LICENSE +0 -0
  37. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/LICENSE-SD1+SD2.txt +0 -0
  38. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/LICENSE-SDXL.txt +0 -0
  39. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/README.md +0 -0
  40. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/__init__.py +0 -0
  41. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/api/dependencies.py +0 -0
  42. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/api/extract_metadata_from_image.py +0 -0
  43. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/api/no_cache_staticfiles.py +0 -0
  44. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/api/routers/app_info.py +0 -0
  45. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/api/routers/board_images.py +0 -0
  46. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/api/routers/boards.py +0 -0
  47. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/api/routers/download_queue.py +0 -0
  48. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/api/routers/images.py +0 -0
  49. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/api/routers/model_manager.py +0 -0
  50. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/api/routers/style_presets.py +0 -0
  51. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/api/routers/utilities.py +0 -0
  52. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/api/sockets.py +0 -0
  53. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/api_app.py +0 -0
  54. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/assets/images/caution.png +0 -0
  55. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/__init__.py +0 -0
  56. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/baseinvocation.py +0 -0
  57. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/batch.py +0 -0
  58. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/blend_latents.py +0 -0
  59. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/canny.py +0 -0
  60. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/collections.py +0 -0
  61. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/color_map.py +0 -0
  62. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/compel.py +0 -0
  63. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/composition-nodes.py +0 -0
  64. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/constants.py +0 -0
  65. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/content_shuffle.py +0 -0
  66. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/create_denoise_mask.py +0 -0
  67. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/create_gradient_mask.py +0 -0
  68. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/crop_latents.py +0 -0
  69. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/custom_nodes/README.md +0 -0
  70. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/cv.py +0 -0
  71. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/depth_anything.py +0 -0
  72. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/facetools.py +0 -0
  73. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/fields.py +0 -0
  74. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/flux_control_lora_loader.py +0 -0
  75. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/flux_controlnet.py +0 -0
  76. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/flux_denoise.py +0 -0
  77. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/flux_fill.py +0 -0
  78. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/flux_ip_adapter.py +0 -0
  79. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/flux_lora_loader.py +0 -0
  80. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/flux_model_loader.py +0 -0
  81. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/flux_redux.py +0 -0
  82. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/flux_text_encoder.py +0 -0
  83. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/flux_vae_decode.py +0 -0
  84. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/flux_vae_encode.py +0 -0
  85. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/grounding_dino.py +0 -0
  86. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/hed.py +0 -0
  87. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/ideal_size.py +0 -0
  88. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/image.py +0 -0
  89. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/image_panels.py +0 -0
  90. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/image_to_latents.py +0 -0
  91. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/infill.py +0 -0
  92. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/ip_adapter.py +0 -0
  93. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/latents_to_image.py +0 -0
  94. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/lineart.py +0 -0
  95. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/lineart_anime.py +0 -0
  96. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/llava_onevision_vllm.py +0 -0
  97. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/load_custom_nodes.py +0 -0
  98. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/mask.py +0 -0
  99. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/math.py +0 -0
  100. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/mediapipe_face.py +0 -0
  101. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/metadata.py +0 -0
  102. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/mlsd.py +0 -0
  103. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/model.py +0 -0
  104. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/noise.py +0 -0
  105. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/normal_bae.py +0 -0
  106. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/param_easing.py +0 -0
  107. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/pidi.py +0 -0
  108. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/primitives.py +0 -0
  109. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/prompt.py +0 -0
  110. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/resize_latents.py +0 -0
  111. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/scheduler.py +0 -0
  112. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/sd3_denoise.py +0 -0
  113. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/sd3_image_to_latents.py +0 -0
  114. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/sd3_latents_to_image.py +0 -0
  115. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/sd3_model_loader.py +0 -0
  116. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/sd3_text_encoder.py +0 -0
  117. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/sdxl.py +0 -0
  118. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/segment_anything.py +0 -0
  119. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/spandrel_image_to_image.py +0 -0
  120. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/strings.py +0 -0
  121. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/t2i_adapter.py +0 -0
  122. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/tiles.py +0 -0
  123. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/upscale.py +0 -0
  124. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/invocations/util.py +0 -0
  125. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/run_app.py +0 -0
  126. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/__init__.py +0 -0
  127. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/board_image_records/__init__.py +0 -0
  128. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/board_image_records/board_image_records_base.py +0 -0
  129. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/board_image_records/board_image_records_sqlite.py +0 -0
  130. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/board_images/__init__.py +0 -0
  131. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/board_images/board_images_base.py +0 -0
  132. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/board_images/board_images_common.py +0 -0
  133. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/board_images/board_images_default.py +0 -0
  134. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/board_records/board_records_base.py +0 -0
  135. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/board_records/board_records_common.py +0 -0
  136. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/board_records/board_records_sqlite.py +0 -0
  137. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/boards/__init__.py +0 -0
  138. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/boards/boards_base.py +0 -0
  139. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/boards/boards_common.py +0 -0
  140. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/boards/boards_default.py +0 -0
  141. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/bulk_download/__init__.py +0 -0
  142. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/bulk_download/bulk_download_base.py +0 -0
  143. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/bulk_download/bulk_download_common.py +0 -0
  144. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/bulk_download/bulk_download_default.py +0 -0
  145. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/config/__init__.py +0 -0
  146. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/config/config_common.py +0 -0
  147. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/config/config_default.py +0 -0
  148. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/download/__init__.py +0 -0
  149. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/download/download_base.py +0 -0
  150. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/download/download_default.py +0 -0
  151. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/events/__init__.py +0 -0
  152. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/events/events_base.py +0 -0
  153. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/events/events_common.py +0 -0
  154. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/events/events_fastapievents.py +0 -0
  155. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/image_files/__init__.py +0 -0
  156. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/image_files/image_files_base.py +0 -0
  157. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/image_files/image_files_common.py +0 -0
  158. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/image_files/image_files_disk.py +0 -0
  159. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/image_records/__init__.py +0 -0
  160. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/image_records/image_records_base.py +0 -0
  161. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/image_records/image_records_common.py +0 -0
  162. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/image_records/image_records_sqlite.py +0 -0
  163. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/images/__init__.py +0 -0
  164. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/images/images_base.py +0 -0
  165. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/images/images_common.py +0 -0
  166. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/images/images_default.py +0 -0
  167. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/invocation_cache/__init__.py +0 -0
  168. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/invocation_cache/invocation_cache_base.py +0 -0
  169. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/invocation_cache/invocation_cache_common.py +0 -0
  170. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/invocation_cache/invocation_cache_memory.py +0 -0
  171. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/invocation_services.py +0 -0
  172. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/invocation_stats/__init__.py +0 -0
  173. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/invocation_stats/invocation_stats_base.py +0 -0
  174. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/invocation_stats/invocation_stats_common.py +0 -0
  175. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/invocation_stats/invocation_stats_default.py +0 -0
  176. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/invoker.py +0 -0
  177. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/item_storage/__init__.py +0 -0
  178. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/item_storage/item_storage_base.py +0 -0
  179. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/item_storage/item_storage_common.py +0 -0
  180. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/item_storage/item_storage_memory.py +0 -0
  181. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/model_images/model_images_base.py +0 -0
  182. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/model_images/model_images_common.py +0 -0
  183. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/model_images/model_images_default.py +0 -0
  184. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/model_install/__init__.py +0 -0
  185. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/model_install/model_install_base.py +0 -0
  186. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/model_install/model_install_common.py +0 -0
  187. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/model_install/model_install_default.py +0 -0
  188. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/model_load/__init__.py +0 -0
  189. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/model_load/model_load_base.py +0 -0
  190. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/model_load/model_load_default.py +0 -0
  191. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/model_manager/__init__.py +0 -0
  192. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/model_manager/model_manager_base.py +0 -0
  193. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/model_manager/model_manager_common.py +0 -0
  194. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/model_manager/model_manager_default.py +0 -0
  195. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/model_records/__init__.py +0 -0
  196. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/model_records/model_records_base.py +0 -0
  197. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/names/__init__.py +0 -0
  198. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/names/names_base.py +0 -0
  199. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/names/names_common.py +0 -0
  200. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/names/names_default.py +0 -0
  201. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/object_serializer/object_serializer_base.py +0 -0
  202. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/object_serializer/object_serializer_common.py +0 -0
  203. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/object_serializer/object_serializer_disk.py +0 -0
  204. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/object_serializer/object_serializer_forward_cache.py +0 -0
  205. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/session_processor/__init__.py +0 -0
  206. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/session_processor/session_processor_base.py +0 -0
  207. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/session_processor/session_processor_common.py +0 -0
  208. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/session_processor/session_processor_default.py +0 -0
  209. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/session_queue/__init__.py +0 -0
  210. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/session_queue/session_queue_base.py +0 -0
  211. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/session_queue/session_queue_sqlite.py +0 -0
  212. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/__init__.py +0 -0
  213. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/graph.py +0 -0
  214. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/invocation_context.py +0 -0
  215. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/pagination.py +0 -0
  216. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite/__init__.py +0 -0
  217. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite/sqlite_common.py +0 -0
  218. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite/sqlite_database.py +0 -0
  219. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite/sqlite_util.py +0 -0
  220. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite_migrator/__init__.py +0 -0
  221. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite_migrator/migrations/__init__.py +0 -0
  222. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_1.py +0 -0
  223. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_10.py +0 -0
  224. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_11.py +0 -0
  225. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_12.py +0 -0
  226. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_13.py +0 -0
  227. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_14.py +0 -0
  228. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_15.py +0 -0
  229. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_16.py +0 -0
  230. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_17.py +0 -0
  231. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_18.py +0 -0
  232. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_2.py +0 -0
  233. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_3.py +0 -0
  234. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_4.py +0 -0
  235. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_5.py +0 -0
  236. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_6.py +0 -0
  237. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_7.py +0 -0
  238. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_8.py +0 -0
  239. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_9.py +0 -0
  240. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite_migrator/sqlite_migrator_common.py +0 -0
  241. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/shared/sqlite_migrator/sqlite_migrator_impl.py +0 -0
  242. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_images/default_style_preset_images/Anime.png +0 -0
  243. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_images/default_style_preset_images/Architectural Visualization.png +0 -0
  244. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_images/default_style_preset_images/Concept Art (Character).png +0 -0
  245. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_images/default_style_preset_images/Concept Art (Fantasy).png +0 -0
  246. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_images/default_style_preset_images/Concept Art (Painterly).png +0 -0
  247. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_images/default_style_preset_images/Concept Art (Sci-Fi).png +0 -0
  248. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_images/default_style_preset_images/Environment Art.png +0 -0
  249. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_images/default_style_preset_images/Illustration.png +0 -0
  250. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_images/default_style_preset_images/Interior Design (Visualization).png +0 -0
  251. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_images/default_style_preset_images/Line Art.png +0 -0
  252. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_images/default_style_preset_images/Photography (Black and White).png +0 -0
  253. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_images/default_style_preset_images/Photography (General).png +0 -0
  254. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_images/default_style_preset_images/Photography (Landscape).png +0 -0
  255. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_images/default_style_preset_images/Photography (Portrait).png +0 -0
  256. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_images/default_style_preset_images/Photography (Studio Lighting).png +0 -0
  257. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_images/default_style_preset_images/Product Rendering.png +0 -0
  258. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_images/default_style_preset_images/Sketch.png +0 -0
  259. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_images/default_style_preset_images/Vehicles.png +0 -0
  260. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_images/default_style_preset_images/__init__.py +0 -0
  261. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_images/style_preset_images_base.py +0 -0
  262. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_images/style_preset_images_common.py +0 -0
  263. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_images/style_preset_images_disk.py +0 -0
  264. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_records/__init__.py +0 -0
  265. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_records/default_style_presets.json +0 -0
  266. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_records/style_preset_records_base.py +0 -0
  267. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_records/style_preset_records_common.py +0 -0
  268. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/style_preset_records/style_preset_records_sqlite.py +0 -0
  269. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/urls/__init__.py +0 -0
  270. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/urls/urls_base.py +0 -0
  271. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/urls/urls_default.py +0 -0
  272. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/workflow_records/__init__.py +0 -0
  273. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/workflow_records/default_workflows/ESRGAN Upscaling with Canny ControlNet.json +0 -0
  274. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/workflow_records/default_workflows/FLUX Image to Image.json +0 -0
  275. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/workflow_records/default_workflows/Face Detailer with IP-Adapter & Canny (See Note in Details).json +0 -0
  276. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/workflow_records/default_workflows/Flux Text to Image.json +0 -0
  277. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/workflow_records/default_workflows/Multi ControlNet (Canny & Depth).json +0 -0
  278. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/workflow_records/default_workflows/MultiDiffusion SD1.5.json +0 -0
  279. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/workflow_records/default_workflows/MultiDiffusion SDXL.json +0 -0
  280. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/workflow_records/default_workflows/Prompt from File.json +0 -0
  281. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/workflow_records/default_workflows/SD3.5 Text to Image.json +0 -0
  282. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/workflow_records/default_workflows/Text to Image - SD1.5.json +0 -0
  283. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/workflow_records/default_workflows/Text to Image - SDXL.json +0 -0
  284. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/workflow_records/default_workflows/Text to Image with LoRA.json +0 -0
  285. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/workflow_records/default_workflows/Tiled Upscaling (Beta).json +0 -0
  286. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/workflow_thumbnails/workflow_thumbnails_base.py +0 -0
  287. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/workflow_thumbnails/workflow_thumbnails_common.py +0 -0
  288. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/services/workflow_thumbnails/workflow_thumbnails_disk.py +0 -0
  289. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/shared/__init__.py +0 -0
  290. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/shared/models.py +0 -0
  291. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/util/__init__.py +0 -0
  292. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/util/controlnet_utils.py +0 -0
  293. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/util/custom_openapi.py +0 -0
  294. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/util/metaenum.py +0 -0
  295. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/util/misc.py +0 -0
  296. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/util/model_exclude_null.py +0 -0
  297. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/util/profiler.py +0 -0
  298. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/util/step_callback.py +0 -0
  299. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/util/suppress_output.py +0 -0
  300. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/util/t5_model_identifier.py +0 -0
  301. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/util/thumbnails.py +0 -0
  302. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/util/ti_utils.py +0 -0
  303. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/app/util/torch_cuda_allocator.py +0 -0
  304. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/assets/fonts/inter/Inter-Regular.ttf +0 -0
  305. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/__init__.py +0 -0
  306. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/controlnet/__init__.py +0 -0
  307. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/controlnet/controlnet_flux_output.py +0 -0
  308. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/controlnet/instantx_controlnet_flux.py +0 -0
  309. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/controlnet/state_dict_utils.py +0 -0
  310. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/controlnet/xlabs_controlnet_flux.py +0 -0
  311. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/controlnet/zero_module.py +0 -0
  312. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/custom_block_processor.py +0 -0
  313. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/denoise.py +0 -0
  314. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/extensions/__init__.py +0 -0
  315. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/extensions/base_controlnet_extension.py +0 -0
  316. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/extensions/inpaint_extension.py +0 -0
  317. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/extensions/instantx_controlnet_extension.py +0 -0
  318. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/extensions/regional_prompting_extension.py +0 -0
  319. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/extensions/xlabs_controlnet_extension.py +0 -0
  320. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/extensions/xlabs_ip_adapter_extension.py +0 -0
  321. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/flux_state_dict_utils.py +0 -0
  322. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/ip_adapter/__init__.py +0 -0
  323. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/ip_adapter/ip_double_stream_block_processor.py +0 -0
  324. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/ip_adapter/state_dict_utils.py +0 -0
  325. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/ip_adapter/xlabs_ip_adapter_flux.py +0 -0
  326. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/math.py +0 -0
  327. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/model.py +0 -0
  328. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/modules/autoencoder.py +0 -0
  329. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/modules/conditioner.py +0 -0
  330. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/modules/layers.py +0 -0
  331. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/redux/flux_redux_model.py +0 -0
  332. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/redux/flux_redux_state_dict_utils.py +0 -0
  333. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/sampling_utils.py +0 -0
  334. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/text_conditioning.py +0 -0
  335. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/flux/util.py +0 -0
  336. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/__init__.py +0 -0
  337. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/assets/CIELab_to_UPLab.icc +0 -0
  338. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/basicsr/__init__.py +0 -0
  339. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/basicsr/arch_util.py +0 -0
  340. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/basicsr/rrdbnet_arch.py +0 -0
  341. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/canny.py +0 -0
  342. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/composition.py +0 -0
  343. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/content_shuffle.py +0 -0
  344. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/depth_anything/depth_anything_pipeline.py +0 -0
  345. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/dw_openpose/onnxdet.py +0 -0
  346. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/dw_openpose/onnxpose.py +0 -0
  347. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/grounding_dino/__init__.py +0 -0
  348. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/grounding_dino/detection_result.py +0 -0
  349. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/grounding_dino/grounding_dino_pipeline.py +0 -0
  350. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/hed.py +0 -0
  351. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/infill_methods/cv2_inpaint.py +0 -0
  352. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/infill_methods/lama.py +0 -0
  353. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/infill_methods/mosaic.py +0 -0
  354. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/infill_methods/patchmatch.py +0 -0
  355. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/infill_methods/tile.py +0 -0
  356. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/invisible_watermark.py +0 -0
  357. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/lineart.py +0 -0
  358. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/lineart_anime.py +0 -0
  359. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/mediapipe_face/__init__.py +0 -0
  360. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/mediapipe_face/mediapipe_face_common.py +0 -0
  361. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/mlsd/__init__.py +0 -0
  362. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/mlsd/models/__init__.py +0 -0
  363. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/mlsd/models/mbv2_mlsd_large.py +0 -0
  364. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/mlsd/models/mbv2_mlsd_tiny.py +0 -0
  365. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/mlsd/utils.py +0 -0
  366. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/__init__.py +0 -0
  367. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/NNET.py +0 -0
  368. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/__init__.py +0 -0
  369. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/baseline.py +0 -0
  370. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/__init__.py +0 -0
  371. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/decoder.py +0 -0
  372. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/__init__.py +0 -0
  373. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/caffe2_benchmark.py +0 -0
  374. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/caffe2_validate.py +0 -0
  375. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/__init__.py +0 -0
  376. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/activations/__init__.py +0 -0
  377. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/activations/activations.py +0 -0
  378. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/activations/activations_jit.py +0 -0
  379. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/activations/activations_me.py +0 -0
  380. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/config.py +0 -0
  381. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/conv2d_layers.py +0 -0
  382. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/efficientnet_builder.py +0 -0
  383. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/gen_efficientnet.py +0 -0
  384. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/helpers.py +0 -0
  385. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/mobilenetv3.py +0 -0
  386. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/model_factory.py +0 -0
  387. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/geffnet/version.py +0 -0
  388. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/hubconf.py +0 -0
  389. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/onnx_export.py +0 -0
  390. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/onnx_optimize.py +0 -0
  391. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/onnx_to_caffe.py +0 -0
  392. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/onnx_validate.py +0 -0
  393. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/setup.py +0 -0
  394. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/utils.py +0 -0
  395. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/efficientnet_repo/validate.py +0 -0
  396. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/encoder.py +0 -0
  397. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/normal_bae/nets/submodules/submodules.py +0 -0
  398. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/pidi/__init__.py +0 -0
  399. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/pidi/model.py +0 -0
  400. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/pngwriter.py +0 -0
  401. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/realesrgan/__init__.py +0 -0
  402. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/realesrgan/realesrgan.py +0 -0
  403. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/safety_checker.py +0 -0
  404. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/segment_anything/__init__.py +0 -0
  405. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/segment_anything/mask_refinement.py +0 -0
  406. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/segment_anything/segment_anything_pipeline.py +0 -0
  407. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/image_util/util.py +0 -0
  408. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/ip_adapter/__init__.py +0 -0
  409. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/ip_adapter/ip_adapter.py +0 -0
  410. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/ip_adapter/ip_attention_weights.py +0 -0
  411. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/ip_adapter/resampler.py +0 -0
  412. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/llava_onevision_model.py +0 -0
  413. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_hash/hash_validator.py +0 -0
  414. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_hash/model_hash.py +0 -0
  415. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/__init__.py +0 -0
  416. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/config.py +0 -0
  417. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/legacy_probe.py +0 -0
  418. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/__init__.py +0 -0
  419. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/load_base.py +0 -0
  420. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/load_default.py +0 -0
  421. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/memory_snapshot.py +0 -0
  422. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_cache/__init__.py +0 -0
  423. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_cache/cache_record.py +0 -0
  424. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_cache/cache_stats.py +0 -0
  425. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_cache/cached_model/cached_model_only_full_load.py +0 -0
  426. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_cache/cached_model/cached_model_with_partial_load.py +0 -0
  427. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_cache/dev_utils.py +0 -0
  428. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_cache/model_cache.py +0 -0
  429. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/__init__.py +0 -0
  430. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/cast_to_device.py +0 -0
  431. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/custom_modules/__init__.py +0 -0
  432. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/custom_modules/custom_conv1d.py +0 -0
  433. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/custom_modules/custom_conv2d.py +0 -0
  434. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/custom_modules/custom_embedding.py +0 -0
  435. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/custom_modules/custom_flux_rms_norm.py +0 -0
  436. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/custom_modules/custom_group_norm.py +0 -0
  437. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/custom_modules/custom_invoke_linear_8_bit_lt.py +0 -0
  438. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/custom_modules/custom_invoke_linear_nf4.py +0 -0
  439. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/custom_modules/custom_linear.py +0 -0
  440. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/custom_modules/custom_module_mixin.py +0 -0
  441. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/custom_modules/utils.py +0 -0
  442. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_cache/torch_module_autocast/torch_module_autocast.py +0 -0
  443. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_cache/utils.py +0 -0
  444. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_loader_registry.py +0 -0
  445. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_loaders/__init__.py +0 -0
  446. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_loaders/clip_vision.py +0 -0
  447. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_loaders/controlnet.py +0 -0
  448. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_loaders/flux.py +0 -0
  449. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_loaders/generic_diffusers.py +0 -0
  450. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_loaders/ip_adapter.py +0 -0
  451. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_loaders/llava_onevision.py +0 -0
  452. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_loaders/lora.py +0 -0
  453. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_loaders/onnx.py +0 -0
  454. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_loaders/sig_lip_pipeline.py +0 -0
  455. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_loaders/spandrel_image_to_image.py +0 -0
  456. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_loaders/stable_diffusion.py +0 -0
  457. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_loaders/textual_inversion.py +0 -0
  458. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_loaders/vae.py +0 -0
  459. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/model_util.py +0 -0
  460. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/load/optimizations.py +0 -0
  461. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/merge.py +0 -0
  462. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/metadata/__init__.py +0 -0
  463. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/metadata/fetch/__init__.py +0 -0
  464. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/metadata/fetch/fetch_base.py +0 -0
  465. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/metadata/fetch/huggingface.py +0 -0
  466. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/metadata/metadata_base.py +0 -0
  467. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/model_on_disk.py +0 -0
  468. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/search.py +0 -0
  469. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/starter_models.py +0 -0
  470. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/taxonomy.py +0 -0
  471. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/util/libc_util.py +0 -0
  472. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/util/model_util.py +0 -0
  473. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_manager/util/select_hf_files.py +0 -0
  474. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/model_patcher.py +0 -0
  475. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/onnx/onnx_runtime.py +0 -0
  476. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/__init__.py +0 -0
  477. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/layer_patcher.py +0 -0
  478. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/layers/__init__.py +0 -0
  479. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/layers/base_layer_patch.py +0 -0
  480. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/layers/dora_layer.py +0 -0
  481. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/layers/flux_control_lora_layer.py +0 -0
  482. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/layers/full_layer.py +0 -0
  483. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/layers/ia3_layer.py +0 -0
  484. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/layers/loha_layer.py +0 -0
  485. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/layers/lokr_layer.py +0 -0
  486. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/layers/lora_layer.py +0 -0
  487. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/layers/lora_layer_base.py +0 -0
  488. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/layers/merged_layer_patch.py +0 -0
  489. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/layers/norm_layer.py +0 -0
  490. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/layers/param_shape_utils.py +0 -0
  491. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/layers/set_parameter_layer.py +0 -0
  492. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/layers/utils.py +0 -0
  493. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/lora_conversions/__init__.py +0 -0
  494. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/lora_conversions/flux_control_lora_utils.py +0 -0
  495. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/lora_conversions/flux_diffusers_lora_conversion_utils.py +0 -0
  496. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/lora_conversions/flux_kohya_lora_conversion_utils.py +0 -0
  497. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/lora_conversions/flux_lora_constants.py +0 -0
  498. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/lora_conversions/flux_onetrainer_lora_conversion_utils.py +0 -0
  499. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/lora_conversions/formats.py +0 -0
  500. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/lora_conversions/kohya_key_utils.py +0 -0
  501. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/lora_conversions/sd_lora_conversion_utils.py +0 -0
  502. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/lora_conversions/sdxl_lora_conversion_utils.py +0 -0
  503. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/model_patch_raw.py +0 -0
  504. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/patches/pad_with_zeros.py +0 -0
  505. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/quantization/__init__.py +0 -0
  506. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/quantization/bnb_llm_int8.py +0 -0
  507. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/quantization/bnb_nf4.py +0 -0
  508. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/quantization/gguf/ggml_tensor.py +0 -0
  509. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/quantization/gguf/loaders.py +0 -0
  510. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/quantization/gguf/utils.py +0 -0
  511. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/quantization/scripts/load_flux_model_bnb_llm_int8.py +0 -0
  512. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/quantization/scripts/load_flux_model_bnb_nf4.py +0 -0
  513. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/quantization/scripts/quantize_t5_xxl_bnb_llm_int8.py +0 -0
  514. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/raw_model.py +0 -0
  515. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/sd3/__init__.py +0 -0
  516. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/sd3/extensions/__init__.py +0 -0
  517. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/sd3/extensions/inpaint_extension.py +0 -0
  518. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/sig_lip/sig_lip_pipeline.py +0 -0
  519. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/spandrel_image_to_image_model.py +0 -0
  520. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/__init__.py +0 -0
  521. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/denoise_context.py +0 -0
  522. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/diffusers_pipeline.py +0 -0
  523. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/diffusion/__init__.py +0 -0
  524. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/diffusion/conditioning_data.py +0 -0
  525. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/diffusion/custom_atttention.py +0 -0
  526. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/diffusion/regional_ip_data.py +0 -0
  527. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/diffusion/regional_prompt_data.py +0 -0
  528. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/diffusion/shared_invokeai_diffusion.py +0 -0
  529. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/diffusion/unet_attention_patcher.py +0 -0
  530. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/diffusion_backend.py +0 -0
  531. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/extension_callback_type.py +0 -0
  532. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/extensions/base.py +0 -0
  533. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/extensions/controlnet.py +0 -0
  534. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/extensions/freeu.py +0 -0
  535. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/extensions/inpaint.py +0 -0
  536. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/extensions/inpaint_model.py +0 -0
  537. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/extensions/lora.py +0 -0
  538. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/extensions/preview.py +0 -0
  539. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/extensions/rescale_cfg.py +0 -0
  540. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/extensions/seamless.py +0 -0
  541. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/extensions/t2i_adapter.py +0 -0
  542. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/extensions_manager.py +0 -0
  543. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/multi_diffusion_pipeline.py +0 -0
  544. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/schedulers/__init__.py +0 -0
  545. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/schedulers/schedulers.py +0 -0
  546. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/stable_diffusion/vae_tiling.py +0 -0
  547. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/textual_inversion.py +0 -0
  548. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/tiles/__init__.py +0 -0
  549. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/tiles/tiles.py +0 -0
  550. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/tiles/utils.py +0 -0
  551. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/util/__init__.py +0 -0
  552. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/util/attention.py +0 -0
  553. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/util/build_line.py +0 -0
  554. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/util/calc_tensor_size.py +0 -0
  555. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/util/catch_sigint.py +0 -0
  556. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/util/db_maintenance.py +0 -0
  557. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/util/devices.py +0 -0
  558. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/util/hotfixes.py +0 -0
  559. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/util/logging.py +0 -0
  560. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/util/mask.py +0 -0
  561. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/util/original_weights_storage.py +0 -0
  562. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/util/prefix_logger_adapter.py +0 -0
  563. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/util/silence_warnings.py +0 -0
  564. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/util/test_utils.py +0 -0
  565. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/backend/util/util.py +0 -0
  566. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/configs/controlnet/cldm_v15.yaml +0 -0
  567. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/configs/controlnet/cldm_v21.yaml +0 -0
  568. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/configs/stable-diffusion/sd_xl_base.yaml +0 -0
  569. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/configs/stable-diffusion/sd_xl_inpaint.yaml +0 -0
  570. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/configs/stable-diffusion/sd_xl_refiner.yaml +0 -0
  571. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/configs/stable-diffusion/v1-finetune.yaml +0 -0
  572. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/configs/stable-diffusion/v1-finetune_style.yaml +0 -0
  573. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/configs/stable-diffusion/v1-inference-v.yaml +0 -0
  574. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/configs/stable-diffusion/v1-inference.yaml +0 -0
  575. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/configs/stable-diffusion/v1-inpainting-inference.yaml +0 -0
  576. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/configs/stable-diffusion/v1-m1-finetune.yaml +0 -0
  577. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/configs/stable-diffusion/v2-inference-v.yaml +0 -0
  578. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/configs/stable-diffusion/v2-inference.yaml +0 -0
  579. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/configs/stable-diffusion/v2-inpainting-inference-v.yaml +0 -0
  580. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/configs/stable-diffusion/v2-inpainting-inference.yaml +0 -0
  581. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/configs/stable-diffusion/v2-midas-inference.yaml +0 -0
  582. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/__init__.py +0 -0
  583. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/cli/__init__.py +0 -0
  584. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/cli/arg_parser.py +0 -0
  585. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/install/__init__.py +0 -0
  586. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/install/import_images.py +0 -0
  587. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/__init__.py +0 -0
  588. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/ThemeLocaleProvider-DMkJ1hTD.css +0 -0
  589. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/commercial-license-bg-C_dHp7on.png +0 -0
  590. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/denoising-strength-4mznP2tj.png +0 -0
  591. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/images/commercial-license-bg.png +0 -0
  592. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/images/denoising-strength.png +0 -0
  593. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/images/invoke-alert-favicon.svg +0 -0
  594. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/images/invoke-avatar-circle.svg +0 -0
  595. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/images/invoke-avatar-square.svg +0 -0
  596. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/images/invoke-favicon.png +0 -0
  597. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/images/invoke-favicon.svg +0 -0
  598. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/images/invoke-key-char-lrg.svg +0 -0
  599. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/images/invoke-key-char-sml.svg +0 -0
  600. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/images/invoke-key-wht-lrg.svg +0 -0
  601. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/images/invoke-key-wht-sml.svg +0 -0
  602. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/images/invoke-symbol-char-lrg.svg +0 -0
  603. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/images/invoke-symbol-char-sml.svg +0 -0
  604. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/images/invoke-symbol-wht-lrg.svg +0 -0
  605. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/images/invoke-symbol-wht-sml.svg +0 -0
  606. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/images/invoke-symbol-ylw-lrg.svg +0 -0
  607. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/images/invoke-tag-char-lrg.svg +0 -0
  608. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/images/invoke-tag-char-sml.svg +0 -0
  609. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/images/invoke-tag-lrg.svg +0 -0
  610. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/images/invoke-tag-sml.svg +0 -0
  611. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/images/invoke-wordmark-charcoal.svg +0 -0
  612. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/images/invoke-wordmark-white.svg +0 -0
  613. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/images/mask.svg +0 -0
  614. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/inter-cyrillic-ext-wght-normal-B2xhLi22.woff2 +0 -0
  615. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/inter-cyrillic-wght-normal-CMZtQduZ.woff2 +0 -0
  616. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/inter-greek-ext-wght-normal-CGAr0uHJ.woff2 +0 -0
  617. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/inter-greek-wght-normal-CaVNZxsx.woff2 +0 -0
  618. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/inter-latin-ext-wght-normal-CFHvXkgd.woff2 +0 -0
  619. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/inter-latin-wght-normal-C2S99t-D.woff2 +0 -0
  620. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2 +0 -0
  621. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/assets/worker-Dywf1EVc.js +0 -0
  622. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/ar.json +0 -0
  623. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/az.json +0 -0
  624. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/bg.json +0 -0
  625. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/de.json +0 -0
  626. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/es.json +0 -0
  627. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/fi.json +0 -0
  628. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/fr.json +0 -0
  629. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/he.json +0 -0
  630. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/hu.json +0 -0
  631. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/it.json +0 -0
  632. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/ja.json +0 -0
  633. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/ko.json +0 -0
  634. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/mn.json +0 -0
  635. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/nl.json +0 -0
  636. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/pl.json +0 -0
  637. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/pt.json +0 -0
  638. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/pt_BR.json +0 -0
  639. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/ro.json +0 -0
  640. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/ru.json +0 -0
  641. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/sv.json +0 -0
  642. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/tr.json +0 -0
  643. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/uk.json +0 -0
  644. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/vi.json +0 -0
  645. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/zh_CN.json +0 -0
  646. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/dist/locales/zh_Hant.json +0 -0
  647. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/scripts/clean_translations.py +0 -0
  648. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/frontend/web/static/docs/invoke-favicon-docs.svg +0 -0
  649. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/invocation_api/__init__.py +0 -0
  650. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/invokeai/version/__init__.py +0 -0
  651. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/setup.cfg +0 -0
  652. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/tests/test_config.py +0 -0
  653. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/tests/test_dangerously_run_function_in_subprocess.py +0 -0
  654. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/tests/test_docs.py +0 -0
  655. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/tests/test_graph_execution_state.py +0 -0
  656. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/tests/test_imports.py +0 -0
  657. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/tests/test_invocation_cache_memory.py +0 -0
  658. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/tests/test_item_storage_memory.py +0 -0
  659. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/tests/test_model_hash.py +0 -0
  660. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/tests/test_model_probe.py +0 -0
  661. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/tests/test_model_search.py +0 -0
  662. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/tests/test_node_graph.py +0 -0
  663. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/tests/test_nodes.py +0 -0
  664. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/tests/test_object_serializer_disk.py +0 -0
  665. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/tests/test_path.py +0 -0
  666. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/tests/test_profiler.py +0 -0
  667. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/tests/test_session_queue.py +0 -0
  668. {invokeai-5.10.0.dev2 → invokeai-5.10.0.dev3}/tests/test_sqlite_migrator.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: InvokeAI
3
- Version: 5.10.0.dev2
3
+ Version: 5.10.0.dev3
4
4
  Summary: An implementation of Stable Diffusion which provides various new features and options to aid the image generation process
5
5
  Author-email: The InvokeAI Project <lincoln.stein@gmail.com>
6
6
  License: Apache License
@@ -211,27 +211,20 @@ License-File: LICENSE-SD1+SD2.txt
211
211
  License-File: LICENSE-SDXL.txt
212
212
  Requires-Dist: accelerate
213
213
  Requires-Dist: bitsandbytes; sys_platform != "darwin"
214
- Requires-Dist: clip_anytorch==2.6.0
215
214
  Requires-Dist: compel==2.0.2
216
- Requires-Dist: controlnet-aux==0.0.7
217
215
  Requires-Dist: diffusers[torch]
218
- Requires-Dist: gguf==0.10.0
216
+ Requires-Dist: gguf
219
217
  Requires-Dist: invisible-watermark==0.2.0
220
218
  Requires-Dist: mediapipe==0.10.14
221
219
  Requires-Dist: numpy<2.0.0
222
220
  Requires-Dist: onnx==1.16.1
223
221
  Requires-Dist: onnxruntime==1.19.2
224
222
  Requires-Dist: opencv-python==4.9.0.80
225
- Requires-Dist: pytorch-lightning
226
223
  Requires-Dist: safetensors
227
- Requires-Dist: sentencepiece==0.2.0
228
- Requires-Dist: spandrel==0.3.4
229
- Requires-Dist: timm~=1.0.0
224
+ Requires-Dist: spandrel
230
225
  Requires-Dist: torch~=2.6.0
231
- Requires-Dist: torchmetrics
232
226
  Requires-Dist: torchsde
233
227
  Requires-Dist: torchvision
234
- Requires-Dist: timm~=1.0.0
235
228
  Requires-Dist: transformers
236
229
  Requires-Dist: fastapi-events
237
230
  Requires-Dist: fastapi
@@ -240,30 +233,18 @@ Requires-Dist: pydantic-settings
240
233
  Requires-Dist: pydantic
241
234
  Requires-Dist: python-socketio
242
235
  Requires-Dist: uvicorn[standard]
243
- Requires-Dist: albumentations
244
236
  Requires-Dist: blake3
245
- Requires-Dist: click
246
- Requires-Dist: datasets
247
237
  Requires-Dist: Deprecated
248
238
  Requires-Dist: dnspython
249
239
  Requires-Dist: dynamicprompts
250
240
  Requires-Dist: einops
251
- Requires-Dist: facexlib
252
- Requires-Dist: matplotlib!=3.9.1
253
- Requires-Dist: npyscreen
254
- Requires-Dist: omegaconf
255
241
  Requires-Dist: picklescan
256
242
  Requires-Dist: pillow
257
243
  Requires-Dist: prompt-toolkit
258
- Requires-Dist: pympler
259
244
  Requires-Dist: pypatchmatch
260
- Requires-Dist: pyperclip
261
- Requires-Dist: pyreadline3
262
245
  Requires-Dist: python-multipart
263
246
  Requires-Dist: requests
264
- Requires-Dist: scikit-image
265
247
  Requires-Dist: semver~=3.0.1
266
- Requires-Dist: humanize==4.12.1
267
248
  Provides-Extra: xformers
268
249
  Requires-Dist: xformers>=0.0.28.post1; sys_platform != "darwin" and extra == "xformers"
269
250
  Provides-Extra: onnx
@@ -298,6 +279,7 @@ Requires-Dist: pytest-datadir; extra == "test"
298
279
  Requires-Dist: requests_testadapter; extra == "test"
299
280
  Requires-Dist: httpx; extra == "test"
300
281
  Requires-Dist: polyfactory==2.19.0; extra == "test"
282
+ Requires-Dist: humanize==4.12.1; extra == "test"
301
283
  Dynamic: license-file
302
284
 
303
285
  <div align="center">
@@ -38,7 +38,7 @@ invokeai/app/invocations/compel.py
38
38
  invokeai/app/invocations/composition-nodes.py
39
39
  invokeai/app/invocations/constants.py
40
40
  invokeai/app/invocations/content_shuffle.py
41
- invokeai/app/invocations/controlnet_image_processors.py
41
+ invokeai/app/invocations/controlnet.py
42
42
  invokeai/app/invocations/create_denoise_mask.py
43
43
  invokeai/app/invocations/create_gradient_mask.py
44
44
  invokeai/app/invocations/crop_latents.py
@@ -343,7 +343,6 @@ invokeai/backend/image_util/dw_openpose/__init__.py
343
343
  invokeai/backend/image_util/dw_openpose/onnxdet.py
344
344
  invokeai/backend/image_util/dw_openpose/onnxpose.py
345
345
  invokeai/backend/image_util/dw_openpose/utils.py
346
- invokeai/backend/image_util/dw_openpose/wholebody.py
347
346
  invokeai/backend/image_util/grounding_dino/__init__.py
348
347
  invokeai/backend/image_util/grounding_dino/detection_result.py
349
348
  invokeai/backend/image_util/grounding_dino/grounding_dino_pipeline.py
@@ -546,7 +545,6 @@ invokeai/backend/util/devices.py
546
545
  invokeai/backend/util/hotfixes.py
547
546
  invokeai/backend/util/logging.py
548
547
  invokeai/backend/util/mask.py
549
- invokeai/backend/util/mps_fixes.py
550
548
  invokeai/backend/util/original_weights_storage.py
551
549
  invokeai/backend/util/prefix_logger_adapter.py
552
550
  invokeai/backend/util/silence_warnings.py
@@ -575,12 +573,12 @@ invokeai/frontend/install/__init__.py
575
573
  invokeai/frontend/install/import_images.py
576
574
  invokeai/frontend/web/__init__.py
577
575
  invokeai/frontend/web/dist/index.html
578
- invokeai/frontend/web/dist/assets/App-BRowKuQ_.js
579
- invokeai/frontend/web/dist/assets/ThemeLocaleProvider-Bpzh-kaZ.js
576
+ invokeai/frontend/web/dist/assets/App-BxptzLdb.js
577
+ invokeai/frontend/web/dist/assets/ThemeLocaleProvider-BE0YQ6XM.js
580
578
  invokeai/frontend/web/dist/assets/ThemeLocaleProvider-DMkJ1hTD.css
581
579
  invokeai/frontend/web/dist/assets/commercial-license-bg-C_dHp7on.png
582
580
  invokeai/frontend/web/dist/assets/denoising-strength-4mznP2tj.png
583
- invokeai/frontend/web/dist/assets/index-DI5t0zMv.js
581
+ invokeai/frontend/web/dist/assets/index-kn6zcPGp.js
584
582
  invokeai/frontend/web/dist/assets/inter-cyrillic-ext-wght-normal-B2xhLi22.woff2
585
583
  invokeai/frontend/web/dist/assets/inter-cyrillic-wght-normal-CMZtQduZ.woff2
586
584
  invokeai/frontend/web/dist/assets/inter-greek-ext-wght-normal-CGAr0uHJ.woff2
@@ -1,25 +1,18 @@
1
1
  accelerate
2
- clip_anytorch==2.6.0
3
2
  compel==2.0.2
4
- controlnet-aux==0.0.7
5
3
  diffusers[torch]
6
- gguf==0.10.0
4
+ gguf
7
5
  invisible-watermark==0.2.0
8
6
  mediapipe==0.10.14
9
7
  numpy<2.0.0
10
8
  onnx==1.16.1
11
9
  onnxruntime==1.19.2
12
10
  opencv-python==4.9.0.80
13
- pytorch-lightning
14
11
  safetensors
15
- sentencepiece==0.2.0
16
- spandrel==0.3.4
17
- timm~=1.0.0
12
+ spandrel
18
13
  torch~=2.6.0
19
- torchmetrics
20
14
  torchsde
21
15
  torchvision
22
- timm~=1.0.0
23
16
  transformers
24
17
  fastapi-events
25
18
  fastapi
@@ -28,30 +21,18 @@ pydantic-settings
28
21
  pydantic
29
22
  python-socketio
30
23
  uvicorn[standard]
31
- albumentations
32
24
  blake3
33
- click
34
- datasets
35
25
  Deprecated
36
26
  dnspython
37
27
  dynamicprompts
38
28
  einops
39
- facexlib
40
- matplotlib!=3.9.1
41
- npyscreen
42
- omegaconf
43
29
  picklescan
44
30
  pillow
45
31
  prompt-toolkit
46
- pympler
47
32
  pypatchmatch
48
- pyperclip
49
- pyreadline3
50
33
  python-multipart
51
34
  requests
52
- scikit-image
53
35
  semver~=3.0.1
54
- humanize==4.12.1
55
36
 
56
37
  [:sys_platform != "darwin"]
57
38
  bitsandbytes
@@ -94,6 +75,7 @@ pytest-datadir
94
75
  requests_testadapter
95
76
  httpx
96
77
  polyfactory==2.19.0
78
+ humanize==4.12.1
97
79
 
98
80
  [xformers]
99
81
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: InvokeAI
3
- Version: 5.10.0.dev2
3
+ Version: 5.10.0.dev3
4
4
  Summary: An implementation of Stable Diffusion which provides various new features and options to aid the image generation process
5
5
  Author-email: The InvokeAI Project <lincoln.stein@gmail.com>
6
6
  License: Apache License
@@ -211,27 +211,20 @@ License-File: LICENSE-SD1+SD2.txt
211
211
  License-File: LICENSE-SDXL.txt
212
212
  Requires-Dist: accelerate
213
213
  Requires-Dist: bitsandbytes; sys_platform != "darwin"
214
- Requires-Dist: clip_anytorch==2.6.0
215
214
  Requires-Dist: compel==2.0.2
216
- Requires-Dist: controlnet-aux==0.0.7
217
215
  Requires-Dist: diffusers[torch]
218
- Requires-Dist: gguf==0.10.0
216
+ Requires-Dist: gguf
219
217
  Requires-Dist: invisible-watermark==0.2.0
220
218
  Requires-Dist: mediapipe==0.10.14
221
219
  Requires-Dist: numpy<2.0.0
222
220
  Requires-Dist: onnx==1.16.1
223
221
  Requires-Dist: onnxruntime==1.19.2
224
222
  Requires-Dist: opencv-python==4.9.0.80
225
- Requires-Dist: pytorch-lightning
226
223
  Requires-Dist: safetensors
227
- Requires-Dist: sentencepiece==0.2.0
228
- Requires-Dist: spandrel==0.3.4
229
- Requires-Dist: timm~=1.0.0
224
+ Requires-Dist: spandrel
230
225
  Requires-Dist: torch~=2.6.0
231
- Requires-Dist: torchmetrics
232
226
  Requires-Dist: torchsde
233
227
  Requires-Dist: torchvision
234
- Requires-Dist: timm~=1.0.0
235
228
  Requires-Dist: transformers
236
229
  Requires-Dist: fastapi-events
237
230
  Requires-Dist: fastapi
@@ -240,30 +233,18 @@ Requires-Dist: pydantic-settings
240
233
  Requires-Dist: pydantic
241
234
  Requires-Dist: python-socketio
242
235
  Requires-Dist: uvicorn[standard]
243
- Requires-Dist: albumentations
244
236
  Requires-Dist: blake3
245
- Requires-Dist: click
246
- Requires-Dist: datasets
247
237
  Requires-Dist: Deprecated
248
238
  Requires-Dist: dnspython
249
239
  Requires-Dist: dynamicprompts
250
240
  Requires-Dist: einops
251
- Requires-Dist: facexlib
252
- Requires-Dist: matplotlib!=3.9.1
253
- Requires-Dist: npyscreen
254
- Requires-Dist: omegaconf
255
241
  Requires-Dist: picklescan
256
242
  Requires-Dist: pillow
257
243
  Requires-Dist: prompt-toolkit
258
- Requires-Dist: pympler
259
244
  Requires-Dist: pypatchmatch
260
- Requires-Dist: pyperclip
261
- Requires-Dist: pyreadline3
262
245
  Requires-Dist: python-multipart
263
246
  Requires-Dist: requests
264
- Requires-Dist: scikit-image
265
247
  Requires-Dist: semver~=3.0.1
266
- Requires-Dist: humanize==4.12.1
267
248
  Provides-Extra: xformers
268
249
  Requires-Dist: xformers>=0.0.28.post1; sys_platform != "darwin" and extra == "xformers"
269
250
  Provides-Extra: onnx
@@ -298,6 +279,7 @@ Requires-Dist: pytest-datadir; extra == "test"
298
279
  Requires-Dist: requests_testadapter; extra == "test"
299
280
  Requires-Dist: httpx; extra == "test"
300
281
  Requires-Dist: polyfactory==2.19.0; extra == "test"
282
+ Requires-Dist: humanize==4.12.1; extra == "test"
301
283
  Dynamic: license-file
302
284
 
303
285
  <div align="center">
@@ -2,7 +2,7 @@ from typing import Optional
2
2
 
3
3
  from fastapi import Body, Path, Query
4
4
  from fastapi.routing import APIRouter
5
- from pydantic import BaseModel
5
+ from pydantic import BaseModel, Field
6
6
 
7
7
  from invokeai.app.api.dependencies import ApiDependencies
8
8
  from invokeai.app.services.session_processor.session_processor_common import SessionProcessorStatus
@@ -15,6 +15,7 @@ from invokeai.app.services.session_queue.session_queue_common import (
15
15
  CancelByDestinationResult,
16
16
  ClearResult,
17
17
  EnqueueBatchResult,
18
+ FieldIdentifier,
18
19
  PruneResult,
19
20
  RetryItemsResult,
20
21
  SessionQueueCountsByDestination,
@@ -34,6 +35,12 @@ class SessionQueueAndProcessorStatus(BaseModel):
34
35
  processor: SessionProcessorStatus
35
36
 
36
37
 
38
+ class ValidationRunData(BaseModel):
39
+ workflow_id: str = Field(description="The id of the workflow being published.")
40
+ input_fields: list[FieldIdentifier] = Body(description="The input fields for the published workflow")
41
+ output_fields: list[FieldIdentifier] = Body(description="The output fields for the published workflow")
42
+
43
+
37
44
  @session_queue_router.post(
38
45
  "/{queue_id}/enqueue_batch",
39
46
  operation_id="enqueue_batch",
@@ -45,6 +52,10 @@ async def enqueue_batch(
45
52
  queue_id: str = Path(description="The queue id to perform this operation on"),
46
53
  batch: Batch = Body(description="Batch to process"),
47
54
  prepend: bool = Body(default=False, description="Whether or not to prepend this batch in the queue"),
55
+ validation_run_data: Optional[ValidationRunData] = Body(
56
+ default=None,
57
+ description="The validation run data to use for this batch. This is only used if this is a validation run.",
58
+ ),
48
59
  ) -> EnqueueBatchResult:
49
60
  """Processes a batch and enqueues the output graphs for execution."""
50
61
 
@@ -106,6 +106,7 @@ async def list_workflows(
106
106
  tags: Optional[list[str]] = Query(default=None, description="The tags of workflow to get"),
107
107
  query: Optional[str] = Query(default=None, description="The text to query by (matches name and description)"),
108
108
  has_been_opened: Optional[bool] = Query(default=None, description="Whether to include/exclude recent workflows"),
109
+ is_published: Optional[bool] = Query(default=None, description="Whether to include/exclude published workflows"),
109
110
  ) -> PaginatedResults[WorkflowRecordListItemWithThumbnailDTO]:
110
111
  """Gets a page of workflows"""
111
112
  workflows_with_thumbnails: list[WorkflowRecordListItemWithThumbnailDTO] = []
@@ -118,6 +119,7 @@ async def list_workflows(
118
119
  categories=categories,
119
120
  tags=tags,
120
121
  has_been_opened=has_been_opened,
122
+ is_published=is_published,
121
123
  )
122
124
  for workflow in workflows.items:
123
125
  workflows_with_thumbnails.append(
@@ -0,0 +1,128 @@
1
+ # Invocations for ControlNet image preprocessors
2
+ # initial implementation by Gregg Helt, 2023
3
+ from typing import List, Union
4
+
5
+ from pydantic import BaseModel, Field, field_validator, model_validator
6
+
7
+ from invokeai.app.invocations.baseinvocation import (
8
+ BaseInvocation,
9
+ BaseInvocationOutput,
10
+ Classification,
11
+ invocation,
12
+ invocation_output,
13
+ )
14
+ from invokeai.app.invocations.fields import (
15
+ FieldDescriptions,
16
+ ImageField,
17
+ InputField,
18
+ OutputField,
19
+ UIType,
20
+ )
21
+ from invokeai.app.invocations.model import ModelIdentifierField
22
+ from invokeai.app.invocations.primitives import ImageOutput
23
+ from invokeai.app.invocations.util import validate_begin_end_step, validate_weights
24
+ from invokeai.app.services.shared.invocation_context import InvocationContext
25
+ from invokeai.app.util.controlnet_utils import CONTROLNET_MODE_VALUES, CONTROLNET_RESIZE_VALUES, heuristic_resize
26
+ from invokeai.backend.image_util.util import np_to_pil, pil_to_np
27
+
28
+
29
+ class ControlField(BaseModel):
30
+ image: ImageField = Field(description="The control image")
31
+ control_model: ModelIdentifierField = Field(description="The ControlNet model to use")
32
+ control_weight: Union[float, List[float]] = Field(default=1, description="The weight given to the ControlNet")
33
+ begin_step_percent: float = Field(
34
+ default=0, ge=0, le=1, description="When the ControlNet is first applied (% of total steps)"
35
+ )
36
+ end_step_percent: float = Field(
37
+ default=1, ge=0, le=1, description="When the ControlNet is last applied (% of total steps)"
38
+ )
39
+ control_mode: CONTROLNET_MODE_VALUES = Field(default="balanced", description="The control mode to use")
40
+ resize_mode: CONTROLNET_RESIZE_VALUES = Field(default="just_resize", description="The resize mode to use")
41
+
42
+ @field_validator("control_weight")
43
+ @classmethod
44
+ def validate_control_weight(cls, v):
45
+ validate_weights(v)
46
+ return v
47
+
48
+ @model_validator(mode="after")
49
+ def validate_begin_end_step_percent(self):
50
+ validate_begin_end_step(self.begin_step_percent, self.end_step_percent)
51
+ return self
52
+
53
+
54
+ @invocation_output("control_output")
55
+ class ControlOutput(BaseInvocationOutput):
56
+ """node output for ControlNet info"""
57
+
58
+ # Outputs
59
+ control: ControlField = OutputField(description=FieldDescriptions.control)
60
+
61
+
62
+ @invocation("controlnet", title="ControlNet - SD1.5, SDXL", tags=["controlnet"], category="controlnet", version="1.1.3")
63
+ class ControlNetInvocation(BaseInvocation):
64
+ """Collects ControlNet info to pass to other nodes"""
65
+
66
+ image: ImageField = InputField(description="The control image")
67
+ control_model: ModelIdentifierField = InputField(
68
+ description=FieldDescriptions.controlnet_model, ui_type=UIType.ControlNetModel
69
+ )
70
+ control_weight: Union[float, List[float]] = InputField(
71
+ default=1.0, ge=-1, le=2, description="The weight given to the ControlNet"
72
+ )
73
+ begin_step_percent: float = InputField(
74
+ default=0, ge=0, le=1, description="When the ControlNet is first applied (% of total steps)"
75
+ )
76
+ end_step_percent: float = InputField(
77
+ default=1, ge=0, le=1, description="When the ControlNet is last applied (% of total steps)"
78
+ )
79
+ control_mode: CONTROLNET_MODE_VALUES = InputField(default="balanced", description="The control mode used")
80
+ resize_mode: CONTROLNET_RESIZE_VALUES = InputField(default="just_resize", description="The resize mode used")
81
+
82
+ @field_validator("control_weight")
83
+ @classmethod
84
+ def validate_control_weight(cls, v):
85
+ validate_weights(v)
86
+ return v
87
+
88
+ @model_validator(mode="after")
89
+ def validate_begin_end_step_percent(self) -> "ControlNetInvocation":
90
+ validate_begin_end_step(self.begin_step_percent, self.end_step_percent)
91
+ return self
92
+
93
+ def invoke(self, context: InvocationContext) -> ControlOutput:
94
+ return ControlOutput(
95
+ control=ControlField(
96
+ image=self.image,
97
+ control_model=self.control_model,
98
+ control_weight=self.control_weight,
99
+ begin_step_percent=self.begin_step_percent,
100
+ end_step_percent=self.end_step_percent,
101
+ control_mode=self.control_mode,
102
+ resize_mode=self.resize_mode,
103
+ ),
104
+ )
105
+
106
+
107
+ @invocation(
108
+ "heuristic_resize",
109
+ title="Heuristic Resize",
110
+ tags=["image, controlnet"],
111
+ category="image",
112
+ version="1.0.1",
113
+ classification=Classification.Prototype,
114
+ )
115
+ class HeuristicResizeInvocation(BaseInvocation):
116
+ """Resize an image using a heuristic method. Preserves edge maps."""
117
+
118
+ image: ImageField = InputField(description="The image to resize")
119
+ width: int = InputField(default=512, ge=1, description="The width to resize to (px)")
120
+ height: int = InputField(default=512, ge=1, description="The height to resize to (px)")
121
+
122
+ def invoke(self, context: InvocationContext) -> ImageOutput:
123
+ image = context.images.get_pil(self.image.image_name, "RGB")
124
+ np_img = pil_to_np(image)
125
+ np_resized = heuristic_resize(np_img, (self.width, self.height))
126
+ resized = np_to_pil(np_resized)
127
+ image_dto = context.images.save(image=resized)
128
+ return ImageOutput.build(image_dto)
@@ -22,7 +22,7 @@ from transformers import CLIPVisionModelWithProjection
22
22
 
23
23
  from invokeai.app.invocations.baseinvocation import BaseInvocation, invocation
24
24
  from invokeai.app.invocations.constants import LATENT_SCALE_FACTOR
25
- from invokeai.app.invocations.controlnet_image_processors import ControlField
25
+ from invokeai.app.invocations.controlnet import ControlField
26
26
  from invokeai.app.invocations.fields import (
27
27
  ConditioningField,
28
28
  DenoiseMaskField,
@@ -4,7 +4,7 @@ from invokeai.app.invocations.baseinvocation import BaseInvocation, invocation
4
4
  from invokeai.app.invocations.fields import ImageField, InputField, WithBoard, WithMetadata
5
5
  from invokeai.app.invocations.primitives import ImageOutput
6
6
  from invokeai.app.services.shared.invocation_context import InvocationContext
7
- from invokeai.backend.image_util.dw_openpose import DWOpenposeDetector2
7
+ from invokeai.backend.image_util.dw_openpose import DWOpenposeDetector
8
8
 
9
9
 
10
10
  @invocation(
@@ -25,20 +25,20 @@ class DWOpenposeDetectionInvocation(BaseInvocation, WithMetadata, WithBoard):
25
25
  def invoke(self, context: InvocationContext) -> ImageOutput:
26
26
  image = context.images.get_pil(self.image.image_name, "RGB")
27
27
 
28
- onnx_det_path = context.models.download_and_cache_model(DWOpenposeDetector2.get_model_url_det())
29
- onnx_pose_path = context.models.download_and_cache_model(DWOpenposeDetector2.get_model_url_pose())
28
+ onnx_det_path = context.models.download_and_cache_model(DWOpenposeDetector.get_model_url_det())
29
+ onnx_pose_path = context.models.download_and_cache_model(DWOpenposeDetector.get_model_url_pose())
30
30
 
31
31
  loaded_session_det = context.models.load_local_model(
32
- onnx_det_path, DWOpenposeDetector2.create_onnx_inference_session
32
+ onnx_det_path, DWOpenposeDetector.create_onnx_inference_session
33
33
  )
34
34
  loaded_session_pose = context.models.load_local_model(
35
- onnx_pose_path, DWOpenposeDetector2.create_onnx_inference_session
35
+ onnx_pose_path, DWOpenposeDetector.create_onnx_inference_session
36
36
  )
37
37
 
38
38
  with loaded_session_det as session_det, loaded_session_pose as session_pose:
39
39
  assert isinstance(session_det, ort.InferenceSession)
40
40
  assert isinstance(session_pose, ort.InferenceSession)
41
- detector = DWOpenposeDetector2(session_det=session_det, session_pose=session_pose)
41
+ detector = DWOpenposeDetector(session_det=session_det, session_pose=session_pose)
42
42
  detected_image = detector.run(
43
43
  image,
44
44
  draw_face=self.draw_face,
@@ -14,7 +14,7 @@ from invokeai.app.invocations.baseinvocation import (
14
14
  invocation,
15
15
  invocation_output,
16
16
  )
17
- from invokeai.app.invocations.controlnet_image_processors import ControlField, ControlNetInvocation
17
+ from invokeai.app.invocations.controlnet import ControlField, ControlNetInvocation
18
18
  from invokeai.app.invocations.denoise_latents import DenoiseLatentsInvocation
19
19
  from invokeai.app.invocations.fields import (
20
20
  FieldDescriptions,
@@ -9,7 +9,7 @@ from pydantic import field_validator
9
9
 
10
10
  from invokeai.app.invocations.baseinvocation import BaseInvocation, invocation
11
11
  from invokeai.app.invocations.constants import LATENT_SCALE_FACTOR
12
- from invokeai.app.invocations.controlnet_image_processors import ControlField
12
+ from invokeai.app.invocations.controlnet import ControlField
13
13
  from invokeai.app.invocations.denoise_latents import DenoiseLatentsInvocation, get_scheduler
14
14
  from invokeai.app.invocations.fields import (
15
15
  ConditioningField,
@@ -302,7 +302,10 @@ class ModelRecordServiceSQL(ModelRecordServiceBase):
302
302
  # We catch this error so that the app can still run if there are invalid model configs in the database.
303
303
  # One reason that an invalid model config might be in the database is if someone had to rollback from a
304
304
  # newer version of the app that added a new model type.
305
- self._logger.warning(f"Found an invalid model config in the database. Ignoring this model. ({row[0]})")
305
+ row_data = f"{row[0][:64]}..." if len(row[0]) > 64 else row[0]
306
+ self._logger.warning(
307
+ f"Found an invalid model config in the database. Ignoring this model. ({row_data})"
308
+ )
306
309
  else:
307
310
  results.append(model_config)
308
311
 
@@ -201,6 +201,12 @@ def get_workflow(queue_item_dict: dict) -> Optional[WorkflowWithoutID]:
201
201
  return None
202
202
 
203
203
 
204
+ class FieldIdentifier(BaseModel):
205
+ kind: Literal["input", "output"] = Field(description="The kind of field")
206
+ node_id: str = Field(description="The ID of the node")
207
+ field_name: str = Field(description="The name of the field")
208
+
209
+
204
210
  class SessionQueueItemWithoutGraph(BaseModel):
205
211
  """Session queue item without the full graph. Used for serialization."""
206
212
 
@@ -237,6 +243,20 @@ class SessionQueueItemWithoutGraph(BaseModel):
237
243
  retried_from_item_id: Optional[int] = Field(
238
244
  default=None, description="The item_id of the queue item that this item was retried from"
239
245
  )
246
+ is_api_validation_run: bool = Field(
247
+ default=False,
248
+ description="Whether this queue item is an API validation run.",
249
+ )
250
+ published_workflow_id: Optional[str] = Field(
251
+ default=None,
252
+ description="The ID of the published workflow associated with this queue item",
253
+ )
254
+ api_input_fields: Optional[list[FieldIdentifier]] = Field(
255
+ default=None, description="The fields that were used as input to the API"
256
+ )
257
+ api_output_fields: Optional[list[FieldIdentifier]] = Field(
258
+ default=None, description="The nodes that were used as output from the API"
259
+ )
240
260
 
241
261
  @classmethod
242
262
  def queue_item_dto_from_dict(cls, queue_item_dict: dict) -> "SessionQueueItemDTO":
@@ -47,6 +47,7 @@ class WorkflowRecordsStorageBase(ABC):
47
47
  query: Optional[str],
48
48
  tags: Optional[list[str]],
49
49
  has_been_opened: Optional[bool],
50
+ is_published: Optional[bool],
50
51
  ) -> PaginatedResults[WorkflowRecordListItemDTO]:
51
52
  """Gets many workflows."""
52
53
  pass
@@ -56,6 +57,7 @@ class WorkflowRecordsStorageBase(ABC):
56
57
  self,
57
58
  categories: list[WorkflowCategory],
58
59
  has_been_opened: Optional[bool] = None,
60
+ is_published: Optional[bool] = None,
59
61
  ) -> dict[str, int]:
60
62
  """Gets a dictionary of counts for each of the provided categories."""
61
63
  pass
@@ -66,6 +68,7 @@ class WorkflowRecordsStorageBase(ABC):
66
68
  tags: list[str],
67
69
  categories: Optional[list[WorkflowCategory]] = None,
68
70
  has_been_opened: Optional[bool] = None,
71
+ is_published: Optional[bool] = None,
69
72
  ) -> dict[str, int]:
70
73
  """Gets a dictionary of counts for each of the provided tags."""
71
74
  pass
@@ -67,6 +67,7 @@ class WorkflowWithoutID(BaseModel):
67
67
  # This is typed as optional to prevent errors when pulling workflows from the DB. The frontend adds a default form if
68
68
  # it is None.
69
69
  form: dict[str, JsonValue] | None = Field(default=None, description="The form of the workflow.")
70
+ is_published: bool | None = Field(default=None, description="Whether the workflow is published or not.")
70
71
 
71
72
  model_config = ConfigDict(extra="ignore")
72
73
 
@@ -101,6 +102,7 @@ class WorkflowRecordDTOBase(BaseModel):
101
102
  opened_at: Optional[Union[datetime.datetime, str]] = Field(
102
103
  default=None, description="The opened timestamp of the workflow."
103
104
  )
105
+ is_published: bool | None = Field(default=None, description="Whether the workflow is published or not.")
104
106
 
105
107
 
106
108
  class WorkflowRecordDTO(WorkflowRecordDTOBase):
@@ -119,6 +119,7 @@ class SqliteWorkflowRecordsStorage(WorkflowRecordsStorageBase):
119
119
  query: Optional[str] = None,
120
120
  tags: Optional[list[str]] = None,
121
121
  has_been_opened: Optional[bool] = None,
122
+ is_published: Optional[bool] = None,
122
123
  ) -> PaginatedResults[WorkflowRecordListItemDTO]:
123
124
  # sanitize!
124
125
  assert order_by in WorkflowRecordOrderBy
@@ -241,6 +242,7 @@ class SqliteWorkflowRecordsStorage(WorkflowRecordsStorageBase):
241
242
  tags: list[str],
242
243
  categories: Optional[list[WorkflowCategory]] = None,
243
244
  has_been_opened: Optional[bool] = None,
245
+ is_published: Optional[bool] = None,
244
246
  ) -> dict[str, int]:
245
247
  if not tags:
246
248
  return {}
@@ -292,6 +294,7 @@ class SqliteWorkflowRecordsStorage(WorkflowRecordsStorageBase):
292
294
  self,
293
295
  categories: list[WorkflowCategory],
294
296
  has_been_opened: Optional[bool] = None,
297
+ is_published: Optional[bool] = None,
295
298
  ) -> dict[str, int]:
296
299
  cursor = self._conn.cursor()
297
300
  result: dict[str, int] = {}
@@ -65,9 +65,6 @@ def apply_monkeypatches() -> None:
65
65
 
66
66
  import invokeai.backend.util.hotfixes # noqa: F401 (monkeypatching on import)
67
67
 
68
- if torch.backends.mps.is_available():
69
- import invokeai.backend.util.mps_fixes # noqa: F401 (monkeypatching on import)
70
-
71
68
 
72
69
  def register_mime_types() -> None:
73
70
  """Register additional mime types for windows."""