├── .github └── FUNDING.yml ├── .gitignore ├── CONTRIBUTING.md ├── LICENSE ├── LICENSE-pytorch.txt ├── LICENSE-safetensors.txt ├── README.md ├── examples ├── add_perpendicular.py ├── basic_merge.py ├── binomial_dropout_merge.py ├── custom_merge_method.py ├── in_memory_merge.py ├── lora_merge.py ├── n_average.py ├── recipe_deserialize.py ├── recipe_serialize.py ├── rotate.py ├── split_unet_text_encoder.py └── ties_add_difference.py ├── media ├── did-you-see-something.PNG └── memory-gone.PNG ├── pyproject.toml ├── requirements-scripts.txt ├── requirements.txt ├── scripts ├── convert_ckpt_to_safetensors.py ├── dump_keys.py ├── dump_keys_gui.py └── yaml_from_safetensors.py ├── sd_mecha ├── __init__.py ├── conversion.py ├── extensions │ ├── __init__.py │ ├── builtin │ │ ├── lycoris.py │ │ ├── merge_methods │ │ │ ├── __init__.py │ │ │ ├── clamp.py │ │ │ ├── cosine.py │ │ │ ├── crossover.py │ │ │ ├── ema.py │ │ │ ├── linear.py │ │ │ ├── logistics.py │ │ │ ├── slicing.py │ │ │ ├── svd.py │ │ │ └── ties_sum.py │ │ └── model_configs │ │ │ ├── __init__.py │ │ │ ├── convert_flux.py │ │ │ ├── convert_huggingface_sd_vae_to_original.py │ │ │ ├── convert_sd1_blocks.py │ │ │ ├── convert_sd1_kohya_to_original.py │ │ │ ├── convert_sdxl_blocks.py │ │ │ ├── convert_sdxl_diffusers_unet_to_original.py │ │ │ ├── convert_sdxl_kohya_to_original.py │ │ │ ├── flux-flux.yaml │ │ │ ├── flux-flux_diffuser_only.yaml │ │ │ ├── sd1-kohya.yaml │ │ │ ├── sd1-ldm.yaml │ │ │ ├── sd1-supermerger_blocks.yaml │ │ │ ├── sd3-comfyui.yaml │ │ │ ├── sdxl-diffusers_unet_only.yaml │ │ │ ├── sdxl-kohya.yaml │ │ │ ├── sdxl-sgm.yaml │ │ │ └── sdxl-supermerger_blocks.yaml │ ├── merge_methods.py │ ├── merge_spaces.py │ ├── model_configs.py │ └── model_formats.py ├── helpers.py ├── merge_method_wrappers.py ├── merging.py ├── recipe_nodes.py ├── serialization.py ├── streaming.py └── typing_.py └── tests ├── extensions ├── __init__.py └── test_merge_methods.py └── merge_methods ├── __init__.py ├── test_crossover.py ├── test_della.py ├── test_geometric_median.py ├── test_modelstock.py └── test_ties.py /.github/FUNDING.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/.github/FUNDING.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/.gitignore -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/LICENSE -------------------------------------------------------------------------------- /LICENSE-pytorch.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/LICENSE-pytorch.txt -------------------------------------------------------------------------------- /LICENSE-safetensors.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/LICENSE-safetensors.txt -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/README.md -------------------------------------------------------------------------------- /examples/add_perpendicular.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/examples/add_perpendicular.py -------------------------------------------------------------------------------- /examples/basic_merge.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/examples/basic_merge.py -------------------------------------------------------------------------------- /examples/binomial_dropout_merge.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/examples/binomial_dropout_merge.py -------------------------------------------------------------------------------- /examples/custom_merge_method.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/examples/custom_merge_method.py -------------------------------------------------------------------------------- /examples/in_memory_merge.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/examples/in_memory_merge.py -------------------------------------------------------------------------------- /examples/lora_merge.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/examples/lora_merge.py -------------------------------------------------------------------------------- /examples/n_average.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/examples/n_average.py -------------------------------------------------------------------------------- /examples/recipe_deserialize.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/examples/recipe_deserialize.py -------------------------------------------------------------------------------- /examples/recipe_serialize.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/examples/recipe_serialize.py -------------------------------------------------------------------------------- /examples/rotate.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/examples/rotate.py -------------------------------------------------------------------------------- /examples/split_unet_text_encoder.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/examples/split_unet_text_encoder.py -------------------------------------------------------------------------------- /examples/ties_add_difference.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/examples/ties_add_difference.py -------------------------------------------------------------------------------- /media/did-you-see-something.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/media/did-you-see-something.PNG -------------------------------------------------------------------------------- /media/memory-gone.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/media/memory-gone.PNG -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/pyproject.toml -------------------------------------------------------------------------------- /requirements-scripts.txt: -------------------------------------------------------------------------------- 1 | -e . 2 | tkinterdnd2 3 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | . 2 | -------------------------------------------------------------------------------- /scripts/convert_ckpt_to_safetensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/scripts/convert_ckpt_to_safetensors.py -------------------------------------------------------------------------------- /scripts/dump_keys.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/scripts/dump_keys.py -------------------------------------------------------------------------------- /scripts/dump_keys_gui.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/scripts/dump_keys_gui.py -------------------------------------------------------------------------------- /scripts/yaml_from_safetensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/scripts/yaml_from_safetensors.py -------------------------------------------------------------------------------- /sd_mecha/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/__init__.py -------------------------------------------------------------------------------- /sd_mecha/conversion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/conversion.py -------------------------------------------------------------------------------- /sd_mecha/extensions/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/__init__.py -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/lycoris.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/lycoris.py -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/merge_methods/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/merge_methods/__init__.py -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/merge_methods/clamp.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/merge_methods/clamp.py -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/merge_methods/cosine.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/merge_methods/cosine.py -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/merge_methods/crossover.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/merge_methods/crossover.py -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/merge_methods/ema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/merge_methods/ema.py -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/merge_methods/linear.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/merge_methods/linear.py -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/merge_methods/logistics.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/merge_methods/logistics.py -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/merge_methods/slicing.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/merge_methods/slicing.py -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/merge_methods/svd.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/merge_methods/svd.py -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/merge_methods/ties_sum.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/merge_methods/ties_sum.py -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/model_configs/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/model_configs/__init__.py -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/model_configs/convert_flux.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/model_configs/convert_flux.py -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/model_configs/convert_huggingface_sd_vae_to_original.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/model_configs/convert_huggingface_sd_vae_to_original.py -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/model_configs/convert_sd1_blocks.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/model_configs/convert_sd1_blocks.py -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/model_configs/convert_sd1_kohya_to_original.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/model_configs/convert_sd1_kohya_to_original.py -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/model_configs/convert_sdxl_blocks.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/model_configs/convert_sdxl_blocks.py -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/model_configs/convert_sdxl_diffusers_unet_to_original.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/model_configs/convert_sdxl_diffusers_unet_to_original.py -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/model_configs/convert_sdxl_kohya_to_original.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/model_configs/convert_sdxl_kohya_to_original.py -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/model_configs/flux-flux.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/model_configs/flux-flux.yaml -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/model_configs/flux-flux_diffuser_only.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/model_configs/flux-flux_diffuser_only.yaml -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/model_configs/sd1-kohya.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/model_configs/sd1-kohya.yaml -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/model_configs/sd1-ldm.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/model_configs/sd1-ldm.yaml -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/model_configs/sd1-supermerger_blocks.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/model_configs/sd1-supermerger_blocks.yaml -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/model_configs/sd3-comfyui.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/model_configs/sd3-comfyui.yaml -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/model_configs/sdxl-diffusers_unet_only.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/model_configs/sdxl-diffusers_unet_only.yaml -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/model_configs/sdxl-kohya.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/model_configs/sdxl-kohya.yaml -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/model_configs/sdxl-sgm.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/model_configs/sdxl-sgm.yaml -------------------------------------------------------------------------------- /sd_mecha/extensions/builtin/model_configs/sdxl-supermerger_blocks.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/builtin/model_configs/sdxl-supermerger_blocks.yaml -------------------------------------------------------------------------------- /sd_mecha/extensions/merge_methods.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/merge_methods.py -------------------------------------------------------------------------------- /sd_mecha/extensions/merge_spaces.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/merge_spaces.py -------------------------------------------------------------------------------- /sd_mecha/extensions/model_configs.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/model_configs.py -------------------------------------------------------------------------------- /sd_mecha/extensions/model_formats.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/extensions/model_formats.py -------------------------------------------------------------------------------- /sd_mecha/helpers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/helpers.py -------------------------------------------------------------------------------- /sd_mecha/merge_method_wrappers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/merge_method_wrappers.py -------------------------------------------------------------------------------- /sd_mecha/merging.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/merging.py -------------------------------------------------------------------------------- /sd_mecha/recipe_nodes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/recipe_nodes.py -------------------------------------------------------------------------------- /sd_mecha/serialization.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/serialization.py -------------------------------------------------------------------------------- /sd_mecha/streaming.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/streaming.py -------------------------------------------------------------------------------- /sd_mecha/typing_.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/sd_mecha/typing_.py -------------------------------------------------------------------------------- /tests/extensions/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/extensions/test_merge_methods.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/tests/extensions/test_merge_methods.py -------------------------------------------------------------------------------- /tests/merge_methods/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/merge_methods/test_crossover.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/tests/merge_methods/test_crossover.py -------------------------------------------------------------------------------- /tests/merge_methods/test_della.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/tests/merge_methods/test_della.py -------------------------------------------------------------------------------- /tests/merge_methods/test_geometric_median.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/tests/merge_methods/test_geometric_median.py -------------------------------------------------------------------------------- /tests/merge_methods/test_modelstock.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/tests/merge_methods/test_modelstock.py -------------------------------------------------------------------------------- /tests/merge_methods/test_ties.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ljleb/sd-mecha/HEAD/tests/merge_methods/test_ties.py --------------------------------------------------------------------------------