ジャコ Lab

プログラミング関連のメモ帳的ブログです

diffusers の AnimateDiff で Motion LoRA を使ってみる

zako-lab929.hatenablog.com

前回、LoRA で「PEFT backend is required for this method」なエラーにハマりましたが、無事にこの記事に進めるようになりました。

Motion LoRA (モーション LoRA) で何ができるかというと、 AnimateDiff にズームインやズームアウトなどの動きを加えることができます。

早速使ってみようと思います。

続きを読む

LoRA で「PEFT backend is required for this method」にハマった件

/usr/local/lib/python3.10/dist-packages/diffusers/loaders/lora.py in load_lora_weights(self, pretrained_model_name_or_path_or_dict, adapter_name, **kwargs)
    105         """
    106         if not USE_PEFT_BACKEND:
--> 107             raise ValueError("PEFT backend is required for this method.")
    108 
    109         # if a dict is passed, copy it instead of modifying it inplace

ValueError: PEFT backend is required for this method.

ValueError: PEFT backend is required for this method.
LoRA を使おうとして、上記のエラーが出るようになりました。

前(diffusers で Civitai の LoRA(.safetensors) を使ってみる) は、
大丈夫だった気がしたんだけどなぁ...

peft パッケージをインストールすれば解決するかと思いきやハマりましたが、
無事解決できたので、記録を残しておきます。

まぁ結果的に peft で解決するんですが。

続きを読む

diffusers で AnimateDiff を初めて使ってみる

github.com

diffusers v0.22.0 でサポートされた AnimateDiffPipeline を使って、 AnimateDiff を使ってみます。

まずは、リリースノートにある通りのプログラムを実行してみます。

続きを読む

GLIGEN 用の枠の配列の値の取得する方法

前回の記事までで GLIGEN (Grounded Language-to-Image GENeration) を使ってみましたが、GLIGEN を使用するときは バウンディングボックス が必要となります。
(矩形 と記載したりもしているので文言は定まってませんが...)

バウンディングボックスを可視化したもの

バウンディングボックスは 左上のXY座標右下のXY座標 の4つの値で成り立っています。 [x1, y1, x2, y2] という感じです。

この記事では、Pythonバウンディングボックスの座標をマウスのドラッグ&ドロップで取得していきます。

続きを読む

diffusers で GLIGEN を試してみる (3) - 枠でスタイルも指示できる?

zako-lab929.hatenablog.com

zako-lab929.hatenablog.com

前回の記事までで StableDiffusionGLIGENPipeline 及び StableDiffusionGLIGENTextImagePipeline を使ってきました。

後者の StableDiffusionGLIGENTextImagePipeline は、
もう1個使用例があったのですが、やや分かりづらかったので記事を分割してしまいました。

この記事では もう1個の使用例 GLIGEN でスタイルも指示するパターンを見ていきます。

続きを読む

diffusers で GLIGEN を試してみる (2) - 文字列の代わりに画像でキャプションする

zako-lab929.hatenablog.com

前回の記事では StableDiffusionGLIGENPipeline を用いて diffusers で GLIGEN (Grounded Language-to-Image GENeration) を試しました。GLIGEN は、バウンディングボックスとキャプションを用いて、枠に意味を持たせて Text-to-Image をするものでした。

この記事では StableDiffusionGLIGENTextImagePipeline を用いて、文字列によるキャプションの代わりに画像によるキャプションを試してみます。

続きを読む

【おまけ記事】定型文貼り付け機能があったとは。。。

help.hatenablog.com

ぐぬぬ。。。

もっと早く知りたかったです。

いつも Markdown で書いているのですが、特殊なものを出すときは、いつも別タブで「雛形用の下書き」を開きに行ってからコピペしてました。。。

もっと早く知りたかったです。 (大事なことなので2回)