hako-mikan / sd-webui-supermerger

model merge extention for stable diffusion web ui
GNU Affero General Public License v3.0
753 stars 112 forks source link

LoRAのdim再構築マージができなくなっている? #284

Closed JujoHotaru closed 1 year ago

JujoHotaru commented 1 year ago

いつもお世話になっております。

SuperMerger本日時点の最新版+WebUI1.6.0で、LoRAの単純なマージをしていたのですが、「remake dimension」が「No」であれば問題なく動作するものの、dimを指定(16など)して「Merge LoRAs」ボタンでマージしようとするとエラーが発生するようです。

change demension to  16
Traceback (most recent call last):
  File "C:\stable-diffusion-webui\extensions\sd-webui-supermerger\scripts\mergers\pluslora.py", line 374, in lmerge
    sd = merge_lora_models_dim(ln, lr, dim,settings)
TypeError: merge_lora_models_dim() missing 1 required positional argument: 'isv2'

と出ました。

また、2つのモデルの差分からのLoRA作成を実行したところ、こちらもエラーになるようでした。

Loading extracted LoRA weights: <All keys matched successfully>
Traceback (most recent call last):
  File "C:\stable-diffusion-webui\venv\lib\site-packages\gradio\routes.py", line 488, in run_predict
    output = await app.get_blocks().process_api(
  File "C:\stable-diffusion-webui\venv\lib\site-packages\gradio\blocks.py", line 1431, in process_api
    result = await self.call_function(
  File "C:\stable-diffusion-webui\venv\lib\site-packages\gradio\blocks.py", line 1103, in call_function
    prediction = await anyio.to_thread.run_sync(
  File "C:\stable-diffusion-webui\venv\lib\site-packages\anyio\to_thread.py", line 31, in run_sync
    return await get_asynclib().run_sync_in_worker_thread(
  File "C:\stable-diffusion-webui\venv\lib\site-packages\anyio\_backends\_asyncio.py", line 937, in run_sync_in_worker_thread
    return await future
  File "C:\stable-diffusion-webui\venv\lib\site-packages\anyio\_backends\_asyncio.py", line 867, in run
    result = context.run(func, *args)
  File "C:\stable-diffusion-webui\venv\lib\site-packages\gradio\utils.py", line 707, in wrapper
    response = f(*args, **kwargs)
  File "C:\stable-diffusion-webui\extensions\sd-webui-supermerger\scripts\mergers\pluslora.py", line 286, in makelora
    result = ext.svd(args)
  File "C:\stable-diffusion-webui\extensions\sd-webui-supermerger\scripts\kohyas\extract_lora_from_models.py", line 206, in svd
    lora_network_save.save_weights(args.save_to, save_dtype, metadata)
  File "C:\stable-diffusion-webui\extensions\sd-webui-supermerger\scripts\kohyas\lora.py", line 1091, in save_weights
    from scripts.kohyas import train_util
ImportError: cannot import name 'train_util' from 'scripts.kohyas' (unknown location)
hako-mikan commented 1 year ago

修正しました。

JujoHotaru commented 1 year ago

遅くなりました、動作確認いたしました。修正ご対応ありがとうございました。