最近Animaなるモデルが出てきているのでどんなものか試してみたいと思い、
Stable Diffusion Web UI Forge NEOをインストールした。
【Forge NEOのインストール】
ここに書かれている事をそのまま実行すれば特に問題無し。
【ADetailer】
今までのWeb UIと同様にExtensionsからインストールすれば良いだけの事。
ADetailerのURLを指定してインストールしたんですが、、、
なんかNEO用のADetailerをインストールしなさい的なメッセージが出るし
UIにもADetailerのメニューが出ない。
素直にNEO用ADetailerを入れれば確かにUIは出て使えるが出力結果が異なる
可能性もあるので気持ち悪い。
そこで本家ADetailerを使えるようにしてみました。
本家にはすでにIssueの報告があってWorkaround(回避策)が書かれていました。
This is a duplicate of #842 — it's a compatibility issue between ADetailer
v26.2.0 and Forge Neo. Forge Neo's cmd_opts doesn't have
the disable_safe_unpickle attribute that ADetailer expects (it exists in
AUTOMATIC1111's webui but not in Forge Neo) [1].
Temporary workaround:
Edit extensions/adetailer/aaaaaa/helper.py at line 45 and change:
patch.object(cmd_opts, "disable_safe_unpickle", True),
to:
patch.object(cmd_opts, "disable_safe_unpickle", True, create=True), ひとまず書き換えてNEO再起動する。 エラーが出てる、、、、、 Geminiさんにエラー情報お伝えしたらこんな事を提案された。 エラーログをもう一度見ると、!adetailer.pyの 267 行目if "adetailer" in shared.cmd_opts.use_cpu:で落ちています。 これはhelper.pyの修正とは別の場所です。
修正方法: extensions/adetailer/scripts/!adetailer.py を開き、
267行目付近にある shared.cmd_opts.use_cpu という記述を、
安全に参照するように書き換える必要があります。
例えば、以下のように getattr を使うのが安全です:
# 変更前
if "adetailer" in shared.cmd_opts.use_cpu:
# 変更後(use_cpuが存在しない場合はFalseを返す)
if "adetailer" in getattr(shared.cmd_opts, 'use_cpu', []):
提案に従って当該ファイルを修正してNEOを再起動してみたところ、、、
使えるじゃん。
解決。