InvokeAI 3.7.0__tar.gz → 4.0.0rc2__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-3.7.0 → InvokeAI-4.0.0rc2}/InvokeAI.egg-info/PKG-INFO +1 -1
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/InvokeAI.egg-info/SOURCES.txt +73 -69
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/InvokeAI.egg-info/entry_points.txt +1 -2
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/InvokeAI.egg-info/requires.txt +15 -11
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/PKG-INFO +1 -1
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/api/dependencies.py +28 -26
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/api/routers/download_queue.py +4 -4
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/api/routers/images.py +59 -8
- InvokeAI-4.0.0rc2/invokeai/app/api/routers/model_manager.py +782 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/api/sockets.py +27 -2
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/api_app.py +49 -43
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/invocations/baseinvocation.py +49 -473
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/invocations/collections.py +3 -1
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/invocations/compel.py +100 -150
- InvokeAI-4.0.0rc2/invokeai/app/invocations/constants.py +17 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/invocations/controlnet_image_processors.py +47 -65
- InvokeAI-4.0.0rc2/invokeai/app/invocations/cv.py +41 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/invocations/facetools.py +33 -77
- InvokeAI-4.0.0rc2/invokeai/app/invocations/fields.py +567 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/invocations/image.py +163 -462
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/invocations/infill.py +30 -93
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/invocations/ip_adapter.py +26 -47
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/invocations/latent.py +257 -253
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/invocations/math.py +3 -2
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/invocations/metadata.py +54 -27
- InvokeAI-4.0.0rc2/invokeai/app/invocations/model.py +370 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/invocations/noise.py +14 -17
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/invocations/param_easing.py +22 -20
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/invocations/primitives.py +53 -71
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/invocations/prompt.py +3 -1
- InvokeAI-4.0.0rc2/invokeai/app/invocations/sdxl.py +97 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/invocations/strings.py +3 -4
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/invocations/t2i_adapter.py +7 -17
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/invocations/tiles.py +7 -24
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/invocations/upscale.py +12 -23
- InvokeAI-4.0.0rc2/invokeai/app/services/bulk_download/bulk_download_base.py +44 -0
- InvokeAI-4.0.0rc2/invokeai/app/services/bulk_download/bulk_download_common.py +25 -0
- InvokeAI-4.0.0rc2/invokeai/app/services/bulk_download/bulk_download_default.py +157 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/config/config_base.py +25 -6
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/config/config_common.py +1 -1
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/config/config_default.py +204 -63
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/download/__init__.py +1 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/download/download_base.py +13 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/download/download_default.py +19 -7
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/events/events_base.py +70 -90
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/image_files/image_files_base.py +1 -1
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/image_files/image_files_disk.py +1 -1
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/image_records/image_records_base.py +1 -1
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/image_records/image_records_sqlite.py +1 -1
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/images/images_base.py +1 -1
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/images/images_default.py +1 -1
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/invocation_cache/invocation_cache_base.py +2 -1
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/invocation_cache/invocation_cache_memory.py +4 -5
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/invocation_services.py +16 -46
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/invocation_stats/invocation_stats_base.py +7 -12
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/invocation_stats/invocation_stats_default.py +12 -44
- InvokeAI-4.0.0rc2/invokeai/app/services/invoker.py +37 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/item_storage/item_storage_base.py +1 -1
- InvokeAI-4.0.0rc2/invokeai/app/services/model_images/model_images_base.py +33 -0
- InvokeAI-4.0.0rc2/invokeai/app/services/model_images/model_images_common.py +20 -0
- InvokeAI-4.0.0rc2/invokeai/app/services/model_images/model_images_default.py +85 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/model_install/__init__.py +0 -2
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/model_install/model_install_base.py +101 -27
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/model_install/model_install_default.py +236 -102
- InvokeAI-4.0.0rc2/invokeai/app/services/model_load/__init__.py +6 -0
- InvokeAI-4.0.0rc2/invokeai/app/services/model_load/model_load_base.py +40 -0
- InvokeAI-4.0.0rc2/invokeai/app/services/model_load/model_load_default.py +118 -0
- InvokeAI-4.0.0rc2/invokeai/app/services/model_manager/__init__.py +17 -0
- InvokeAI-4.0.0rc2/invokeai/app/services/model_manager/model_manager_base.py +68 -0
- InvokeAI-4.0.0rc2/invokeai/app/services/model_manager/model_manager_default.py +101 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/model_records/__init__.py +1 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/model_records/model_records_base.py +46 -54
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/model_records/model_records_sql.py +84 -106
- InvokeAI-4.0.0rc2/invokeai/app/services/object_serializer/object_serializer_base.py +44 -0
- InvokeAI-4.0.0rc2/invokeai/app/services/object_serializer/object_serializer_common.py +5 -0
- InvokeAI-4.0.0rc2/invokeai/app/services/object_serializer/object_serializer_disk.py +85 -0
- InvokeAI-4.0.0rc2/invokeai/app/services/object_serializer/object_serializer_forward_cache.py +65 -0
- InvokeAI-3.7.0/invokeai/app/services/invocation_processor/invocation_processor_common.py → InvokeAI-4.0.0rc2/invokeai/app/services/session_processor/session_processor_common.py +11 -6
- InvokeAI-4.0.0rc2/invokeai/app/services/session_processor/session_processor_default.py +277 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/session_queue/session_queue_sqlite.py +1 -4
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/shared/graph.py +183 -308
- InvokeAI-4.0.0rc2/invokeai/app/services/shared/invocation_context.py +551 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/shared/sqlite/sqlite_util.py +4 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_3.py +0 -9
- InvokeAI-4.0.0rc2/invokeai/app/services/shared/sqlite_migrator/migrations/migration_6.py +62 -0
- InvokeAI-4.0.0rc2/invokeai/app/services/shared/sqlite_migrator/migrations/migration_7.py +88 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/shared/sqlite_migrator/sqlite_migrator_common.py +1 -2
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/urls/urls_base.py +5 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/urls/urls_default.py +5 -1
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/shared/models.py +1 -1
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/util/misc.py +4 -4
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/util/step_callback.py +20 -15
- InvokeAI-4.0.0rc2/invokeai/app/util/ti_utils.py +47 -0
- InvokeAI-4.0.0rc2/invokeai/backend/__init__.py +3 -0
- InvokeAI-4.0.0rc2/invokeai/backend/embeddings/__init__.py +4 -0
- InvokeAI-4.0.0rc2/invokeai/backend/embeddings/embedding_base.py +12 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/image_util/__init__.py +1 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/image_util/depth_anything/__init__.py +14 -16
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/image_util/invisible_watermark.py +1 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/image_util/patchmatch.py +1 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/image_util/pngwriter.py +1 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/image_util/safety_checker.py +2 -1
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/install/check_root.py +1 -1
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/install/install_helper.py +21 -35
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/install/invokeai_configure.py +130 -94
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/ip_adapter/ip_adapter.py +5 -2
- {InvokeAI-3.7.0/invokeai/backend/model_management/models → InvokeAI-4.0.0rc2/invokeai/backend}/lora.py +62 -134
- InvokeAI-4.0.0rc2/invokeai/backend/model_hash/model_hash.py +219 -0
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/__init__.py +74 -0
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/config.py +433 -0
- {InvokeAI-3.7.0/invokeai/backend/model_management → InvokeAI-4.0.0rc2/invokeai/backend/model_manager}/convert_ckpt_to_diffusers.py +29 -3
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/load/__init__.py +28 -0
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/load/convert_cache/__init__.py +4 -0
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/load/convert_cache/convert_cache_base.py +28 -0
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/load/convert_cache/convert_cache_default.py +72 -0
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/load/load_base.py +85 -0
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/load/load_default.py +137 -0
- {InvokeAI-3.7.0/invokeai/backend/model_management → InvokeAI-4.0.0rc2/invokeai/backend/model_manager/load}/memory_snapshot.py +4 -3
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/load/model_cache/__init__.py +6 -0
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/load/model_cache/model_cache_base.py +188 -0
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/load/model_cache/model_cache_default.py +424 -0
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/load/model_cache/model_locker.py +64 -0
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/load/model_loader_registry.py +104 -0
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/load/model_loaders/__init__.py +3 -0
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/load/model_loaders/controlnet.py +63 -0
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/load/model_loaders/generic_diffusers.py +93 -0
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/load/model_loaders/ip_adapter.py +38 -0
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/load/model_loaders/lora.py +77 -0
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/load/model_loaders/onnx.py +42 -0
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/load/model_loaders/stable_diffusion.py +94 -0
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/load/model_loaders/textual_inversion.py +56 -0
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/load/model_loaders/vae.py +68 -0
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/load/model_util.py +113 -0
- InvokeAI-3.7.0/invokeai/backend/model_management/model_load_optimizations.py → InvokeAI-4.0.0rc2/invokeai/backend/model_manager/load/optimizations.py +7 -6
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/model_manager/merge.py +11 -20
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/model_manager/metadata/__init__.py +6 -16
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/metadata/fetch/__init__.py +16 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/model_manager/metadata/fetch/fetch_base.py +11 -7
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/model_manager/metadata/fetch/huggingface.py +61 -19
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/model_manager/metadata/metadata_base.py +9 -81
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/model_manager/probe.py +139 -44
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/search.py +143 -0
- InvokeAI-4.0.0rc2/invokeai/backend/model_manager/util/libc_util.py +76 -0
- InvokeAI-3.7.0/invokeai/backend/model_management/util.py → InvokeAI-4.0.0rc2/invokeai/backend/model_manager/util/model_util.py +62 -6
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/model_manager/util/select_hf_files.py +66 -34
- InvokeAI-3.7.0/invokeai/backend/model_management/lora.py → InvokeAI-4.0.0rc2/invokeai/backend/model_patcher.py +49 -129
- InvokeAI-4.0.0rc2/invokeai/backend/onnx/onnx_runtime.py +218 -0
- InvokeAI-4.0.0rc2/invokeai/backend/raw_model.py +15 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/stable_diffusion/__init__.py +9 -1
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/stable_diffusion/diffusers_pipeline.py +25 -57
- InvokeAI-4.0.0rc2/invokeai/backend/stable_diffusion/diffusion/__init__.py +5 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/stable_diffusion/diffusion/conditioning_data.py +5 -17
- InvokeAI-4.0.0rc2/invokeai/backend/stable_diffusion/diffusion/cross_attention_control.py +218 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/stable_diffusion/diffusion/shared_invokeai_diffusion.py +80 -272
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/stable_diffusion/schedulers/__init__.py +2 -0
- {InvokeAI-3.7.0/invokeai/backend/model_management → InvokeAI-4.0.0rc2/invokeai/backend/stable_diffusion}/seamless.py +2 -1
- InvokeAI-4.0.0rc2/invokeai/backend/textual_inversion.py +100 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/tiles/tiles.py +1 -1
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/training/__init__.py +1 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/training/textual_inversion_training.py +4 -4
- InvokeAI-4.0.0rc2/invokeai/backend/util/__init__.py +34 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/util/attention.py +1 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/util/devices.py +19 -6
- InvokeAI-4.0.0rc2/invokeai/backend/util/silence_warnings.py +29 -0
- InvokeAI-4.0.0rc2/invokeai/backend/util/test_utils.py +63 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/util/util.py +27 -8
- InvokeAI-3.7.0/invokeai/configs/INITIAL_MODELS2.yaml → InvokeAI-4.0.0rc2/invokeai/configs/INITIAL_MODELS.yaml +1 -1
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/CLI/__init__.py +1 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/install/invokeai_configure.py +1 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/install/invokeai_update.py +1 -0
- InvokeAI-3.7.0/invokeai/frontend/install/model_install2.py → InvokeAI-4.0.0rc2/invokeai/frontend/install/model_install.py +12 -9
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/install/widgets.py +12 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/merge/__init__.py +1 -0
- InvokeAI-3.7.0/invokeai/frontend/merge/merge_diffusers2.py → InvokeAI-4.0.0rc2/invokeai/frontend/merge/merge_diffusers.py +56 -44
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/training/__init__.py +1 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/training/textual_inversion.py +2 -3
- InvokeAI-4.0.0rc2/invokeai/frontend/web/dist/assets/App-DvDxXs2J.js +128 -0
- InvokeAI-4.0.0rc2/invokeai/frontend/web/dist/assets/ThemeLocaleProvider-D652FVM6.css +9 -0
- InvokeAI-4.0.0rc2/invokeai/frontend/web/dist/assets/ThemeLocaleProvider-DHi38vMA.js +1 -0
- InvokeAI-4.0.0rc2/invokeai/frontend/web/dist/assets/index-DALs_7tf.js +514 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/index.html +1 -1
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/locales/de.json +123 -46
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/locales/en.json +235 -500
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/locales/es.json +0 -2
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/locales/it.json +250 -65
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/locales/ko.json +0 -2
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/locales/nl.json +2 -28
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/locales/ru.json +157 -66
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/locales/tr.json +0 -4
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/locales/zh_CN.json +2 -28
- InvokeAI-4.0.0rc2/invokeai/frontend/web/scripts/clean_translations.py +88 -0
- InvokeAI-4.0.0rc2/invokeai/invocation_api/__init__.py +179 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/version/__init__.py +1 -0
- InvokeAI-4.0.0rc2/invokeai/version/invokeai_version.py +1 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/pyproject.toml +54 -14
- InvokeAI-3.7.0/invokeai/app/api/routers/model_records.py +0 -472
- InvokeAI-3.7.0/invokeai/app/api/routers/models.py +0 -427
- InvokeAI-3.7.0/invokeai/app/api/routers/sessions.py +0 -276
- InvokeAI-3.7.0/invokeai/app/invocations/cv.py +0 -51
- InvokeAI-3.7.0/invokeai/app/invocations/model.py +0 -493
- InvokeAI-3.7.0/invokeai/app/invocations/onnx.py +0 -508
- InvokeAI-3.7.0/invokeai/app/invocations/sdxl.py +0 -188
- InvokeAI-3.7.0/invokeai/app/services/invocation_processor/invocation_processor_base.py +0 -5
- InvokeAI-3.7.0/invokeai/app/services/invocation_processor/invocation_processor_default.py +0 -237
- InvokeAI-3.7.0/invokeai/app/services/invocation_queue/invocation_queue_base.py +0 -26
- InvokeAI-3.7.0/invokeai/app/services/invocation_queue/invocation_queue_common.py +0 -23
- InvokeAI-3.7.0/invokeai/app/services/invocation_queue/invocation_queue_memory.py +0 -44
- InvokeAI-3.7.0/invokeai/app/services/invoker.py +0 -89
- InvokeAI-3.7.0/invokeai/app/services/latents_storage/latents_storage_base.py +0 -45
- InvokeAI-3.7.0/invokeai/app/services/latents_storage/latents_storage_disk.py +0 -58
- InvokeAI-3.7.0/invokeai/app/services/latents_storage/latents_storage_forward_cache.py +0 -68
- InvokeAI-3.7.0/invokeai/app/services/model_manager/__init__.py +0 -1
- InvokeAI-3.7.0/invokeai/app/services/model_manager/model_manager_base.py +0 -286
- InvokeAI-3.7.0/invokeai/app/services/model_manager/model_manager_default.py +0 -413
- InvokeAI-3.7.0/invokeai/app/services/session_processor/session_processor_common.py +0 -6
- InvokeAI-3.7.0/invokeai/app/services/session_processor/session_processor_default.py +0 -141
- InvokeAI-3.7.0/invokeai/app/services/shared/default_graphs.py +0 -92
- InvokeAI-3.7.0/invokeai/app/services/shared/sqlite_migrator/migrations/util/migrate_yaml_config_1.py +0 -151
- InvokeAI-3.7.0/invokeai/app/shared/fields.py +0 -67
- InvokeAI-3.7.0/invokeai/app/util/metadata.py +0 -55
- InvokeAI-3.7.0/invokeai/app/util/ti_utils.py +0 -8
- InvokeAI-3.7.0/invokeai/backend/__init__.py +0 -5
- InvokeAI-3.7.0/invokeai/backend/install/migrate_to_3.py +0 -591
- InvokeAI-3.7.0/invokeai/backend/install/model_install_backend.py +0 -637
- InvokeAI-3.7.0/invokeai/backend/model_management/__init__.py +0 -20
- InvokeAI-3.7.0/invokeai/backend/model_management/detect_baked_in_vae.py +0 -31
- InvokeAI-3.7.0/invokeai/backend/model_management/model_cache.py +0 -553
- InvokeAI-3.7.0/invokeai/backend/model_management/model_manager.py +0 -1121
- InvokeAI-3.7.0/invokeai/backend/model_management/model_merge.py +0 -140
- InvokeAI-3.7.0/invokeai/backend/model_management/model_probe.py +0 -664
- InvokeAI-3.7.0/invokeai/backend/model_management/model_search.py +0 -112
- InvokeAI-3.7.0/invokeai/backend/model_management/models/__init__.py +0 -167
- InvokeAI-3.7.0/invokeai/backend/model_management/models/base.py +0 -681
- InvokeAI-3.7.0/invokeai/backend/model_management/models/clip_vision.py +0 -82
- InvokeAI-3.7.0/invokeai/backend/model_management/models/controlnet.py +0 -163
- InvokeAI-3.7.0/invokeai/backend/model_management/models/ip_adapter.py +0 -98
- InvokeAI-3.7.0/invokeai/backend/model_management/models/sdxl.py +0 -148
- InvokeAI-3.7.0/invokeai/backend/model_management/models/stable_diffusion.py +0 -337
- InvokeAI-3.7.0/invokeai/backend/model_management/models/stable_diffusion_onnx.py +0 -150
- InvokeAI-3.7.0/invokeai/backend/model_management/models/t2i_adapter.py +0 -102
- InvokeAI-3.7.0/invokeai/backend/model_management/models/textual_inversion.py +0 -87
- InvokeAI-3.7.0/invokeai/backend/model_management/models/vae.py +0 -179
- InvokeAI-3.7.0/invokeai/backend/model_manager/__init__.py +0 -31
- InvokeAI-3.7.0/invokeai/backend/model_manager/config.py +0 -332
- InvokeAI-3.7.0/invokeai/backend/model_manager/hash.py +0 -66
- InvokeAI-3.7.0/invokeai/backend/model_manager/metadata/fetch/__init__.py +0 -21
- InvokeAI-3.7.0/invokeai/backend/model_manager/metadata/fetch/civitai.py +0 -189
- InvokeAI-3.7.0/invokeai/backend/model_manager/metadata/metadata_store.py +0 -221
- InvokeAI-3.7.0/invokeai/backend/model_manager/search.py +0 -190
- InvokeAI-3.7.0/invokeai/backend/stable_diffusion/diffusion/__init__.py +0 -6
- InvokeAI-3.7.0/invokeai/backend/stable_diffusion/diffusion/cross_attention_control.py +0 -669
- InvokeAI-3.7.0/invokeai/backend/stable_diffusion/diffusion/cross_attention_map_saving.py +0 -100
- InvokeAI-3.7.0/invokeai/backend/util/__init__.py +0 -17
- InvokeAI-3.7.0/invokeai/backend/util/test_utils.py +0 -67
- InvokeAI-3.7.0/invokeai/configs/INITIAL_MODELS.yaml +0 -153
- InvokeAI-3.7.0/invokeai/configs/models.yaml.example +0 -47
- InvokeAI-3.7.0/invokeai/frontend/install/model_install.py +0 -845
- InvokeAI-3.7.0/invokeai/frontend/merge/merge_diffusers.py +0 -401
- InvokeAI-3.7.0/invokeai/frontend/training/textual_inversion2.py +0 -454
- InvokeAI-3.7.0/invokeai/frontend/web/dist/assets/App-bX_N2fq4.js +0 -128
- InvokeAI-3.7.0/invokeai/frontend/web/dist/assets/ThemeLocaleProvider-LDFeQ-Xr.css +0 -9
- InvokeAI-3.7.0/invokeai/frontend/web/dist/assets/ThemeLocaleProvider-zQsWeS5D.js +0 -1
- InvokeAI-3.7.0/invokeai/frontend/web/dist/assets/index-5973AuZK.js +0 -502
- InvokeAI-3.7.0/invokeai/version/invokeai_version.py +0 -1
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/InvokeAI.egg-info/dependency_links.txt +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/InvokeAI.egg-info/top_level.txt +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/LICENSE +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/LICENSE-SD1+SD2.txt +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/LICENSE-SDXL.txt +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/README.md +0 -0
- {InvokeAI-3.7.0/invokeai/app/services → InvokeAI-4.0.0rc2/invokeai/app}/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/api/events.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/api/no_cache_staticfiles.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/api/routers/app_info.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/api/routers/board_images.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/api/routers/boards.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/api/routers/session_queue.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/api/routers/utilities.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/api/routers/workflows.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/assets/images/caution.png +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/invocations/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/invocations/custom_nodes/README.md +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/invocations/custom_nodes/init.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/invocations/util.py +0 -0
- {InvokeAI-3.7.0/invokeai/app/services/board_image_records → InvokeAI-4.0.0rc2/invokeai/app/services}/__init__.py +0 -0
- {InvokeAI-3.7.0/invokeai/app/services/board_images → InvokeAI-4.0.0rc2/invokeai/app/services/board_image_records}/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/board_image_records/board_image_records_base.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/board_image_records/board_image_records_sqlite.py +0 -0
- {InvokeAI-3.7.0/invokeai/app/services/boards → InvokeAI-4.0.0rc2/invokeai/app/services/board_images}/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/board_images/board_images_base.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/board_images/board_images_common.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/board_images/board_images_default.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/board_records/board_records_base.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/board_records/board_records_common.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/board_records/board_records_sqlite.py +0 -0
- {InvokeAI-3.7.0/invokeai/app/services/image_files → InvokeAI-4.0.0rc2/invokeai/app/services/boards}/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/boards/boards_base.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/boards/boards_common.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/boards/boards_default.py +0 -0
- {InvokeAI-3.7.0/invokeai/app/services/image_records → InvokeAI-4.0.0rc2/invokeai/app/services/bulk_download}/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/config/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/events/__init__.py +0 -0
- {InvokeAI-3.7.0/invokeai/app/services/images → InvokeAI-4.0.0rc2/invokeai/app/services/image_files}/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/image_files/image_files_common.py +0 -0
- {InvokeAI-3.7.0/invokeai/app/services/invocation_cache → InvokeAI-4.0.0rc2/invokeai/app/services/image_records}/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/image_records/image_records_common.py +0 -0
- {InvokeAI-3.7.0/invokeai/app/services/invocation_processor → InvokeAI-4.0.0rc2/invokeai/app/services/images}/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/images/images_common.py +0 -0
- {InvokeAI-3.7.0/invokeai/app/services/invocation_queue → InvokeAI-4.0.0rc2/invokeai/app/services/invocation_cache}/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/invocation_cache/invocation_cache_common.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/invocation_stats/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/invocation_stats/invocation_stats_common.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/item_storage/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/item_storage/item_storage_common.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/item_storage/item_storage_memory.py +0 -0
- /InvokeAI-3.7.0/invokeai/app/services/latents_storage/__init__.py → /InvokeAI-4.0.0rc2/invokeai/app/services/model_manager/model_manager_common.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/names/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/names/names_base.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/names/names_common.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/names/names_default.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/session_processor/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/session_processor/session_processor_base.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/session_queue/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/session_queue/session_queue_base.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/session_queue/session_queue_common.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/shared/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/shared/pagination.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/shared/sqlite/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/shared/sqlite/sqlite_common.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/shared/sqlite/sqlite_database.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/shared/sqlite_migrator/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/shared/sqlite_migrator/migrations/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_1.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_2.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_4.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/shared/sqlite_migrator/migrations/migration_5.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/shared/sqlite_migrator/sqlite_migrator_impl.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/urls/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/workflow_records/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/workflow_records/default_workflows/ESRGAN Upscaling with Canny ControlNet.json +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/workflow_records/default_workflows/Face Detailer with IP-Adapter & Canny (See Note in Details).json +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/workflow_records/default_workflows/Multi ControlNet (Canny & Depth).json +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/workflow_records/default_workflows/Prompt from File.json +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/workflow_records/default_workflows/SDXL Text to Image.json +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/workflow_records/default_workflows/Text to Image - SD1.5.json +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/workflow_records/default_workflows/Text to Image with LoRA.json +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/workflow_records/default_workflows/Tiled Upscaling (Beta).json +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/workflow_records/workflow_records_base.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/workflow_records/workflow_records_common.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/services/workflow_records/workflow_records_sqlite.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/shared/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/util/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/util/controlnet_utils.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/util/metaenum.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/util/model_exclude_null.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/util/profiler.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/app/util/thumbnails.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/assets/fonts/inter/Inter-Regular.ttf +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/image_util/basicsr/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/image_util/basicsr/arch_util.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/image_util/basicsr/rrdbnet_arch.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/image_util/cv2_inpaint.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/image_util/depth_anything/model/blocks.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/image_util/depth_anything/model/dpt.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/image_util/depth_anything/utilities/util.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/image_util/dw_openpose/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/image_util/dw_openpose/onnxdet.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/image_util/dw_openpose/onnxpose.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/image_util/dw_openpose/utils.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/image_util/dw_openpose/wholebody.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/image_util/invoke_metadata.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/image_util/lama.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/image_util/realesrgan/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/image_util/realesrgan/realesrgan.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/image_util/seamless.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/image_util/txt2mask.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/image_util/util.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/install/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/install/legacy_arg_parsing.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/ip_adapter/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/ip_adapter/attention_processor.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/ip_adapter/ip_attention_weights.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/ip_adapter/resampler.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/ip_adapter/unet_patcher.py +0 -0
- {InvokeAI-3.7.0/invokeai/backend/model_management → InvokeAI-4.0.0rc2/invokeai/backend/model_manager}/libc_util.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/stable_diffusion/schedulers/schedulers.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/tiles/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/tiles/utils.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/util/db_maintenance.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/util/hotfixes.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/util/log.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/util/logging.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/backend/util/mps_fixes.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/configs/controlnet/cldm_v15.yaml +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/configs/controlnet/cldm_v21.yaml +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/configs/stable-diffusion/sd_xl_base.yaml +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/configs/stable-diffusion/sd_xl_refiner.yaml +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/configs/stable-diffusion/v1-finetune.yaml +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/configs/stable-diffusion/v1-finetune_style.yaml +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/configs/stable-diffusion/v1-inference-v.yaml +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/configs/stable-diffusion/v1-inference.yaml +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/configs/stable-diffusion/v1-inpainting-inference.yaml +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/configs/stable-diffusion/v1-m1-finetune.yaml +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/configs/stable-diffusion/v2-inference-v.yaml +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/configs/stable-diffusion/v2-inference.yaml +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/configs/stable-diffusion/v2-inpainting-inference-v.yaml +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/configs/stable-diffusion/v2-inpainting-inference.yaml +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/install/__init__.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/install/import_images.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/legacy_launch_invokeai.py +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/__init__.py +0 -0
- /InvokeAI-3.7.0/invokeai/frontend/web/dist/assets/App-yOqAlINK.css → /InvokeAI-4.0.0rc2/invokeai/frontend/web/dist/assets/App-DI6oCUg0.css +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/assets/images/invoke-avatar-circle.svg +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/assets/images/invoke-avatar-square.svg +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/assets/images/invoke-favicon.png +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/assets/images/invoke-favicon.svg +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/assets/images/invoke-key-char-lrg.svg +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/assets/images/invoke-key-char-sml.svg +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/assets/images/invoke-key-wht-lrg.svg +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/assets/images/invoke-key-wht-sml.svg +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/assets/images/invoke-symbol-char-lrg.svg +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/assets/images/invoke-symbol-char-sml.svg +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/assets/images/invoke-symbol-wht-lrg.svg +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/assets/images/invoke-symbol-wht-sml.svg +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/assets/images/invoke-symbol-ylw-lrg.svg +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/assets/images/invoke-tag-char-lrg.svg +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/assets/images/invoke-tag-char-sml.svg +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/assets/images/invoke-tag-lrg.svg +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/assets/images/invoke-tag-sml.svg +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/assets/images/invoke-wordmark-charcoal.svg +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/assets/images/invoke-wordmark-white.svg +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/assets/images/mask.svg +0 -0
- /InvokeAI-3.7.0/invokeai/frontend/web/dist/assets/inter-cyrillic-ext-wght-normal-yBM_KeYt.woff2 → /InvokeAI-4.0.0rc2/invokeai/frontend/web/dist/assets/inter-cyrillic-ext-wght-normal-DIEz8p5i.woff2 +0 -0
- /InvokeAI-3.7.0/invokeai/frontend/web/dist/assets/inter-cyrillic-wght-normal-ZiSV2vHp.woff2 → /InvokeAI-4.0.0rc2/invokeai/frontend/web/dist/assets/inter-cyrillic-wght-normal-BmJJXa8e.woff2 +0 -0
- /InvokeAI-3.7.0/invokeai/frontend/web/dist/assets/inter-greek-ext-wght-normal--QGCzYqo.woff2 → /InvokeAI-4.0.0rc2/invokeai/frontend/web/dist/assets/inter-greek-ext-wght-normal-D5AYLNiq.woff2 +0 -0
- /InvokeAI-3.7.0/invokeai/frontend/web/dist/assets/inter-greek-wght-normal-8iAzSMjZ.woff2 → /InvokeAI-4.0.0rc2/invokeai/frontend/web/dist/assets/inter-greek-wght-normal-DyIDNIyN.woff2 +0 -0
- /InvokeAI-3.7.0/invokeai/frontend/web/dist/assets/inter-latin-ext-wght-normal-jdaSF5G5.woff2 → /InvokeAI-4.0.0rc2/invokeai/frontend/web/dist/assets/inter-latin-ext-wght-normal-CN1pIXkb.woff2 +0 -0
- /InvokeAI-3.7.0/invokeai/frontend/web/dist/assets/inter-latin-wght-normal-YFatk6uG.woff2 → /InvokeAI-4.0.0rc2/invokeai/frontend/web/dist/assets/inter-latin-wght-normal-BgVq2Tq4.woff2 +0 -0
- /InvokeAI-3.7.0/invokeai/frontend/web/dist/assets/inter-vietnamese-wght-normal-PxkLsD1V.woff2 → /InvokeAI-4.0.0rc2/invokeai/frontend/web/dist/assets/inter-vietnamese-wght-normal-_GQuwPVU.woff2 +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/locales/ar.json +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/locales/az.json +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/locales/fi.json +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/locales/fr.json +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/locales/he.json +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/locales/hu.json +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/locales/ja.json +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/locales/mn.json +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/locales/pl.json +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/locales/pt.json +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/locales/pt_BR.json +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/locales/ro.json +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/locales/sv.json +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/locales/uk.json +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/locales/vi.json +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/dist/locales/zh_Hant.json +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/invokeai/frontend/web/static/docs/invoke-favicon-docs.svg +0 -0
- {InvokeAI-3.7.0 → InvokeAI-4.0.0rc2}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: InvokeAI
|
|
3
|
-
Version:
|
|
3
|
+
Version: 4.0.0rc2
|
|
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
|
|
@@ -9,6 +9,7 @@ InvokeAI.egg-info/dependency_links.txt
|
|
|
9
9
|
InvokeAI.egg-info/entry_points.txt
|
|
10
10
|
InvokeAI.egg-info/requires.txt
|
|
11
11
|
InvokeAI.egg-info/top_level.txt
|
|
12
|
+
invokeai/app/__init__.py
|
|
12
13
|
invokeai/app/api_app.py
|
|
13
14
|
invokeai/app/api/dependencies.py
|
|
14
15
|
invokeai/app/api/events.py
|
|
@@ -19,10 +20,8 @@ invokeai/app/api/routers/board_images.py
|
|
|
19
20
|
invokeai/app/api/routers/boards.py
|
|
20
21
|
invokeai/app/api/routers/download_queue.py
|
|
21
22
|
invokeai/app/api/routers/images.py
|
|
22
|
-
invokeai/app/api/routers/
|
|
23
|
-
invokeai/app/api/routers/models.py
|
|
23
|
+
invokeai/app/api/routers/model_manager.py
|
|
24
24
|
invokeai/app/api/routers/session_queue.py
|
|
25
|
-
invokeai/app/api/routers/sessions.py
|
|
26
25
|
invokeai/app/api/routers/utilities.py
|
|
27
26
|
invokeai/app/api/routers/workflows.py
|
|
28
27
|
invokeai/app/assets/images/caution.png
|
|
@@ -30,9 +29,11 @@ invokeai/app/invocations/__init__.py
|
|
|
30
29
|
invokeai/app/invocations/baseinvocation.py
|
|
31
30
|
invokeai/app/invocations/collections.py
|
|
32
31
|
invokeai/app/invocations/compel.py
|
|
32
|
+
invokeai/app/invocations/constants.py
|
|
33
33
|
invokeai/app/invocations/controlnet_image_processors.py
|
|
34
34
|
invokeai/app/invocations/cv.py
|
|
35
35
|
invokeai/app/invocations/facetools.py
|
|
36
|
+
invokeai/app/invocations/fields.py
|
|
36
37
|
invokeai/app/invocations/image.py
|
|
37
38
|
invokeai/app/invocations/infill.py
|
|
38
39
|
invokeai/app/invocations/ip_adapter.py
|
|
@@ -41,7 +42,6 @@ invokeai/app/invocations/math.py
|
|
|
41
42
|
invokeai/app/invocations/metadata.py
|
|
42
43
|
invokeai/app/invocations/model.py
|
|
43
44
|
invokeai/app/invocations/noise.py
|
|
44
|
-
invokeai/app/invocations/onnx.py
|
|
45
45
|
invokeai/app/invocations/param_easing.py
|
|
46
46
|
invokeai/app/invocations/primitives.py
|
|
47
47
|
invokeai/app/invocations/prompt.py
|
|
@@ -70,6 +70,10 @@ invokeai/app/services/boards/__init__.py
|
|
|
70
70
|
invokeai/app/services/boards/boards_base.py
|
|
71
71
|
invokeai/app/services/boards/boards_common.py
|
|
72
72
|
invokeai/app/services/boards/boards_default.py
|
|
73
|
+
invokeai/app/services/bulk_download/__init__.py
|
|
74
|
+
invokeai/app/services/bulk_download/bulk_download_base.py
|
|
75
|
+
invokeai/app/services/bulk_download/bulk_download_common.py
|
|
76
|
+
invokeai/app/services/bulk_download/bulk_download_default.py
|
|
73
77
|
invokeai/app/services/config/__init__.py
|
|
74
78
|
invokeai/app/services/config/config_base.py
|
|
75
79
|
invokeai/app/services/config/config_common.py
|
|
@@ -95,14 +99,6 @@ invokeai/app/services/invocation_cache/__init__.py
|
|
|
95
99
|
invokeai/app/services/invocation_cache/invocation_cache_base.py
|
|
96
100
|
invokeai/app/services/invocation_cache/invocation_cache_common.py
|
|
97
101
|
invokeai/app/services/invocation_cache/invocation_cache_memory.py
|
|
98
|
-
invokeai/app/services/invocation_processor/__init__.py
|
|
99
|
-
invokeai/app/services/invocation_processor/invocation_processor_base.py
|
|
100
|
-
invokeai/app/services/invocation_processor/invocation_processor_common.py
|
|
101
|
-
invokeai/app/services/invocation_processor/invocation_processor_default.py
|
|
102
|
-
invokeai/app/services/invocation_queue/__init__.py
|
|
103
|
-
invokeai/app/services/invocation_queue/invocation_queue_base.py
|
|
104
|
-
invokeai/app/services/invocation_queue/invocation_queue_common.py
|
|
105
|
-
invokeai/app/services/invocation_queue/invocation_queue_memory.py
|
|
106
102
|
invokeai/app/services/invocation_stats/__init__.py
|
|
107
103
|
invokeai/app/services/invocation_stats/invocation_stats_base.py
|
|
108
104
|
invokeai/app/services/invocation_stats/invocation_stats_common.py
|
|
@@ -111,15 +107,18 @@ invokeai/app/services/item_storage/__init__.py
|
|
|
111
107
|
invokeai/app/services/item_storage/item_storage_base.py
|
|
112
108
|
invokeai/app/services/item_storage/item_storage_common.py
|
|
113
109
|
invokeai/app/services/item_storage/item_storage_memory.py
|
|
114
|
-
invokeai/app/services/
|
|
115
|
-
invokeai/app/services/
|
|
116
|
-
invokeai/app/services/
|
|
117
|
-
invokeai/app/services/latents_storage/latents_storage_forward_cache.py
|
|
110
|
+
invokeai/app/services/model_images/model_images_base.py
|
|
111
|
+
invokeai/app/services/model_images/model_images_common.py
|
|
112
|
+
invokeai/app/services/model_images/model_images_default.py
|
|
118
113
|
invokeai/app/services/model_install/__init__.py
|
|
119
114
|
invokeai/app/services/model_install/model_install_base.py
|
|
120
115
|
invokeai/app/services/model_install/model_install_default.py
|
|
116
|
+
invokeai/app/services/model_load/__init__.py
|
|
117
|
+
invokeai/app/services/model_load/model_load_base.py
|
|
118
|
+
invokeai/app/services/model_load/model_load_default.py
|
|
121
119
|
invokeai/app/services/model_manager/__init__.py
|
|
122
120
|
invokeai/app/services/model_manager/model_manager_base.py
|
|
121
|
+
invokeai/app/services/model_manager/model_manager_common.py
|
|
123
122
|
invokeai/app/services/model_manager/model_manager_default.py
|
|
124
123
|
invokeai/app/services/model_records/__init__.py
|
|
125
124
|
invokeai/app/services/model_records/model_records_base.py
|
|
@@ -128,6 +127,10 @@ invokeai/app/services/names/__init__.py
|
|
|
128
127
|
invokeai/app/services/names/names_base.py
|
|
129
128
|
invokeai/app/services/names/names_common.py
|
|
130
129
|
invokeai/app/services/names/names_default.py
|
|
130
|
+
invokeai/app/services/object_serializer/object_serializer_base.py
|
|
131
|
+
invokeai/app/services/object_serializer/object_serializer_common.py
|
|
132
|
+
invokeai/app/services/object_serializer/object_serializer_disk.py
|
|
133
|
+
invokeai/app/services/object_serializer/object_serializer_forward_cache.py
|
|
131
134
|
invokeai/app/services/session_processor/__init__.py
|
|
132
135
|
invokeai/app/services/session_processor/session_processor_base.py
|
|
133
136
|
invokeai/app/services/session_processor/session_processor_common.py
|
|
@@ -137,8 +140,8 @@ invokeai/app/services/session_queue/session_queue_base.py
|
|
|
137
140
|
invokeai/app/services/session_queue/session_queue_common.py
|
|
138
141
|
invokeai/app/services/session_queue/session_queue_sqlite.py
|
|
139
142
|
invokeai/app/services/shared/__init__.py
|
|
140
|
-
invokeai/app/services/shared/default_graphs.py
|
|
141
143
|
invokeai/app/services/shared/graph.py
|
|
144
|
+
invokeai/app/services/shared/invocation_context.py
|
|
142
145
|
invokeai/app/services/shared/pagination.py
|
|
143
146
|
invokeai/app/services/shared/sqlite/__init__.py
|
|
144
147
|
invokeai/app/services/shared/sqlite/sqlite_common.py
|
|
@@ -153,7 +156,8 @@ invokeai/app/services/shared/sqlite_migrator/migrations/migration_2.py
|
|
|
153
156
|
invokeai/app/services/shared/sqlite_migrator/migrations/migration_3.py
|
|
154
157
|
invokeai/app/services/shared/sqlite_migrator/migrations/migration_4.py
|
|
155
158
|
invokeai/app/services/shared/sqlite_migrator/migrations/migration_5.py
|
|
156
|
-
invokeai/app/services/shared/sqlite_migrator/migrations/
|
|
159
|
+
invokeai/app/services/shared/sqlite_migrator/migrations/migration_6.py
|
|
160
|
+
invokeai/app/services/shared/sqlite_migrator/migrations/migration_7.py
|
|
157
161
|
invokeai/app/services/urls/__init__.py
|
|
158
162
|
invokeai/app/services/urls/urls_base.py
|
|
159
163
|
invokeai/app/services/urls/urls_default.py
|
|
@@ -170,11 +174,9 @@ invokeai/app/services/workflow_records/default_workflows/Text to Image - SD1.5.j
|
|
|
170
174
|
invokeai/app/services/workflow_records/default_workflows/Text to Image with LoRA.json
|
|
171
175
|
invokeai/app/services/workflow_records/default_workflows/Tiled Upscaling (Beta).json
|
|
172
176
|
invokeai/app/shared/__init__.py
|
|
173
|
-
invokeai/app/shared/fields.py
|
|
174
177
|
invokeai/app/shared/models.py
|
|
175
178
|
invokeai/app/util/__init__.py
|
|
176
179
|
invokeai/app/util/controlnet_utils.py
|
|
177
|
-
invokeai/app/util/metadata.py
|
|
178
180
|
invokeai/app/util/metaenum.py
|
|
179
181
|
invokeai/app/util/misc.py
|
|
180
182
|
invokeai/app/util/model_exclude_null.py
|
|
@@ -184,6 +186,12 @@ invokeai/app/util/thumbnails.py
|
|
|
184
186
|
invokeai/app/util/ti_utils.py
|
|
185
187
|
invokeai/assets/fonts/inter/Inter-Regular.ttf
|
|
186
188
|
invokeai/backend/__init__.py
|
|
189
|
+
invokeai/backend/lora.py
|
|
190
|
+
invokeai/backend/model_patcher.py
|
|
191
|
+
invokeai/backend/raw_model.py
|
|
192
|
+
invokeai/backend/textual_inversion.py
|
|
193
|
+
invokeai/backend/embeddings/__init__.py
|
|
194
|
+
invokeai/backend/embeddings/embedding_base.py
|
|
187
195
|
invokeai/backend/image_util/__init__.py
|
|
188
196
|
invokeai/backend/image_util/cv2_inpaint.py
|
|
189
197
|
invokeai/backend/image_util/invisible_watermark.py
|
|
@@ -214,60 +222,58 @@ invokeai/backend/install/check_root.py
|
|
|
214
222
|
invokeai/backend/install/install_helper.py
|
|
215
223
|
invokeai/backend/install/invokeai_configure.py
|
|
216
224
|
invokeai/backend/install/legacy_arg_parsing.py
|
|
217
|
-
invokeai/backend/install/migrate_to_3.py
|
|
218
|
-
invokeai/backend/install/model_install_backend.py
|
|
219
225
|
invokeai/backend/ip_adapter/__init__.py
|
|
220
226
|
invokeai/backend/ip_adapter/attention_processor.py
|
|
221
227
|
invokeai/backend/ip_adapter/ip_adapter.py
|
|
222
228
|
invokeai/backend/ip_adapter/ip_attention_weights.py
|
|
223
229
|
invokeai/backend/ip_adapter/resampler.py
|
|
224
230
|
invokeai/backend/ip_adapter/unet_patcher.py
|
|
225
|
-
invokeai/backend/
|
|
226
|
-
invokeai/backend/model_management/convert_ckpt_to_diffusers.py
|
|
227
|
-
invokeai/backend/model_management/detect_baked_in_vae.py
|
|
228
|
-
invokeai/backend/model_management/libc_util.py
|
|
229
|
-
invokeai/backend/model_management/lora.py
|
|
230
|
-
invokeai/backend/model_management/memory_snapshot.py
|
|
231
|
-
invokeai/backend/model_management/model_cache.py
|
|
232
|
-
invokeai/backend/model_management/model_load_optimizations.py
|
|
233
|
-
invokeai/backend/model_management/model_manager.py
|
|
234
|
-
invokeai/backend/model_management/model_merge.py
|
|
235
|
-
invokeai/backend/model_management/model_probe.py
|
|
236
|
-
invokeai/backend/model_management/model_search.py
|
|
237
|
-
invokeai/backend/model_management/seamless.py
|
|
238
|
-
invokeai/backend/model_management/util.py
|
|
239
|
-
invokeai/backend/model_management/models/__init__.py
|
|
240
|
-
invokeai/backend/model_management/models/base.py
|
|
241
|
-
invokeai/backend/model_management/models/clip_vision.py
|
|
242
|
-
invokeai/backend/model_management/models/controlnet.py
|
|
243
|
-
invokeai/backend/model_management/models/ip_adapter.py
|
|
244
|
-
invokeai/backend/model_management/models/lora.py
|
|
245
|
-
invokeai/backend/model_management/models/sdxl.py
|
|
246
|
-
invokeai/backend/model_management/models/stable_diffusion.py
|
|
247
|
-
invokeai/backend/model_management/models/stable_diffusion_onnx.py
|
|
248
|
-
invokeai/backend/model_management/models/t2i_adapter.py
|
|
249
|
-
invokeai/backend/model_management/models/textual_inversion.py
|
|
250
|
-
invokeai/backend/model_management/models/vae.py
|
|
231
|
+
invokeai/backend/model_hash/model_hash.py
|
|
251
232
|
invokeai/backend/model_manager/__init__.py
|
|
252
233
|
invokeai/backend/model_manager/config.py
|
|
253
|
-
invokeai/backend/model_manager/
|
|
234
|
+
invokeai/backend/model_manager/convert_ckpt_to_diffusers.py
|
|
235
|
+
invokeai/backend/model_manager/libc_util.py
|
|
254
236
|
invokeai/backend/model_manager/merge.py
|
|
255
237
|
invokeai/backend/model_manager/probe.py
|
|
256
238
|
invokeai/backend/model_manager/search.py
|
|
239
|
+
invokeai/backend/model_manager/load/__init__.py
|
|
240
|
+
invokeai/backend/model_manager/load/load_base.py
|
|
241
|
+
invokeai/backend/model_manager/load/load_default.py
|
|
242
|
+
invokeai/backend/model_manager/load/memory_snapshot.py
|
|
243
|
+
invokeai/backend/model_manager/load/model_loader_registry.py
|
|
244
|
+
invokeai/backend/model_manager/load/model_util.py
|
|
245
|
+
invokeai/backend/model_manager/load/optimizations.py
|
|
246
|
+
invokeai/backend/model_manager/load/convert_cache/__init__.py
|
|
247
|
+
invokeai/backend/model_manager/load/convert_cache/convert_cache_base.py
|
|
248
|
+
invokeai/backend/model_manager/load/convert_cache/convert_cache_default.py
|
|
249
|
+
invokeai/backend/model_manager/load/model_cache/__init__.py
|
|
250
|
+
invokeai/backend/model_manager/load/model_cache/model_cache_base.py
|
|
251
|
+
invokeai/backend/model_manager/load/model_cache/model_cache_default.py
|
|
252
|
+
invokeai/backend/model_manager/load/model_cache/model_locker.py
|
|
253
|
+
invokeai/backend/model_manager/load/model_loaders/__init__.py
|
|
254
|
+
invokeai/backend/model_manager/load/model_loaders/controlnet.py
|
|
255
|
+
invokeai/backend/model_manager/load/model_loaders/generic_diffusers.py
|
|
256
|
+
invokeai/backend/model_manager/load/model_loaders/ip_adapter.py
|
|
257
|
+
invokeai/backend/model_manager/load/model_loaders/lora.py
|
|
258
|
+
invokeai/backend/model_manager/load/model_loaders/onnx.py
|
|
259
|
+
invokeai/backend/model_manager/load/model_loaders/stable_diffusion.py
|
|
260
|
+
invokeai/backend/model_manager/load/model_loaders/textual_inversion.py
|
|
261
|
+
invokeai/backend/model_manager/load/model_loaders/vae.py
|
|
257
262
|
invokeai/backend/model_manager/metadata/__init__.py
|
|
258
263
|
invokeai/backend/model_manager/metadata/metadata_base.py
|
|
259
|
-
invokeai/backend/model_manager/metadata/metadata_store.py
|
|
260
264
|
invokeai/backend/model_manager/metadata/fetch/__init__.py
|
|
261
|
-
invokeai/backend/model_manager/metadata/fetch/civitai.py
|
|
262
265
|
invokeai/backend/model_manager/metadata/fetch/fetch_base.py
|
|
263
266
|
invokeai/backend/model_manager/metadata/fetch/huggingface.py
|
|
267
|
+
invokeai/backend/model_manager/util/libc_util.py
|
|
268
|
+
invokeai/backend/model_manager/util/model_util.py
|
|
264
269
|
invokeai/backend/model_manager/util/select_hf_files.py
|
|
270
|
+
invokeai/backend/onnx/onnx_runtime.py
|
|
265
271
|
invokeai/backend/stable_diffusion/__init__.py
|
|
266
272
|
invokeai/backend/stable_diffusion/diffusers_pipeline.py
|
|
273
|
+
invokeai/backend/stable_diffusion/seamless.py
|
|
267
274
|
invokeai/backend/stable_diffusion/diffusion/__init__.py
|
|
268
275
|
invokeai/backend/stable_diffusion/diffusion/conditioning_data.py
|
|
269
276
|
invokeai/backend/stable_diffusion/diffusion/cross_attention_control.py
|
|
270
|
-
invokeai/backend/stable_diffusion/diffusion/cross_attention_map_saving.py
|
|
271
277
|
invokeai/backend/stable_diffusion/diffusion/shared_invokeai_diffusion.py
|
|
272
278
|
invokeai/backend/stable_diffusion/schedulers/__init__.py
|
|
273
279
|
invokeai/backend/stable_diffusion/schedulers/schedulers.py
|
|
@@ -284,11 +290,10 @@ invokeai/backend/util/hotfixes.py
|
|
|
284
290
|
invokeai/backend/util/log.py
|
|
285
291
|
invokeai/backend/util/logging.py
|
|
286
292
|
invokeai/backend/util/mps_fixes.py
|
|
293
|
+
invokeai/backend/util/silence_warnings.py
|
|
287
294
|
invokeai/backend/util/test_utils.py
|
|
288
295
|
invokeai/backend/util/util.py
|
|
289
296
|
invokeai/configs/INITIAL_MODELS.yaml
|
|
290
|
-
invokeai/configs/INITIAL_MODELS2.yaml
|
|
291
|
-
invokeai/configs/models.yaml.example
|
|
292
297
|
invokeai/configs/controlnet/cldm_v15.yaml
|
|
293
298
|
invokeai/configs/controlnet/cldm_v21.yaml
|
|
294
299
|
invokeai/configs/stable-diffusion/sd_xl_base.yaml
|
|
@@ -311,28 +316,25 @@ invokeai/frontend/install/import_images.py
|
|
|
311
316
|
invokeai/frontend/install/invokeai_configure.py
|
|
312
317
|
invokeai/frontend/install/invokeai_update.py
|
|
313
318
|
invokeai/frontend/install/model_install.py
|
|
314
|
-
invokeai/frontend/install/model_install2.py
|
|
315
319
|
invokeai/frontend/install/widgets.py
|
|
316
320
|
invokeai/frontend/merge/__init__.py
|
|
317
321
|
invokeai/frontend/merge/merge_diffusers.py
|
|
318
|
-
invokeai/frontend/merge/merge_diffusers2.py
|
|
319
322
|
invokeai/frontend/training/__init__.py
|
|
320
323
|
invokeai/frontend/training/textual_inversion.py
|
|
321
|
-
invokeai/frontend/training/textual_inversion2.py
|
|
322
324
|
invokeai/frontend/web/__init__.py
|
|
323
325
|
invokeai/frontend/web/dist/index.html
|
|
324
|
-
invokeai/frontend/web/dist/assets/App-
|
|
325
|
-
invokeai/frontend/web/dist/assets/App-
|
|
326
|
-
invokeai/frontend/web/dist/assets/ThemeLocaleProvider-
|
|
327
|
-
invokeai/frontend/web/dist/assets/ThemeLocaleProvider-
|
|
328
|
-
invokeai/frontend/web/dist/assets/index-
|
|
329
|
-
invokeai/frontend/web/dist/assets/inter-cyrillic-ext-wght-normal-
|
|
330
|
-
invokeai/frontend/web/dist/assets/inter-cyrillic-wght-normal-
|
|
331
|
-
invokeai/frontend/web/dist/assets/inter-greek-ext-wght-normal
|
|
332
|
-
invokeai/frontend/web/dist/assets/inter-greek-wght-normal-
|
|
333
|
-
invokeai/frontend/web/dist/assets/inter-latin-ext-wght-normal-
|
|
334
|
-
invokeai/frontend/web/dist/assets/inter-latin-wght-normal-
|
|
335
|
-
invokeai/frontend/web/dist/assets/inter-vietnamese-wght-normal-
|
|
326
|
+
invokeai/frontend/web/dist/assets/App-DI6oCUg0.css
|
|
327
|
+
invokeai/frontend/web/dist/assets/App-DvDxXs2J.js
|
|
328
|
+
invokeai/frontend/web/dist/assets/ThemeLocaleProvider-D652FVM6.css
|
|
329
|
+
invokeai/frontend/web/dist/assets/ThemeLocaleProvider-DHi38vMA.js
|
|
330
|
+
invokeai/frontend/web/dist/assets/index-DALs_7tf.js
|
|
331
|
+
invokeai/frontend/web/dist/assets/inter-cyrillic-ext-wght-normal-DIEz8p5i.woff2
|
|
332
|
+
invokeai/frontend/web/dist/assets/inter-cyrillic-wght-normal-BmJJXa8e.woff2
|
|
333
|
+
invokeai/frontend/web/dist/assets/inter-greek-ext-wght-normal-D5AYLNiq.woff2
|
|
334
|
+
invokeai/frontend/web/dist/assets/inter-greek-wght-normal-DyIDNIyN.woff2
|
|
335
|
+
invokeai/frontend/web/dist/assets/inter-latin-ext-wght-normal-CN1pIXkb.woff2
|
|
336
|
+
invokeai/frontend/web/dist/assets/inter-latin-wght-normal-BgVq2Tq4.woff2
|
|
337
|
+
invokeai/frontend/web/dist/assets/inter-vietnamese-wght-normal-_GQuwPVU.woff2
|
|
336
338
|
invokeai/frontend/web/dist/assets/images/invoke-avatar-circle.svg
|
|
337
339
|
invokeai/frontend/web/dist/assets/images/invoke-avatar-square.svg
|
|
338
340
|
invokeai/frontend/web/dist/assets/images/invoke-favicon.png
|
|
@@ -378,6 +380,8 @@ invokeai/frontend/web/dist/locales/uk.json
|
|
|
378
380
|
invokeai/frontend/web/dist/locales/vi.json
|
|
379
381
|
invokeai/frontend/web/dist/locales/zh_CN.json
|
|
380
382
|
invokeai/frontend/web/dist/locales/zh_Hant.json
|
|
383
|
+
invokeai/frontend/web/scripts/clean_translations.py
|
|
381
384
|
invokeai/frontend/web/static/docs/invoke-favicon-docs.svg
|
|
385
|
+
invokeai/invocation_api/__init__.py
|
|
382
386
|
invokeai/version/__init__.py
|
|
383
387
|
invokeai/version/invokeai_version.py
|
|
@@ -3,8 +3,7 @@ configure_invokeai.py = invokeai.frontend.install.invokeai_configure:invokeai_co
|
|
|
3
3
|
invokeai-configure = invokeai.frontend.install.invokeai_configure:invokeai_configure
|
|
4
4
|
invokeai-db-maintenance = invokeai.backend.util.db_maintenance:main
|
|
5
5
|
invokeai-import-images = invokeai.frontend.install.import_images:main
|
|
6
|
-
invokeai-merge = invokeai.frontend.merge:
|
|
7
|
-
invokeai-merge2 = invokeai.frontend.merge.merge_diffusers2:main
|
|
6
|
+
invokeai-merge = invokeai.frontend.merge.merge_diffusers:main
|
|
8
7
|
invokeai-metadata = invokeai.backend.image_util.invoke_metadata:main
|
|
9
8
|
invokeai-migrate3 = invokeai.backend.install.migrate_to_3:main
|
|
10
9
|
invokeai-model-install = invokeai.frontend.install.model_install:main
|
|
@@ -16,23 +16,24 @@ torch==2.1.2
|
|
|
16
16
|
torchmetrics==0.11.4
|
|
17
17
|
torchsde==0.2.6
|
|
18
18
|
torchvision==0.16.2
|
|
19
|
-
transformers==4.
|
|
20
|
-
fastapi-events==0.
|
|
21
|
-
fastapi==0.
|
|
22
|
-
huggingface-hub==0.
|
|
23
|
-
pydantic-settings==2.1
|
|
24
|
-
pydantic==2.6.
|
|
19
|
+
transformers==4.38.2
|
|
20
|
+
fastapi-events==0.11.0
|
|
21
|
+
fastapi==0.110.0
|
|
22
|
+
huggingface-hub==0.21.3
|
|
23
|
+
pydantic-settings==2.2.1
|
|
24
|
+
pydantic==2.6.3
|
|
25
25
|
python-socketio==5.11.1
|
|
26
|
-
uvicorn[standard]==0.
|
|
26
|
+
uvicorn[standard]==0.28.0
|
|
27
27
|
albumentations
|
|
28
|
+
blake3
|
|
28
29
|
click
|
|
29
30
|
datasets
|
|
31
|
+
Deprecated
|
|
30
32
|
dnspython~=2.4.0
|
|
31
33
|
dynamicprompts
|
|
32
34
|
easing-functions
|
|
33
35
|
einops
|
|
34
36
|
facexlib
|
|
35
|
-
imohash
|
|
36
37
|
matplotlib
|
|
37
38
|
npyscreen
|
|
38
39
|
omegaconf
|
|
@@ -66,9 +67,10 @@ pipdeptree
|
|
|
66
67
|
twine
|
|
67
68
|
|
|
68
69
|
[docs]
|
|
69
|
-
mkdocs-material
|
|
70
|
+
mkdocs-material>=9.5.13
|
|
70
71
|
mkdocs-git-revision-date-localized-plugin
|
|
71
|
-
mkdocs-redirects
|
|
72
|
+
mkdocs-redirects
|
|
73
|
+
mkdocstrings[python]>=0.24.1
|
|
72
74
|
|
|
73
75
|
[onnx]
|
|
74
76
|
onnxruntime
|
|
@@ -80,14 +82,16 @@ onnxruntime-gpu
|
|
|
80
82
|
onnxruntime-directml
|
|
81
83
|
|
|
82
84
|
[test]
|
|
83
|
-
ruff
|
|
85
|
+
ruff
|
|
84
86
|
ruff-lsp
|
|
85
87
|
mypy
|
|
86
88
|
pre-commit
|
|
87
89
|
pytest>6.0.0
|
|
88
90
|
pytest-cov
|
|
91
|
+
pytest-timeout
|
|
89
92
|
pytest-datadir
|
|
90
93
|
requests_testadapter
|
|
94
|
+
httpx
|
|
91
95
|
|
|
92
96
|
[xformers]
|
|
93
97
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: InvokeAI
|
|
3
|
-
Version:
|
|
3
|
+
Version: 4.0.0rc2
|
|
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
|
|
@@ -2,9 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
from logging import Logger
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
import torch
|
|
6
|
+
|
|
7
|
+
from invokeai.app.services.object_serializer.object_serializer_disk import ObjectSerializerDisk
|
|
8
|
+
from invokeai.app.services.object_serializer.object_serializer_forward_cache import ObjectSerializerForwardCache
|
|
6
9
|
from invokeai.app.services.shared.sqlite.sqlite_util import init_db
|
|
7
|
-
from invokeai.backend.
|
|
10
|
+
from invokeai.backend.stable_diffusion.diffusion.conditioning_data import ConditioningFieldData
|
|
8
11
|
from invokeai.backend.util.logging import InvokeAILogger
|
|
9
12
|
from invokeai.version.invokeai_version import __version__
|
|
10
13
|
|
|
@@ -12,26 +15,22 @@ from ..services.board_image_records.board_image_records_sqlite import SqliteBoar
|
|
|
12
15
|
from ..services.board_images.board_images_default import BoardImagesService
|
|
13
16
|
from ..services.board_records.board_records_sqlite import SqliteBoardRecordStorage
|
|
14
17
|
from ..services.boards.boards_default import BoardService
|
|
18
|
+
from ..services.bulk_download.bulk_download_default import BulkDownloadService
|
|
15
19
|
from ..services.config import InvokeAIAppConfig
|
|
16
20
|
from ..services.download import DownloadQueueService
|
|
17
21
|
from ..services.image_files.image_files_disk import DiskImageFileStorage
|
|
18
22
|
from ..services.image_records.image_records_sqlite import SqliteImageRecordStorage
|
|
19
23
|
from ..services.images.images_default import ImageService
|
|
20
24
|
from ..services.invocation_cache.invocation_cache_memory import MemoryInvocationCache
|
|
21
|
-
from ..services.invocation_processor.invocation_processor_default import DefaultInvocationProcessor
|
|
22
|
-
from ..services.invocation_queue.invocation_queue_memory import MemoryInvocationQueue
|
|
23
25
|
from ..services.invocation_services import InvocationServices
|
|
24
26
|
from ..services.invocation_stats.invocation_stats_default import InvocationStatsService
|
|
25
27
|
from ..services.invoker import Invoker
|
|
26
|
-
from ..services.
|
|
27
|
-
from ..services.latents_storage.latents_storage_forward_cache import ForwardCacheLatentsStorage
|
|
28
|
-
from ..services.model_install import ModelInstallService
|
|
28
|
+
from ..services.model_images.model_images_default import ModelImageFileStorageDisk
|
|
29
29
|
from ..services.model_manager.model_manager_default import ModelManagerService
|
|
30
30
|
from ..services.model_records import ModelRecordServiceSQL
|
|
31
31
|
from ..services.names.names_default import SimpleNameService
|
|
32
32
|
from ..services.session_processor.session_processor_default import DefaultSessionProcessor
|
|
33
33
|
from ..services.session_queue.session_queue_sqlite import SqliteSessionQueue
|
|
34
|
-
from ..services.shared.graph import GraphExecutionState
|
|
35
34
|
from ..services.urls.urls_default import LocalUrlService
|
|
36
35
|
from ..services.workflow_records.workflow_records_sqlite import SqliteWorkflowRecordsStorage
|
|
37
36
|
from .events import FastAPIEventService
|
|
@@ -68,8 +67,13 @@ class ApiDependencies:
|
|
|
68
67
|
logger.debug(f"Internet connectivity is {config.internet_available}")
|
|
69
68
|
|
|
70
69
|
output_folder = config.output_path
|
|
70
|
+
if output_folder is None:
|
|
71
|
+
raise ValueError("Output folder is not set")
|
|
72
|
+
|
|
71
73
|
image_files = DiskImageFileStorage(f"{output_folder}/images")
|
|
72
74
|
|
|
75
|
+
model_images_folder = config.models_path
|
|
76
|
+
|
|
73
77
|
db = init_db(config=config, logger=logger, image_files=image_files)
|
|
74
78
|
|
|
75
79
|
configuration = config
|
|
@@ -80,26 +84,26 @@ class ApiDependencies:
|
|
|
80
84
|
board_records = SqliteBoardRecordStorage(db=db)
|
|
81
85
|
boards = BoardService()
|
|
82
86
|
events = FastAPIEventService(event_handler_id)
|
|
83
|
-
|
|
87
|
+
bulk_download = BulkDownloadService()
|
|
84
88
|
image_records = SqliteImageRecordStorage(db=db)
|
|
85
89
|
images = ImageService()
|
|
86
90
|
invocation_cache = MemoryInvocationCache(max_cache_size=config.node_cache_size)
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
91
|
+
tensors = ObjectSerializerForwardCache(
|
|
92
|
+
ObjectSerializerDisk[torch.Tensor](output_folder / "tensors", ephemeral=True)
|
|
93
|
+
)
|
|
94
|
+
conditioning = ObjectSerializerForwardCache(
|
|
95
|
+
ObjectSerializerDisk[ConditioningFieldData](output_folder / "conditioning", ephemeral=True)
|
|
96
|
+
)
|
|
90
97
|
download_queue_service = DownloadQueueService(event_bus=events)
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
app_config=
|
|
94
|
-
|
|
98
|
+
model_images_service = ModelImageFileStorageDisk(model_images_folder / "model_images")
|
|
99
|
+
model_manager = ModelManagerService.build_model_manager(
|
|
100
|
+
app_config=configuration,
|
|
101
|
+
model_record_service=ModelRecordServiceSQL(db=db),
|
|
95
102
|
download_queue=download_queue_service,
|
|
96
|
-
|
|
97
|
-
event_bus=events,
|
|
103
|
+
events=events,
|
|
98
104
|
)
|
|
99
105
|
names = SimpleNameService()
|
|
100
106
|
performance_statistics = InvocationStatsService()
|
|
101
|
-
processor = DefaultInvocationProcessor()
|
|
102
|
-
queue = MemoryInvocationQueue()
|
|
103
107
|
session_processor = DefaultSessionProcessor()
|
|
104
108
|
session_queue = SqliteSessionQueue(db=db)
|
|
105
109
|
urls = LocalUrlService()
|
|
@@ -110,27 +114,25 @@ class ApiDependencies:
|
|
|
110
114
|
board_images=board_images,
|
|
111
115
|
board_records=board_records,
|
|
112
116
|
boards=boards,
|
|
117
|
+
bulk_download=bulk_download,
|
|
113
118
|
configuration=configuration,
|
|
114
119
|
events=events,
|
|
115
|
-
graph_execution_manager=graph_execution_manager,
|
|
116
120
|
image_files=image_files,
|
|
117
121
|
image_records=image_records,
|
|
118
122
|
images=images,
|
|
119
123
|
invocation_cache=invocation_cache,
|
|
120
|
-
latents=latents,
|
|
121
124
|
logger=logger,
|
|
125
|
+
model_images=model_images_service,
|
|
122
126
|
model_manager=model_manager,
|
|
123
|
-
model_records=model_record_service,
|
|
124
127
|
download_queue=download_queue_service,
|
|
125
|
-
model_install=model_install_service,
|
|
126
128
|
names=names,
|
|
127
129
|
performance_statistics=performance_statistics,
|
|
128
|
-
processor=processor,
|
|
129
|
-
queue=queue,
|
|
130
130
|
session_processor=session_processor,
|
|
131
131
|
session_queue=session_queue,
|
|
132
132
|
urls=urls,
|
|
133
133
|
workflow_records=workflow_records,
|
|
134
|
+
tensors=tensors,
|
|
135
|
+
conditioning=conditioning,
|
|
134
136
|
)
|
|
135
137
|
|
|
136
138
|
ApiDependencies.invoker = Invoker(services)
|
|
@@ -36,7 +36,7 @@ async def list_downloads() -> List[DownloadJob]:
|
|
|
36
36
|
400: {"description": "Bad request"},
|
|
37
37
|
},
|
|
38
38
|
)
|
|
39
|
-
async def prune_downloads():
|
|
39
|
+
async def prune_downloads() -> Response:
|
|
40
40
|
"""Prune completed and errored jobs."""
|
|
41
41
|
queue = ApiDependencies.invoker.services.download_queue
|
|
42
42
|
queue.prune_jobs()
|
|
@@ -55,7 +55,7 @@ async def download(
|
|
|
55
55
|
) -> DownloadJob:
|
|
56
56
|
"""Download the source URL to the file or directory indicted in dest."""
|
|
57
57
|
queue = ApiDependencies.invoker.services.download_queue
|
|
58
|
-
return queue.download(source, dest, priority, access_token)
|
|
58
|
+
return queue.download(source, Path(dest), priority, access_token)
|
|
59
59
|
|
|
60
60
|
|
|
61
61
|
@download_queue_router.get(
|
|
@@ -87,7 +87,7 @@ async def get_download_job(
|
|
|
87
87
|
)
|
|
88
88
|
async def cancel_download_job(
|
|
89
89
|
id: int = Path(description="ID of the download job to cancel."),
|
|
90
|
-
):
|
|
90
|
+
) -> Response:
|
|
91
91
|
"""Cancel a download job using its ID."""
|
|
92
92
|
try:
|
|
93
93
|
queue = ApiDependencies.invoker.services.download_queue
|
|
@@ -105,7 +105,7 @@ async def cancel_download_job(
|
|
|
105
105
|
204: {"description": "Download jobs have been cancelled"},
|
|
106
106
|
},
|
|
107
107
|
)
|
|
108
|
-
async def cancel_all_download_jobs():
|
|
108
|
+
async def cancel_all_download_jobs() -> Response:
|
|
109
109
|
"""Cancel all download jobs."""
|
|
110
110
|
ApiDependencies.invoker.services.download_queue.cancel_all_jobs()
|
|
111
111
|
return Response(status_code=204)
|
|
@@ -2,13 +2,13 @@ import io
|
|
|
2
2
|
import traceback
|
|
3
3
|
from typing import Optional
|
|
4
4
|
|
|
5
|
-
from fastapi import Body, HTTPException, Path, Query, Request, Response, UploadFile
|
|
5
|
+
from fastapi import BackgroundTasks, Body, HTTPException, Path, Query, Request, Response, UploadFile
|
|
6
6
|
from fastapi.responses import FileResponse
|
|
7
7
|
from fastapi.routing import APIRouter
|
|
8
8
|
from PIL import Image
|
|
9
9
|
from pydantic import BaseModel, Field, ValidationError
|
|
10
10
|
|
|
11
|
-
from invokeai.app.invocations.
|
|
11
|
+
from invokeai.app.invocations.fields import MetadataField, MetadataFieldValidator
|
|
12
12
|
from invokeai.app.services.image_records.image_records_common import ImageCategory, ImageRecordChanges, ResourceOrigin
|
|
13
13
|
from invokeai.app.services.images.images_common import ImageDTO, ImageUrlsDTO
|
|
14
14
|
from invokeai.app.services.shared.pagination import OffsetPaginatedResults
|
|
@@ -375,16 +375,67 @@ async def unstar_images_in_list(
|
|
|
375
375
|
|
|
376
376
|
class ImagesDownloaded(BaseModel):
|
|
377
377
|
response: Optional[str] = Field(
|
|
378
|
-
description="
|
|
378
|
+
default=None, description="The message to display to the user when images begin downloading"
|
|
379
|
+
)
|
|
380
|
+
bulk_download_item_name: Optional[str] = Field(
|
|
381
|
+
default=None, description="The name of the bulk download item for which events will be emitted"
|
|
379
382
|
)
|
|
380
383
|
|
|
381
384
|
|
|
382
|
-
@images_router.post(
|
|
385
|
+
@images_router.post(
|
|
386
|
+
"/download", operation_id="download_images_from_list", response_model=ImagesDownloaded, status_code=202
|
|
387
|
+
)
|
|
383
388
|
async def download_images_from_list(
|
|
384
|
-
|
|
389
|
+
background_tasks: BackgroundTasks,
|
|
390
|
+
image_names: Optional[list[str]] = Body(
|
|
391
|
+
default=None, description="The list of names of images to download", embed=True
|
|
392
|
+
),
|
|
385
393
|
board_id: Optional[str] = Body(
|
|
386
|
-
default=None, description="The board from which image should be downloaded
|
|
394
|
+
default=None, description="The board from which image should be downloaded", embed=True
|
|
387
395
|
),
|
|
388
396
|
) -> ImagesDownloaded:
|
|
389
|
-
|
|
390
|
-
|
|
397
|
+
if (image_names is None or len(image_names) == 0) and board_id is None:
|
|
398
|
+
raise HTTPException(status_code=400, detail="No images or board id specified.")
|
|
399
|
+
bulk_download_item_id: str = ApiDependencies.invoker.services.bulk_download.generate_item_id(board_id)
|
|
400
|
+
|
|
401
|
+
background_tasks.add_task(
|
|
402
|
+
ApiDependencies.invoker.services.bulk_download.handler,
|
|
403
|
+
image_names,
|
|
404
|
+
board_id,
|
|
405
|
+
bulk_download_item_id,
|
|
406
|
+
)
|
|
407
|
+
return ImagesDownloaded(bulk_download_item_name=bulk_download_item_id + ".zip")
|
|
408
|
+
|
|
409
|
+
|
|
410
|
+
@images_router.api_route(
|
|
411
|
+
"/download/{bulk_download_item_name}",
|
|
412
|
+
methods=["GET"],
|
|
413
|
+
operation_id="get_bulk_download_item",
|
|
414
|
+
response_class=Response,
|
|
415
|
+
responses={
|
|
416
|
+
200: {
|
|
417
|
+
"description": "Return the complete bulk download item",
|
|
418
|
+
"content": {"application/zip": {}},
|
|
419
|
+
},
|
|
420
|
+
404: {"description": "Image not found"},
|
|
421
|
+
},
|
|
422
|
+
)
|
|
423
|
+
async def get_bulk_download_item(
|
|
424
|
+
background_tasks: BackgroundTasks,
|
|
425
|
+
bulk_download_item_name: str = Path(description="The bulk_download_item_name of the bulk download item to get"),
|
|
426
|
+
) -> FileResponse:
|
|
427
|
+
"""Gets a bulk download zip file"""
|
|
428
|
+
try:
|
|
429
|
+
path = ApiDependencies.invoker.services.bulk_download.get_path(bulk_download_item_name)
|
|
430
|
+
|
|
431
|
+
response = FileResponse(
|
|
432
|
+
path,
|
|
433
|
+
media_type="application/zip",
|
|
434
|
+
filename=bulk_download_item_name,
|
|
435
|
+
content_disposition_type="inline",
|
|
436
|
+
)
|
|
437
|
+
response.headers["Cache-Control"] = f"max-age={IMAGE_MAX_AGE}"
|
|
438
|
+
background_tasks.add_task(ApiDependencies.invoker.services.bulk_download.delete, bulk_download_item_name)
|
|
439
|
+
return response
|
|
440
|
+
except Exception:
|
|
441
|
+
raise HTTPException(status_code=404)
|