Tiled DiffusionのTiled VAE Encodeで input type エラーが出る場合の対処

エラーメッセージ

 Tiled DiffusionのノードにTiled VAE Encodeというノードがあります。Encodeがあるということは当然、Decodeもあります。これはTiled Diffusionと同じく画像をタイル分割してEncode, Decodeするノードです。

で、それがどうしたという話なのですがDecodeのほうはともかく、Encodeのほうはエラーが出ます。

Input type (float) and bias type (struct c10::BFloat16) should be the same

これ、どういう意味かというと入力とVAEの精度が違うよと言われています。入力はfloat32に対してVAEはBFloat16なので異なりますということです。

とりあえず対応としてVAEを変えるなどの方法があったのですが、それは効果が無さそうでした。そんなに個数を試したわけじゃないですが。

次にとれるのはVAEの精度を設定で固定化する方法です。これはComfy UIの起動スイッチで変えられます。フラグで--fp32-vaeを指定します。そうすると問題なく動作しました。めでたし、めでたし。

Stability Matrixの画面

単純に検索しても回答が出てこなかったのでChatGPTを使ったところ対策にたどり着きました。



コメント