見出し画像

ComfyUIのLoRAやcheckPointを他のWEBUIから利用するextra_model_paths.yamlの注意点

extra_model_paths.yamlにてLoRAやcheckPointをa1111のWEBUIから利用する際に自分でコードを変更と一度記載したものに#などを入れて履歴をコメントを入れています。
そしてすべて書き終えて、再度ComfyUIを起動すると起動できなくなりました。
その際にでたエラーと対象方法の備忘録。

extra_model_paths.yamlで起きたエラー

おおもとのエラーの根本は下記が一番わかりやすい内容です。

load_extra_path_config(extra_model_paths_config_path) File "C:\~ComfyUI_windows_portable\ComfyUI\main.py", line 171, in load_extra_path_config config = yaml.safe_load(stream)

UnicodeDecodeError: 'cp932' codec can't decode byte 0xef in position 291: illegal multibyte sequence

エラーの内容としては、yaml.safe_load 関数が YAML ファイルを読み込もうとした際に、ファイルのエンコーディングが正しく認識されなかったために発生しています。
具体的には、cp932 エンコーディング(Shift-JIS)で読み込もうとしたファイルに、cp932 では解釈できないバイトシーケンスが含まれていることが原因です。

UnicodeDecodeErrorの根本的なエラー部分

extra_model_paths.yamlの中身を下記コードで実施していました。

EasySdxlWebUi:
    base_path: C:~\EasySdxlWebUi/ #a1111の場合は、上記部分をコメントアウトを外す(2024.7)

    checkpoints: SdxlWebUi/Model
    configs: SdxlWebUi
    vae: SdxlWebUi/Vae
    loras: |
            SdxlWebUi/Lora
            SdxlWebUi/LyCORIS
    upscale_SdxlWebUi: |
                    SdxlWebUi/Upscaler
                    SdxlWebUi/RealESRGAN
                    SdxlWebUi/SwinIR
    embeddings: embeddings
    hypernetworks: SdxlWebUi/hypernetworks
    controlnet: SdxlWebUi/ControlNet

#でコメントを残すことができるので、いつもの癖として後になって忘れることがあるので、コメント履歴を残しています。

コメントの部分は、処理が入らないので大丈夫と思いきや、影響するとのことで、日本語部分を英語にして完了。
yamlは、日本語を扱う際はencodingとallow_unicodeオプションを指定するなどしないと文字化けやエラーを起こすので注意が必要です。

いいなと思ったら応援しよう!

nobin
サポートしていただけると飛び跳ねて喜びます。