InvokeAI 4.2.0a4__tar.gz → 4.2.0b1__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.
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/InvokeAI.egg-info/PKG-INFO +1 -1
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/InvokeAI.egg-info/SOURCES.txt +3 -3
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/PKG-INFO +1 -1
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/controlnet_image_processors.py +47 -47
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/latent.py +15 -10
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/stable_diffusion/schedulers/schedulers.py +2 -0
- InvokeAI-4.2.0b1/invokeai/frontend/web/dist/assets/App-CXjdHCUy.js +128 -0
- InvokeAI-4.2.0b1/invokeai/frontend/web/dist/assets/ThemeLocaleProvider-y7NPssZq.js +1 -0
- InvokeAI-4.2.0b1/invokeai/frontend/web/dist/assets/index-BDpxz4Tm.js +515 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/index.html +1 -1
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/en.json +36 -4
- InvokeAI-4.2.0b1/invokeai/version/invokeai_version.py +1 -0
- InvokeAI-4.2.0a4/invokeai/frontend/web/dist/assets/App-DvZ62_y8.js +0 -128
- InvokeAI-4.2.0a4/invokeai/frontend/web/dist/assets/ThemeLocaleProvider-DhaEpDSH.js +0 -1
- InvokeAI-4.2.0a4/invokeai/frontend/web/dist/assets/index-Cb0OfJxp.js +0 -515
- InvokeAI-4.2.0a4/invokeai/version/invokeai_version.py +0 -1
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/InvokeAI.egg-info/dependency_links.txt +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/InvokeAI.egg-info/entry_points.txt +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/InvokeAI.egg-info/requires.txt +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/InvokeAI.egg-info/top_level.txt +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/LICENSE +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/LICENSE-SD1+SD2.txt +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/LICENSE-SDXL.txt +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/README.md +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/api/dependencies.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/api/events.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/api/no_cache_staticfiles.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/api/routers/app_info.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/api/routers/board_images.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/api/routers/boards.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/api/routers/download_queue.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/api/routers/images.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/api/routers/model_manager.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/api/routers/session_queue.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/api/routers/utilities.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/api/routers/workflows.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/api/sockets.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/api_app.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/assets/images/caution.png +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/baseinvocation.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/collections.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/compel.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/constants.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/custom_nodes/README.md +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/custom_nodes/init.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/cv.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/facetools.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/fields.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/image.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/infill.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/ip_adapter.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/mask.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/math.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/metadata.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/model.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/noise.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/param_easing.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/primitives.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/prompt.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/sdxl.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/strings.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/t2i_adapter.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/tiles.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/upscale.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/util.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/run_app.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/board_image_records/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/board_image_records/board_image_records_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/board_image_records/board_image_records_sqlite.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/board_images/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/board_images/board_images_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/board_images/board_images_common.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/board_images/board_images_default.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/board_records/board_records_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/board_records/board_records_common.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/board_records/board_records_sqlite.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/boards/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/boards/boards_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/boards/boards_common.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/boards/boards_default.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/bulk_download/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/bulk_download/bulk_download_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/bulk_download/bulk_download_common.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/bulk_download/bulk_download_default.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/config/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/config/config_common.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/config/config_default.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/download/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/download/download_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/download/download_default.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/events/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/events/events_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/image_files/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/image_files/image_files_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/image_files/image_files_common.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/image_files/image_files_disk.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/image_records/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/image_records/image_records_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/image_records/image_records_common.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/image_records/image_records_sqlite.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/images/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/images/images_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/images/images_common.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/images/images_default.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/invocation_cache/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/invocation_cache/invocation_cache_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/invocation_cache/invocation_cache_common.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/invocation_cache/invocation_cache_memory.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/invocation_services.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/invocation_stats/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/invocation_stats/invocation_stats_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/invocation_stats/invocation_stats_common.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/invocation_stats/invocation_stats_default.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/invoker.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/item_storage/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/item_storage/item_storage_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/item_storage/item_storage_common.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/item_storage/item_storage_memory.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/model_images/model_images_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/model_images/model_images_common.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/model_images/model_images_default.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/model_install/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/model_install/model_install_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/model_install/model_install_default.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/model_load/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/model_load/model_load_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/model_load/model_load_default.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/model_manager/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/model_manager/model_manager_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/model_manager/model_manager_common.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/model_manager/model_manager_default.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/model_records/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/model_records/model_records_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/model_records/model_records_sql.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/names/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/names/names_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/names/names_common.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/names/names_default.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/object_serializer/object_serializer_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/object_serializer/object_serializer_common.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/object_serializer/object_serializer_disk.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/object_serializer/object_serializer_forward_cache.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/session_processor/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/session_processor/session_processor_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/session_processor/session_processor_common.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/session_processor/session_processor_default.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/session_queue/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/session_queue/session_queue_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/session_queue/session_queue_common.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/session_queue/session_queue_sqlite.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/shared/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/shared/graph.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/shared/invocation_context.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/shared/pagination.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/shared/sqlite/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/shared/sqlite/sqlite_common.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/shared/sqlite/sqlite_database.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/shared/sqlite/sqlite_util.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/shared/sqlite_migrator/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/shared/sqlite_migrator/migrations/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_1.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_2.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_3.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_4.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_5.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_6.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_7.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_8.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_9.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/shared/sqlite_migrator/sqlite_migrator_common.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/shared/sqlite_migrator/sqlite_migrator_impl.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/urls/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/urls/urls_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/urls/urls_default.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/workflow_records/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/workflow_records/default_workflows/ESRGAN Upscaling with Canny ControlNet.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/workflow_records/default_workflows/Face Detailer with IP-Adapter & Canny (See Note in Details).json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/workflow_records/default_workflows/Multi ControlNet (Canny & Depth).json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/workflow_records/default_workflows/Prompt from File.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/workflow_records/default_workflows/Text to Image - SD1.5.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/workflow_records/default_workflows/Text to Image - SDXL.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/workflow_records/default_workflows/Text to Image with LoRA.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/workflow_records/default_workflows/Tiled Upscaling (Beta).json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/workflow_records/workflow_records_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/workflow_records/workflow_records_common.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/services/workflow_records/workflow_records_sqlite.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/shared/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/shared/models.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/util/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/util/controlnet_utils.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/util/download_with_progress.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/util/metaenum.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/util/misc.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/util/model_exclude_null.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/util/profiler.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/util/step_callback.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/util/suppress_output.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/util/thumbnails.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/util/ti_utils.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/assets/fonts/inter/Inter-Regular.ttf +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/basicsr/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/basicsr/arch_util.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/basicsr/rrdbnet_arch.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/canny.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/depth_anything/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/depth_anything/model/blocks.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/depth_anything/model/dpt.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/depth_anything/utilities/util.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/dw_openpose/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/dw_openpose/onnxdet.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/dw_openpose/onnxpose.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/dw_openpose/utils.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/dw_openpose/wholebody.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/hed.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/infill_methods/cv2_inpaint.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/infill_methods/lama.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/infill_methods/mosaic.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/infill_methods/patchmatch.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/infill_methods/tile.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/invisible_watermark.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/lineart.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/lineart_anime.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/pngwriter.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/realesrgan/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/realesrgan/realesrgan.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/safety_checker.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/seamless.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/image_util/util.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/ip_adapter/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/ip_adapter/ip_adapter.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/ip_adapter/ip_attention_weights.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/ip_adapter/resampler.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/lora.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_hash/model_hash.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/config.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/convert_ckpt_to_diffusers.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/libc_util.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/load/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/load/convert_cache/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/load/convert_cache/convert_cache_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/load/convert_cache/convert_cache_default.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/load/load_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/load/load_default.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/load/memory_snapshot.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/load/model_cache/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/load/model_cache/model_cache_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/load/model_cache/model_cache_default.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/load/model_cache/model_locker.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/load/model_loader_registry.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/load/model_loaders/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/load/model_loaders/controlnet.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/load/model_loaders/generic_diffusers.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/load/model_loaders/ip_adapter.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/load/model_loaders/lora.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/load/model_loaders/onnx.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/load/model_loaders/stable_diffusion.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/load/model_loaders/textual_inversion.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/load/model_loaders/vae.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/load/model_util.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/load/optimizations.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/merge.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/metadata/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/metadata/fetch/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/metadata/fetch/fetch_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/metadata/fetch/huggingface.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/metadata/metadata_base.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/probe.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/search.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/starter_models.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/util/libc_util.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/util/model_util.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_manager/util/select_hf_files.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/model_patcher.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/onnx/onnx_runtime.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/raw_model.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/stable_diffusion/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/stable_diffusion/diffusers_pipeline.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/stable_diffusion/diffusion/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/stable_diffusion/diffusion/conditioning_data.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/stable_diffusion/diffusion/custom_atttention.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/stable_diffusion/diffusion/regional_ip_data.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/stable_diffusion/diffusion/regional_prompt_data.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/stable_diffusion/diffusion/shared_invokeai_diffusion.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/stable_diffusion/diffusion/unet_attention_patcher.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/stable_diffusion/schedulers/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/stable_diffusion/seamless.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/textual_inversion.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/tiles/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/tiles/tiles.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/tiles/utils.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/util/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/util/attention.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/util/catch_sigint.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/util/db_maintenance.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/util/devices.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/util/hotfixes.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/util/logging.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/util/mask.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/util/mps_fixes.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/util/silence_warnings.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/util/test_utils.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/util/util.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/configs/controlnet/cldm_v15.yaml +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/configs/controlnet/cldm_v21.yaml +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/configs/stable-diffusion/sd_xl_base.yaml +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/configs/stable-diffusion/sd_xl_inpaint.yaml +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/configs/stable-diffusion/sd_xl_refiner.yaml +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/configs/stable-diffusion/v1-finetune.yaml +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/configs/stable-diffusion/v1-finetune_style.yaml +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/configs/stable-diffusion/v1-inference-v.yaml +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/configs/stable-diffusion/v1-inference.yaml +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/configs/stable-diffusion/v1-inpainting-inference.yaml +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/configs/stable-diffusion/v1-m1-finetune.yaml +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/configs/stable-diffusion/v2-inference-v.yaml +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/configs/stable-diffusion/v2-inference.yaml +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/configs/stable-diffusion/v2-inpainting-inference-v.yaml +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/configs/stable-diffusion/v2-inpainting-inference.yaml +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/configs/stable-diffusion/v2-midas-inference.yaml +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/cli/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/cli/arg_parser.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/install/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/install/import_images.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/App-DI6oCUg0.css +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/ThemeLocaleProvider-Bsx7ESc2.css +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/images/invoke-alert-favicon.svg +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/images/invoke-avatar-circle.svg +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/images/invoke-avatar-square.svg +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/images/invoke-favicon.png +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/images/invoke-favicon.svg +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/images/invoke-key-char-lrg.svg +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/images/invoke-key-char-sml.svg +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/images/invoke-key-wht-lrg.svg +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/images/invoke-key-wht-sml.svg +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/images/invoke-symbol-char-lrg.svg +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/images/invoke-symbol-char-sml.svg +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/images/invoke-symbol-wht-lrg.svg +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/images/invoke-symbol-wht-sml.svg +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/images/invoke-symbol-ylw-lrg.svg +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/images/invoke-tag-char-lrg.svg +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/images/invoke-tag-char-sml.svg +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/images/invoke-tag-lrg.svg +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/images/invoke-tag-sml.svg +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/images/invoke-wordmark-charcoal.svg +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/images/invoke-wordmark-white.svg +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/images/mask.svg +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/images/transparent_bg.png +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/inter-cyrillic-ext-wght-normal-DIEz8p5i.woff2 +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/inter-cyrillic-wght-normal-BmJJXa8e.woff2 +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/inter-greek-ext-wght-normal-D5AYLNiq.woff2 +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/inter-greek-wght-normal-DyIDNIyN.woff2 +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/inter-latin-ext-wght-normal-CN1pIXkb.woff2 +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/inter-latin-wght-normal-BgVq2Tq4.woff2 +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/assets/inter-vietnamese-wght-normal-_GQuwPVU.woff2 +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/ar.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/az.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/bg.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/de.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/es.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/fi.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/fr.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/he.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/hu.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/it.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/ja.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/ko.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/mn.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/nl.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/pl.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/pt.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/pt_BR.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/ro.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/ru.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/sv.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/tr.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/uk.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/vi.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/zh_CN.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/dist/locales/zh_Hant.json +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/scripts/clean_translations.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/frontend/web/static/docs/invoke-favicon-docs.svg +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/invocation_api/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/version/__init__.py +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/pyproject.toml +0 -0
- {InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: InvokeAI
|
|
3
|
-
Version: 4.2.
|
|
3
|
+
Version: 4.2.0b1
|
|
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
|
|
@@ -319,11 +319,11 @@ invokeai/frontend/install/__init__.py
|
|
|
319
319
|
invokeai/frontend/install/import_images.py
|
|
320
320
|
invokeai/frontend/web/__init__.py
|
|
321
321
|
invokeai/frontend/web/dist/index.html
|
|
322
|
+
invokeai/frontend/web/dist/assets/App-CXjdHCUy.js
|
|
322
323
|
invokeai/frontend/web/dist/assets/App-DI6oCUg0.css
|
|
323
|
-
invokeai/frontend/web/dist/assets/App-DvZ62_y8.js
|
|
324
324
|
invokeai/frontend/web/dist/assets/ThemeLocaleProvider-Bsx7ESc2.css
|
|
325
|
-
invokeai/frontend/web/dist/assets/ThemeLocaleProvider-
|
|
326
|
-
invokeai/frontend/web/dist/assets/index-
|
|
325
|
+
invokeai/frontend/web/dist/assets/ThemeLocaleProvider-y7NPssZq.js
|
|
326
|
+
invokeai/frontend/web/dist/assets/index-BDpxz4Tm.js
|
|
327
327
|
invokeai/frontend/web/dist/assets/inter-cyrillic-ext-wght-normal-DIEz8p5i.woff2
|
|
328
328
|
invokeai/frontend/web/dist/assets/inter-cyrillic-wght-normal-BmJJXa8e.woff2
|
|
329
329
|
invokeai/frontend/web/dist/assets/inter-greek-ext-wght-normal-D5AYLNiq.woff2
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: InvokeAI
|
|
3
|
-
Version: 4.2.
|
|
3
|
+
Version: 4.2.0b1
|
|
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
|
{InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/app/invocations/controlnet_image_processors.py
RENAMED
|
@@ -165,13 +165,13 @@ class ImageProcessorInvocation(BaseInvocation, WithMetadata, WithBoard):
|
|
|
165
165
|
title="Canny Processor",
|
|
166
166
|
tags=["controlnet", "canny"],
|
|
167
167
|
category="controlnet",
|
|
168
|
-
version="1.3.
|
|
168
|
+
version="1.3.3",
|
|
169
169
|
)
|
|
170
170
|
class CannyImageProcessorInvocation(ImageProcessorInvocation):
|
|
171
171
|
"""Canny edge detection for ControlNet"""
|
|
172
172
|
|
|
173
|
-
detect_resolution: int = InputField(default=512, ge=
|
|
174
|
-
image_resolution: int = InputField(default=512, ge=
|
|
173
|
+
detect_resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.detect_res)
|
|
174
|
+
image_resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.image_res)
|
|
175
175
|
low_threshold: int = InputField(
|
|
176
176
|
default=100, ge=0, le=255, description="The low threshold of the Canny pixel gradient (0-255)"
|
|
177
177
|
)
|
|
@@ -199,13 +199,13 @@ class CannyImageProcessorInvocation(ImageProcessorInvocation):
|
|
|
199
199
|
title="HED (softedge) Processor",
|
|
200
200
|
tags=["controlnet", "hed", "softedge"],
|
|
201
201
|
category="controlnet",
|
|
202
|
-
version="1.2.
|
|
202
|
+
version="1.2.3",
|
|
203
203
|
)
|
|
204
204
|
class HedImageProcessorInvocation(ImageProcessorInvocation):
|
|
205
205
|
"""Applies HED edge detection to image"""
|
|
206
206
|
|
|
207
|
-
detect_resolution: int = InputField(default=512, ge=
|
|
208
|
-
image_resolution: int = InputField(default=512, ge=
|
|
207
|
+
detect_resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.detect_res)
|
|
208
|
+
image_resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.image_res)
|
|
209
209
|
# safe not supported in controlnet_aux v0.0.3
|
|
210
210
|
# safe: bool = InputField(default=False, description=FieldDescriptions.safe_mode)
|
|
211
211
|
scribble: bool = InputField(default=False, description=FieldDescriptions.scribble_mode)
|
|
@@ -228,13 +228,13 @@ class HedImageProcessorInvocation(ImageProcessorInvocation):
|
|
|
228
228
|
title="Lineart Processor",
|
|
229
229
|
tags=["controlnet", "lineart"],
|
|
230
230
|
category="controlnet",
|
|
231
|
-
version="1.2.
|
|
231
|
+
version="1.2.3",
|
|
232
232
|
)
|
|
233
233
|
class LineartImageProcessorInvocation(ImageProcessorInvocation):
|
|
234
234
|
"""Applies line art processing to image"""
|
|
235
235
|
|
|
236
|
-
detect_resolution: int = InputField(default=512, ge=
|
|
237
|
-
image_resolution: int = InputField(default=512, ge=
|
|
236
|
+
detect_resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.detect_res)
|
|
237
|
+
image_resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.image_res)
|
|
238
238
|
coarse: bool = InputField(default=False, description="Whether to use coarse mode")
|
|
239
239
|
|
|
240
240
|
def run_processor(self, image: Image.Image) -> Image.Image:
|
|
@@ -250,13 +250,13 @@ class LineartImageProcessorInvocation(ImageProcessorInvocation):
|
|
|
250
250
|
title="Lineart Anime Processor",
|
|
251
251
|
tags=["controlnet", "lineart", "anime"],
|
|
252
252
|
category="controlnet",
|
|
253
|
-
version="1.2.
|
|
253
|
+
version="1.2.3",
|
|
254
254
|
)
|
|
255
255
|
class LineartAnimeImageProcessorInvocation(ImageProcessorInvocation):
|
|
256
256
|
"""Applies line art anime processing to image"""
|
|
257
257
|
|
|
258
|
-
detect_resolution: int = InputField(default=512, ge=
|
|
259
|
-
image_resolution: int = InputField(default=512, ge=
|
|
258
|
+
detect_resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.detect_res)
|
|
259
|
+
image_resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.image_res)
|
|
260
260
|
|
|
261
261
|
def run_processor(self, image: Image.Image) -> Image.Image:
|
|
262
262
|
processor = LineartAnimeProcessor()
|
|
@@ -273,15 +273,15 @@ class LineartAnimeImageProcessorInvocation(ImageProcessorInvocation):
|
|
|
273
273
|
title="Midas Depth Processor",
|
|
274
274
|
tags=["controlnet", "midas"],
|
|
275
275
|
category="controlnet",
|
|
276
|
-
version="1.2.
|
|
276
|
+
version="1.2.4",
|
|
277
277
|
)
|
|
278
278
|
class MidasDepthImageProcessorInvocation(ImageProcessorInvocation):
|
|
279
279
|
"""Applies Midas depth processing to image"""
|
|
280
280
|
|
|
281
281
|
a_mult: float = InputField(default=2.0, ge=0, description="Midas parameter `a_mult` (a = a_mult * PI)")
|
|
282
282
|
bg_th: float = InputField(default=0.1, ge=0, description="Midas parameter `bg_th`")
|
|
283
|
-
detect_resolution: int = InputField(default=512, ge=
|
|
284
|
-
image_resolution: int = InputField(default=512, ge=
|
|
283
|
+
detect_resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.detect_res)
|
|
284
|
+
image_resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.image_res)
|
|
285
285
|
# depth_and_normal not supported in controlnet_aux v0.0.3
|
|
286
286
|
# depth_and_normal: bool = InputField(default=False, description="whether to use depth and normal mode")
|
|
287
287
|
|
|
@@ -304,13 +304,13 @@ class MidasDepthImageProcessorInvocation(ImageProcessorInvocation):
|
|
|
304
304
|
title="Normal BAE Processor",
|
|
305
305
|
tags=["controlnet"],
|
|
306
306
|
category="controlnet",
|
|
307
|
-
version="1.2.
|
|
307
|
+
version="1.2.3",
|
|
308
308
|
)
|
|
309
309
|
class NormalbaeImageProcessorInvocation(ImageProcessorInvocation):
|
|
310
310
|
"""Applies NormalBae processing to image"""
|
|
311
311
|
|
|
312
|
-
detect_resolution: int = InputField(default=512, ge=
|
|
313
|
-
image_resolution: int = InputField(default=512, ge=
|
|
312
|
+
detect_resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.detect_res)
|
|
313
|
+
image_resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.image_res)
|
|
314
314
|
|
|
315
315
|
def run_processor(self, image):
|
|
316
316
|
normalbae_processor = NormalBaeDetector.from_pretrained("lllyasviel/Annotators")
|
|
@@ -321,13 +321,13 @@ class NormalbaeImageProcessorInvocation(ImageProcessorInvocation):
|
|
|
321
321
|
|
|
322
322
|
|
|
323
323
|
@invocation(
|
|
324
|
-
"mlsd_image_processor", title="MLSD Processor", tags=["controlnet", "mlsd"], category="controlnet", version="1.2.
|
|
324
|
+
"mlsd_image_processor", title="MLSD Processor", tags=["controlnet", "mlsd"], category="controlnet", version="1.2.3"
|
|
325
325
|
)
|
|
326
326
|
class MlsdImageProcessorInvocation(ImageProcessorInvocation):
|
|
327
327
|
"""Applies MLSD processing to image"""
|
|
328
328
|
|
|
329
|
-
detect_resolution: int = InputField(default=512, ge=
|
|
330
|
-
image_resolution: int = InputField(default=512, ge=
|
|
329
|
+
detect_resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.detect_res)
|
|
330
|
+
image_resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.image_res)
|
|
331
331
|
thr_v: float = InputField(default=0.1, ge=0, description="MLSD parameter `thr_v`")
|
|
332
332
|
thr_d: float = InputField(default=0.1, ge=0, description="MLSD parameter `thr_d`")
|
|
333
333
|
|
|
@@ -344,13 +344,13 @@ class MlsdImageProcessorInvocation(ImageProcessorInvocation):
|
|
|
344
344
|
|
|
345
345
|
|
|
346
346
|
@invocation(
|
|
347
|
-
"pidi_image_processor", title="PIDI Processor", tags=["controlnet", "pidi"], category="controlnet", version="1.2.
|
|
347
|
+
"pidi_image_processor", title="PIDI Processor", tags=["controlnet", "pidi"], category="controlnet", version="1.2.3"
|
|
348
348
|
)
|
|
349
349
|
class PidiImageProcessorInvocation(ImageProcessorInvocation):
|
|
350
350
|
"""Applies PIDI processing to image"""
|
|
351
351
|
|
|
352
|
-
detect_resolution: int = InputField(default=512, ge=
|
|
353
|
-
image_resolution: int = InputField(default=512, ge=
|
|
352
|
+
detect_resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.detect_res)
|
|
353
|
+
image_resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.image_res)
|
|
354
354
|
safe: bool = InputField(default=False, description=FieldDescriptions.safe_mode)
|
|
355
355
|
scribble: bool = InputField(default=False, description=FieldDescriptions.scribble_mode)
|
|
356
356
|
|
|
@@ -371,13 +371,13 @@ class PidiImageProcessorInvocation(ImageProcessorInvocation):
|
|
|
371
371
|
title="Content Shuffle Processor",
|
|
372
372
|
tags=["controlnet", "contentshuffle"],
|
|
373
373
|
category="controlnet",
|
|
374
|
-
version="1.2.
|
|
374
|
+
version="1.2.3",
|
|
375
375
|
)
|
|
376
376
|
class ContentShuffleImageProcessorInvocation(ImageProcessorInvocation):
|
|
377
377
|
"""Applies content shuffle processing to image"""
|
|
378
378
|
|
|
379
|
-
detect_resolution: int = InputField(default=512, ge=
|
|
380
|
-
image_resolution: int = InputField(default=512, ge=
|
|
379
|
+
detect_resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.detect_res)
|
|
380
|
+
image_resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.image_res)
|
|
381
381
|
h: int = InputField(default=512, ge=0, description="Content shuffle `h` parameter")
|
|
382
382
|
w: int = InputField(default=512, ge=0, description="Content shuffle `w` parameter")
|
|
383
383
|
f: int = InputField(default=256, ge=0, description="Content shuffle `f` parameter")
|
|
@@ -401,7 +401,7 @@ class ContentShuffleImageProcessorInvocation(ImageProcessorInvocation):
|
|
|
401
401
|
title="Zoe (Depth) Processor",
|
|
402
402
|
tags=["controlnet", "zoe", "depth"],
|
|
403
403
|
category="controlnet",
|
|
404
|
-
version="1.2.
|
|
404
|
+
version="1.2.3",
|
|
405
405
|
)
|
|
406
406
|
class ZoeDepthImageProcessorInvocation(ImageProcessorInvocation):
|
|
407
407
|
"""Applies Zoe depth processing to image"""
|
|
@@ -417,15 +417,15 @@ class ZoeDepthImageProcessorInvocation(ImageProcessorInvocation):
|
|
|
417
417
|
title="Mediapipe Face Processor",
|
|
418
418
|
tags=["controlnet", "mediapipe", "face"],
|
|
419
419
|
category="controlnet",
|
|
420
|
-
version="1.2.
|
|
420
|
+
version="1.2.4",
|
|
421
421
|
)
|
|
422
422
|
class MediapipeFaceProcessorInvocation(ImageProcessorInvocation):
|
|
423
423
|
"""Applies mediapipe face processing to image"""
|
|
424
424
|
|
|
425
425
|
max_faces: int = InputField(default=1, ge=1, description="Maximum number of faces to detect")
|
|
426
426
|
min_confidence: float = InputField(default=0.5, ge=0, le=1, description="Minimum confidence for face detection")
|
|
427
|
-
detect_resolution: int = InputField(default=512, ge=
|
|
428
|
-
image_resolution: int = InputField(default=512, ge=
|
|
427
|
+
detect_resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.detect_res)
|
|
428
|
+
image_resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.image_res)
|
|
429
429
|
|
|
430
430
|
def run_processor(self, image):
|
|
431
431
|
mediapipe_face_processor = MediapipeFaceDetector()
|
|
@@ -444,7 +444,7 @@ class MediapipeFaceProcessorInvocation(ImageProcessorInvocation):
|
|
|
444
444
|
title="Leres (Depth) Processor",
|
|
445
445
|
tags=["controlnet", "leres", "depth"],
|
|
446
446
|
category="controlnet",
|
|
447
|
-
version="1.2.
|
|
447
|
+
version="1.2.3",
|
|
448
448
|
)
|
|
449
449
|
class LeresImageProcessorInvocation(ImageProcessorInvocation):
|
|
450
450
|
"""Applies leres processing to image"""
|
|
@@ -452,8 +452,8 @@ class LeresImageProcessorInvocation(ImageProcessorInvocation):
|
|
|
452
452
|
thr_a: float = InputField(default=0, description="Leres parameter `thr_a`")
|
|
453
453
|
thr_b: float = InputField(default=0, description="Leres parameter `thr_b`")
|
|
454
454
|
boost: bool = InputField(default=False, description="Whether to use boost mode")
|
|
455
|
-
detect_resolution: int = InputField(default=512, ge=
|
|
456
|
-
image_resolution: int = InputField(default=512, ge=
|
|
455
|
+
detect_resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.detect_res)
|
|
456
|
+
image_resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.image_res)
|
|
457
457
|
|
|
458
458
|
def run_processor(self, image):
|
|
459
459
|
leres_processor = LeresDetector.from_pretrained("lllyasviel/Annotators")
|
|
@@ -473,7 +473,7 @@ class LeresImageProcessorInvocation(ImageProcessorInvocation):
|
|
|
473
473
|
title="Tile Resample Processor",
|
|
474
474
|
tags=["controlnet", "tile"],
|
|
475
475
|
category="controlnet",
|
|
476
|
-
version="1.2.
|
|
476
|
+
version="1.2.3",
|
|
477
477
|
)
|
|
478
478
|
class TileResamplerProcessorInvocation(ImageProcessorInvocation):
|
|
479
479
|
"""Tile resampler processor"""
|
|
@@ -513,13 +513,13 @@ class TileResamplerProcessorInvocation(ImageProcessorInvocation):
|
|
|
513
513
|
title="Segment Anything Processor",
|
|
514
514
|
tags=["controlnet", "segmentanything"],
|
|
515
515
|
category="controlnet",
|
|
516
|
-
version="1.2.
|
|
516
|
+
version="1.2.4",
|
|
517
517
|
)
|
|
518
518
|
class SegmentAnythingProcessorInvocation(ImageProcessorInvocation):
|
|
519
519
|
"""Applies segment anything processing to image"""
|
|
520
520
|
|
|
521
|
-
detect_resolution: int = InputField(default=512, ge=
|
|
522
|
-
image_resolution: int = InputField(default=512, ge=
|
|
521
|
+
detect_resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.detect_res)
|
|
522
|
+
image_resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.image_res)
|
|
523
523
|
|
|
524
524
|
def run_processor(self, image):
|
|
525
525
|
# segment_anything_processor = SamDetector.from_pretrained("ybelkada/segment-anything", subfolder="checkpoints")
|
|
@@ -560,12 +560,12 @@ class SamDetectorReproducibleColors(SamDetector):
|
|
|
560
560
|
title="Color Map Processor",
|
|
561
561
|
tags=["controlnet"],
|
|
562
562
|
category="controlnet",
|
|
563
|
-
version="1.2.
|
|
563
|
+
version="1.2.3",
|
|
564
564
|
)
|
|
565
565
|
class ColorMapImageProcessorInvocation(ImageProcessorInvocation):
|
|
566
566
|
"""Generates a color map from the provided image"""
|
|
567
567
|
|
|
568
|
-
color_map_tile_size: int = InputField(default=64, ge=
|
|
568
|
+
color_map_tile_size: int = InputField(default=64, ge=1, description=FieldDescriptions.tile_size)
|
|
569
569
|
|
|
570
570
|
def run_processor(self, image: Image.Image):
|
|
571
571
|
np_image = np.array(image, dtype=np.uint8)
|
|
@@ -592,7 +592,7 @@ DEPTH_ANYTHING_MODEL_SIZES = Literal["large", "base", "small"]
|
|
|
592
592
|
title="Depth Anything Processor",
|
|
593
593
|
tags=["controlnet", "depth", "depth anything"],
|
|
594
594
|
category="controlnet",
|
|
595
|
-
version="1.1.
|
|
595
|
+
version="1.1.2",
|
|
596
596
|
)
|
|
597
597
|
class DepthAnythingImageProcessorInvocation(ImageProcessorInvocation):
|
|
598
598
|
"""Generates a depth map based on the Depth Anything algorithm"""
|
|
@@ -600,7 +600,7 @@ class DepthAnythingImageProcessorInvocation(ImageProcessorInvocation):
|
|
|
600
600
|
model_size: DEPTH_ANYTHING_MODEL_SIZES = InputField(
|
|
601
601
|
default="small", description="The size of the depth model to use"
|
|
602
602
|
)
|
|
603
|
-
resolution: int = InputField(default=512, ge=
|
|
603
|
+
resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.image_res)
|
|
604
604
|
|
|
605
605
|
def run_processor(self, image: Image.Image):
|
|
606
606
|
depth_anything_detector = DepthAnythingDetector()
|
|
@@ -615,7 +615,7 @@ class DepthAnythingImageProcessorInvocation(ImageProcessorInvocation):
|
|
|
615
615
|
title="DW Openpose Image Processor",
|
|
616
616
|
tags=["controlnet", "dwpose", "openpose"],
|
|
617
617
|
category="controlnet",
|
|
618
|
-
version="1.1.
|
|
618
|
+
version="1.1.1",
|
|
619
619
|
)
|
|
620
620
|
class DWOpenposeImageProcessorInvocation(ImageProcessorInvocation):
|
|
621
621
|
"""Generates an openpose pose from an image using DWPose"""
|
|
@@ -623,7 +623,7 @@ class DWOpenposeImageProcessorInvocation(ImageProcessorInvocation):
|
|
|
623
623
|
draw_body: bool = InputField(default=True)
|
|
624
624
|
draw_face: bool = InputField(default=False)
|
|
625
625
|
draw_hands: bool = InputField(default=False)
|
|
626
|
-
image_resolution: int = InputField(default=512, ge=
|
|
626
|
+
image_resolution: int = InputField(default=512, ge=1, description=FieldDescriptions.image_res)
|
|
627
627
|
|
|
628
628
|
def run_processor(self, image: Image.Image):
|
|
629
629
|
dw_openpose = DWOpenposeDetector()
|
|
@@ -642,15 +642,15 @@ class DWOpenposeImageProcessorInvocation(ImageProcessorInvocation):
|
|
|
642
642
|
title="Heuristic Resize",
|
|
643
643
|
tags=["image, controlnet"],
|
|
644
644
|
category="image",
|
|
645
|
-
version="1.0.
|
|
645
|
+
version="1.0.1",
|
|
646
646
|
classification=Classification.Prototype,
|
|
647
647
|
)
|
|
648
648
|
class HeuristicResizeInvocation(BaseInvocation):
|
|
649
649
|
"""Resize an image using a heuristic method. Preserves edge maps."""
|
|
650
650
|
|
|
651
651
|
image: ImageField = InputField(description="The image to resize")
|
|
652
|
-
width: int = InputField(default=512,
|
|
653
|
-
height: int = InputField(default=512,
|
|
652
|
+
width: int = InputField(default=512, ge=1, description="The width to resize to (px)")
|
|
653
|
+
height: int = InputField(default=512, ge=1, description="The height to resize to (px)")
|
|
654
654
|
|
|
655
655
|
def invoke(self, context: InvocationContext) -> ImageOutput:
|
|
656
656
|
image = context.images.get_pil(self.image.image_name, "RGB")
|
|
@@ -3,7 +3,7 @@ import inspect
|
|
|
3
3
|
import math
|
|
4
4
|
from contextlib import ExitStack
|
|
5
5
|
from functools import singledispatchmethod
|
|
6
|
-
from typing import Any, Iterator, List, Literal, Optional, Tuple, Union
|
|
6
|
+
from typing import Any, Dict, Iterator, List, Literal, Optional, Tuple, Union
|
|
7
7
|
|
|
8
8
|
import einops
|
|
9
9
|
import numpy as np
|
|
@@ -11,7 +11,6 @@ import numpy.typing as npt
|
|
|
11
11
|
import torch
|
|
12
12
|
import torchvision
|
|
13
13
|
import torchvision.transforms as T
|
|
14
|
-
from diffusers import AutoencoderKL, AutoencoderTiny
|
|
15
14
|
from diffusers.configuration_utils import ConfigMixin
|
|
16
15
|
from diffusers.image_processor import VaeImageProcessor
|
|
17
16
|
from diffusers.models.adapter import T2IAdapter
|
|
@@ -21,9 +20,12 @@ from diffusers.models.attention_processor import (
|
|
|
21
20
|
LoRAXFormersAttnProcessor,
|
|
22
21
|
XFormersAttnProcessor,
|
|
23
22
|
)
|
|
23
|
+
from diffusers.models.autoencoders.autoencoder_kl import AutoencoderKL
|
|
24
|
+
from diffusers.models.autoencoders.autoencoder_tiny import AutoencoderTiny
|
|
24
25
|
from diffusers.models.unets.unet_2d_condition import UNet2DConditionModel
|
|
25
|
-
from diffusers.schedulers import DPMSolverSDEScheduler
|
|
26
|
-
from diffusers.schedulers import
|
|
26
|
+
from diffusers.schedulers.scheduling_dpmsolver_sde import DPMSolverSDEScheduler
|
|
27
|
+
from diffusers.schedulers.scheduling_tcd import TCDScheduler
|
|
28
|
+
from diffusers.schedulers.scheduling_utils import SchedulerMixin as Scheduler
|
|
27
29
|
from PIL import Image, ImageFilter
|
|
28
30
|
from pydantic import field_validator
|
|
29
31
|
from torchvision.transforms.functional import resize as tv_resize
|
|
@@ -521,9 +523,10 @@ class DenoiseLatentsInvocation(BaseInvocation):
|
|
|
521
523
|
)
|
|
522
524
|
|
|
523
525
|
if is_sdxl:
|
|
524
|
-
return
|
|
525
|
-
embeds=text_embedding, pooled_embeds=pooled_embedding, add_time_ids=add_time_ids
|
|
526
|
-
|
|
526
|
+
return (
|
|
527
|
+
SDXLConditioningInfo(embeds=text_embedding, pooled_embeds=pooled_embedding, add_time_ids=add_time_ids),
|
|
528
|
+
regions,
|
|
529
|
+
)
|
|
527
530
|
return BasicConditioningInfo(embeds=text_embedding), regions
|
|
528
531
|
|
|
529
532
|
def get_conditioning_data(
|
|
@@ -825,7 +828,7 @@ class DenoiseLatentsInvocation(BaseInvocation):
|
|
|
825
828
|
denoising_start: float,
|
|
826
829
|
denoising_end: float,
|
|
827
830
|
seed: int,
|
|
828
|
-
) -> Tuple[int, List[int], int]:
|
|
831
|
+
) -> Tuple[int, List[int], int, Dict[str, Any]]:
|
|
829
832
|
assert isinstance(scheduler, ConfigMixin)
|
|
830
833
|
if scheduler.config.get("cpu_only", False):
|
|
831
834
|
scheduler.set_timesteps(steps, device="cpu")
|
|
@@ -853,13 +856,15 @@ class DenoiseLatentsInvocation(BaseInvocation):
|
|
|
853
856
|
timesteps = timesteps[t_start_idx : t_start_idx + t_end_idx]
|
|
854
857
|
num_inference_steps = len(timesteps) // scheduler.order
|
|
855
858
|
|
|
856
|
-
scheduler_step_kwargs = {}
|
|
859
|
+
scheduler_step_kwargs: Dict[str, Any] = {}
|
|
857
860
|
scheduler_step_signature = inspect.signature(scheduler.step)
|
|
858
861
|
if "generator" in scheduler_step_signature.parameters:
|
|
859
862
|
# At some point, someone decided that schedulers that accept a generator should use the original seed with
|
|
860
863
|
# all bits flipped. I don't know the original rationale for this, but now we must keep it like this for
|
|
861
864
|
# reproducibility.
|
|
862
|
-
scheduler_step_kwargs
|
|
865
|
+
scheduler_step_kwargs.update({"generator": torch.Generator(device=device).manual_seed(seed ^ 0xFFFFFFFF)})
|
|
866
|
+
if isinstance(scheduler, TCDScheduler):
|
|
867
|
+
scheduler_step_kwargs.update({"eta": 1.0})
|
|
863
868
|
|
|
864
869
|
return num_inference_steps, timesteps, init_timestep, scheduler_step_kwargs
|
|
865
870
|
|
{InvokeAI-4.2.0a4 → InvokeAI-4.2.0b1}/invokeai/backend/stable_diffusion/schedulers/schedulers.py
RENAMED
|
@@ -13,6 +13,7 @@ from diffusers import (
|
|
|
13
13
|
LCMScheduler,
|
|
14
14
|
LMSDiscreteScheduler,
|
|
15
15
|
PNDMScheduler,
|
|
16
|
+
TCDScheduler,
|
|
16
17
|
UniPCMultistepScheduler,
|
|
17
18
|
)
|
|
18
19
|
|
|
@@ -40,4 +41,5 @@ SCHEDULER_MAP = {
|
|
|
40
41
|
"dpmpp_sde_k": (DPMSolverSDEScheduler, {"use_karras_sigmas": True, "noise_sampler_seed": 0}),
|
|
41
42
|
"unipc": (UniPCMultistepScheduler, {"cpu_only": True}),
|
|
42
43
|
"lcm": (LCMScheduler, {}),
|
|
44
|
+
"tcd": (TCDScheduler, {}),
|
|
43
45
|
}
|