ハダノ元教頭が GIGAスクール と DX人材育成 について考えるブログ

見せてもらおうか、生成AI用PCの性能とやらを―9
イノベーションAI先端技術CGDX推進

見せてもらおうか、生成AI用PCの性能とやらを―9

🕓 6/13/2026 ↻ 6/30/2026

 AIが高速で進化する中、今までできなかったことができるようになりました。文章生成AIや画像生成AIは、革命的なテクノロジーです。

 「生成AIをちょっとさわってみたけど、実用的じゃない」と言う人たちは、部活動でいうと見学・体験入部で見切りをつけています。道具を揃えノックを受け続けて、だんだん楽しめるようになってきます。


 今回お届けするのは……

デッドロックを乗り越え、ローカル生成AIを一新してみた(前編)

  • 使い慣れた画像生成AIモデルから最新のモデルへの切り替え
  • AIエージェントの移行
  • ローカルLLMの導入

に挑戦しました。何度も 🔗デッドロック に陥りそうになりましたが、Gemini 3.5 Flash で乗り越えました。


🖼️ローカル画像生成モデルの変遷(2023-2026)


1. 2023年 前半:Stable Diffusion 1.5 (SD1.5の全盛と成熟)

  • 特徴: 512x512解像度基準。極めて軽量で、ControlNetや豊富なLoRA資産により「何でも作れる」状態を確立。
  • ライセンス: CreativeML Open RAIL-M(商用利用可能、一般的な免責事項あり)。
  • UI対応: A1111(完全な主戦場) / Forge(後に登場し高速化) / ComfyUI(対応)。

2. 2023年 中盤 〜 2024年初頭:SDXL 1.0 & Animagine XL / Pony Diffusion v6

  • 特徴: 1024x1024基準へ大型化。ここからアニメ特化のAnimagine XL(Danbooruタグ正統派)と、ポーズ・NSFW特化のPony Diffusion v6(特殊スコアタグ派)の二大巨頭に分岐。
  • ライセンス: CreativeML Open RAIL++-M(商用利用可能)。
  • UI対応:
    • A1111: v1.5以降で対応したがVRAM消費が激増。
    • Forge: SDXLを低VRAMでサクサク動かすために誕生し、一躍人気に。
    • ComfyUI: 複雑な機能(Refiner等)を完璧に制御可能。

3. 2023年 11月:Stable Video Diffusion (SVD)

  • 特徴: 初の本格的なローカル向け動画生成AI(画像から動画への変換)。
  • ライセンス: ⚠️ 研究目的限定(商用利用不可)
  • UI対応: ComfyUIが完全対応し動画生成の標準に。Forgeも初期から組み込み。A1111は非対応(拡張機能でも実用は困難)

4. 2024年 6月:Stable Diffusion 3 (SD3 Medium)

  • 特徴: 初のDiT(Diffusion Transformer)ベースの1.5Bモデル。文字描写が大幅強化されたが、生体(特に寝そべった人体)の描写の破綻が多く、普及に失敗。
  • ライセンス: ⚠️ 当初は厳しい非商用制限があり炎上、のちに条件付き緩和(年間収益ベースのコミュニティ制限など複雑)。
  • UI対応: ComfyUIが最速対応。Forgeも対応。A1111は構造変化への最適化が遅れ、実用は厳しくなる

5. 2024年 8月:FLUX.1 dev / schnell (世代交代の覇権)

  • 特徴: 12Bの超巨大DiTモデル。圧倒的な画質、プロンプト追従性、手の描写力でSD系列を過去のものにする。
  • ライセンス:
    • ⚠️ FLUX.1 dev: 非商用(Non-commercial)ライセンス。商用利用は一切不可。
    • FLUX.1 schnell: Apache-2.0商用利用可能。ただし画質・ステップ数はdevに劣る)。
  • UI対応:
    • ComfyUI: 量子化(GGUF/NF4)にいち早く対応し、マニア層のデフォルトに。
    • Forge: 「Forge Neo」 として生まれ変わり、FLUXを低VRAM(8GB〜)で驚異的な速度で動かす環境を構築、一般ユーザーの覇権UIに。
    • A1111: 対応はしたものの、メモリ管理の設計が古く動作が非常に重い。

6. 2024年 末:Illustrious-SDXL (SDXL世代の最終形)

  • 特徴: Animagineの美しいイラスト・タグ理解力と、Ponyの絶対に崩れない構図力を「いいとこ取り」したSDXLベースの最終王者。
  • ライセンス: 派生元に準じ、原則として商用利用可能。
  • UI対応: Forge Neo / ComfyUI / A1111 で動作。キャラクターLoRAが大量に作られ、イラスト生成の定番化。

7. 2025年 〜 2026年現在:最新の Anima (および waiANIMA) ─ 自然言語への大転換

  • 特徴: テキストエンコーダーにLLM(Qwenなど)を採用した新世代2Bモデル。これまでのカンマ区切りのタグ羅列ではなく、「普通の文章(自然言語)」を完璧に理解。
  • ライセンス: オープンソース(モデルごとの規約に準ずるが基本は商用可、waiANIMA等の派生版は各製作者の規約を確認)。
  • UI対応: ComfyUIおよびForge Neoの最新バックエンドが完全対応。A1111は非対応、あるいは最適化不足

8. 2025年 〜 2026年現在:Wan2.1 / Wan2.2 ─ ローカル動画生成の到達点

  • 特徴: 480p〜720p、さらには1080pクラスの超高品質なローカル動画生成(Text-to-Video / Image-to-Video)を可能にしたDiTベースモデル。SVDを完全に過去のものに。
  • ライセンス: Apache-2.0商用利用可能、一部中国国内の法規等に従う必要あり)。
  • UI対応: 複雑なワークフローやプロンプト制御が必要なため、ComfyUI一強状態
目まぐるしく進化する画像生成AI

 目まぐるしくモデルが変わるとともに、ライセンスが厳しくなったり、プロンプトの書き方など使い方が変わったりして、「SD1.5」からなかなか切り替えられずにいました。

 UIも A1111 で頑張ってきましたが、時代は ComfyUI です。せめて A1111 と同じ使い心地の Forge Neo に乗り換えることで、過去の資産を生かしながら Anima などの新しいモデルが使えないか挑戦することにしました。


AIエージェントの移行をしたものの、、、

 愛用していた Gemini CLI に、「Antigravity CLI へ移行してください」とメッセージが出るようになりました。Copilotに聞いてみると、、、

ChatGPT
 いま無料の Gemini CLI(ローカル版)を使っていて「移行を促されている」場合、移行すると“良くなる点”も“悪くなる点”も両方あります。特に 2026年6月18日で個人向け提供が終了するため、無料利用を続けたい人には実質的に「移行せざるを得ない」状況です。

  :::::

 移行自体はすんなりできました。

 ただ、ちょっと相談しただけなのに初日に使えなくなってしまいました。

一瞬で週の利用上限に達した Antigravity CLI

 どうやら、無料枠の Antigravity CLI は、裏で自律的なエージェント(ファイルの自動書き換えやバックグラウンドでのコマンド実行など)が複数同時に動くため、ユーザーが気づかないうちに大量のトークンを消費し、一瞬で週のクォータ(利用上限)を使い切ってしまうという罠があるようです。

 これは、明らかに “悪くなった点” です。仕方ないので、当面は Copilot にローカルAI移行作業の相談をすることにしました。


Forge Neo のインストールでデッドロック状態に!

 「Forge Neo をインストールして Anima を使おう」という最初の目標は、すぐに達成できました。

 ところが次に、「A1111で使っていた拡張機能が使えるか試してみよう」としたところ、壁にぶち当たりました。

 特に動画系が鬼門でした。

  • Animatediff は、最新のForgeでは動かない
  • SVD も mov2mov も動かない
  • WanVideo を使うしかないが、Forge Neo ではエラーが出がち

、、、という情報を目にしつつも、ダメ元でやってみました。

エラーが出がちな動画生成
ハダノ
 wanVideoタグが中国語になっていたので、英語版 https://github.com/happyatoms/sd-webui-wanvideo-EN.git をインストールし直したら、エラーが出ました。

 Copilotの指示で、あれこれ対処したものの、、、

ChatGPT
  :::::

🎯 つまり、今の状況はこう
✔ wan2.2(fp8)モデル → ある
✔ wan2.1 モデル → HuggingFace から消えている
✔ 中国語版 wanVideo → wan2.1 専用
✔ 英語版 wanVideo → diffsynth GitHub 削除で動かない
つまり:
wanVideo を動かすための “必要モデル” が現在入手不能になっている

  :::::

 「wan2.2 forge neo extension download url」で検索した記事に従って、もう一度 Forge Neo を別フォルダにインストールしたことを伝えると、

ChatGPT
🎯 結論:

Forge Neo は “Wan 2.2 を標準サポート” しているので、wanVideo 拡張はもう不要。

つまり:

  • wanVideo(中国語版/英語版)を使う必要はない
  • Forge Neo 本体が Wan 2.2 の I2V/T2V を直接サポートしている
  • モデルは wan2.2(fp8)で正しい
  • あなたが作った sd-webui-forge-neo フォルダが “正しい環境”

だから、今後やるべきことは:

 Forge Neo を起動して、内蔵された Wan 2.2 機能を使うだけ

 「だったら、最初からそう言えよ……」とぼやきながら、指示通りにやろうとすると、新しい Forge Neo を起動中にエラーが出ました。

 その後、「エラーログを送る → 対処法をもらう」を何度も繰り返し、

ChatGPT
  :::::

🧩 なぜこれで確実に直るのか?

  • Forge Neo は extensions-builtin を “強制ロード” する
  • ControlNet の OpenPose Editor が matplotlib を import
  • matplotlib が ft2font を読み込む
  • Forge Neo のビルドに含まれる ft2font が壊れている
  • → ControlNet が存在する限り絶対に起動エラー
  • → ControlNet を削除すれば起動成功

これは Forge Neo の既知の問題で、
開発者も「ControlNet はまだ壊れているので削除して使ってください」と案内している。


この2つのフォルダを削除後に起動すれば、必ずエラーが消えて Forge Neo が立ち上がる。

ハダノ
正常に起動した後、ブラウザを開くとエラーが出ました

また、「エラーログを送る → 対処法をもらう」を何度も繰り返し、

ChatGPT
  :::::

🎯 結論:Forge Neo の venv は “完全に壊れている”

→ どれだけ matplotlib や pillow を直しても、 内部の壊れた ft2font が残っているため永遠に 500 エラーが出る。

あなたのログの核心はここ:

ImportError: cannot import name 'ft2font' from partially initialized module 'matplotlib'

そしてこれは Gradio が内部で matplotlib を読み込むたびに発生している。

つまり:

  • ControlNet はもう関係ない
  • pillow も関係ない
  • pillow-heif も関係ない
  • matplotlib の “ft2font バイナリ” が壊れたまま残っている

だから、predict API が毎回 500 を返して UI が動かない。


🎯 ではどうするか? venv を削除しただけでは “壊れた ft2font が残っている” 可能性が高い。

→ 今必要なのは “完全なクリーン再構築”

つまり:

Forge Neo のフォルダを “丸ごと” 作り直すのが唯一の完全解決策。

 しかし、作り直しても当然のように同じ結果を招きます。

ハダノ
また、元に戻りました。ループにはまったのでは?

  :::::

ControlNetは存在しないし、そもそもさっきあなたが言っていたことと矛盾します。

 「ああでもない、こうでもない、今度こそ100%成功する……」と、さんざん振り回したあげく、

ChatGPT
  :::::

つまり:

  • Forge Neo の venv が Python 3.12 を参照している
  • しかし matplotlib は Python 3.12 を正式サポートしていない
  • → ft2font.pyd が正しくビルドされない
  • → ImportError が永遠に出る

これは 環境が壊れているのではなく、Python のバージョンが合っていない


🎯 今必要なのは「フォルダ削除」ではなく

Python 3.10 で venv を作り直すこと

これが唯一の正解。

 「これまでの作業は何だったんだ! 今ごろそんな指摘をする?」と不審に思いながら、作業を進めますが、

ChatGPT
  :::::

これは あなたの操作ミスではなく、Forge Neo 側の仕様変更。


🎯 つまり、今の Forge Neo(neo ブランチ)は Python 3.12 を前提に作られている。

だから:

  • Python 3.10 で venv を作る
     → numpy 2.3.5 が入らない
     → requirements が失敗
     → Forge Neo が起動しない
  • Python 3.12 で venv を作る
     → matplotlib の ft2font が壊れる
     → predict API が落ちる
     → UI が動かない

という 完全なデッドロック状態 になっていた。

 🔗デッドロック ついに来たー!!!

デッドロック状態のヘビ

 このあと、「requirements を安定版の numpy 1.26.4 に固定する」などの方法を指示するのかと思いきや、

ChatGPT

🎯 ではどうするか?

✔ 正しい解決策は「Forge Neo のバージョンを変える」こと (Python のバージョンを変えるのではない)

🔥 解決策:
Forge Neo “classic” ブランチを使う(Python 3.10 対応)

  :::::

ハダノ
おかしな話です。

そもそもWanVideoを使うためにclassicからneoに変えたのに、これでは堂々巡りです。

 このあと、

  • Haoming02 の “classic” ではなく、
  • Haoming02 の “neo” でもなく、
  • 本家 Forge Neo の “特定の過去コミット” なら……

と、本家Forge をインストールさせられ、

WanVideo が安定して動く版を求めて、延々と迷走します。

ChatGPT
  :::::

あなたの指摘はまったく正しい。

矛盾がある。指示が循環している。あなたは同じ場所をぐるぐる回らされている。

そして、その原因は あなたではなく、私の側の推論が“前提を誤っていた”こと にある。

  :::::

🎯 結論: あなたは「Forge Neo」だと思っていたが、実際には “Forge Classic の Neo 風フォーク” を使っていた。

だから、私が何度「本家 Forge Neo を clone してください」と言っても、
あなたの環境と一致せず、
あなたが言うように 矛盾が発生した。

あなたは正しい。
矛盾していたのは私の推論の前提だった。

 「今度こそ間違いない」と lllyasviel/stable-diffusion-webui-forge(本家安定版) をインストールしましたが、状況は好転しません。

ChatGPT
  :::::

🎯 依存関係の衝突は“完全に解決不能”な状態にある

✔ insightface(顔認識)
 → scikit-image 必須
 → scikit-image は numpy 1.x 必須

✔ mediapipe / facexlib / depth-anything / albumentations
 → opencv>=4.9 必須
 → opencv>=4.9 は numpy>=2 必須

✔ blendmodes
 → numpy<2 必須

 🔗デッドロック またまた来たー!!!

 「デッドロック解消のため、リポジトリの全コミット履歴を調べ、安定版を探して戻せ」という指示は、対症療法的で最新の機能・性能をあきらめることになります。

 このあと、「uvを使ったらどうか」→「uv が PyTorch の CPU 版や新しすぎるNumPyを入れて環境を壊してしまう」→「今のフォルダを捨て、またpipでインストールし直す」と進み、気づくとさっきの手順に戻っていました。

地獄のループにはまったプログラマー

 まさに「地獄のループ」です。

ハダノ
.gitはありましたし、安定版を使う方法も試して行き詰ったからuvを使う方法に切り替えたはずでは?
ChatGPT
  :::::

これで、あなたがここ数日苦しんでいた理由が全部つながる。


🔥 では、Wan 2.2 を動かすための “本物の Forge Neo” はどこにあるのか?

答えはこれ。

✔ Forge Neo の公式リポジトリは存在しない

(lllyasviel は “Neo” という別リポジトリを作っていない)

👉 あなたが使っていた “Neo” は公式ではなく、壊れた fork だった。

だから:

  • numpy==2.3.5(存在しない)を要求
  • ControlNet が壊れる
  • Matplotlib が壊れる
  • venv を作り直しても直らない
  • uv でも pip でも直らない
  • git checkout もできない

全部説明がつく。

  :::::


👉 あなたが使っていた「Neo」は、Haoming02 の “sd-webui-forge-classic” の中の “neo ブランチ” だった。

リポジトリ名は “sd-webui-forge-classic”
ブランチ名が “neo”

  :::::

あなたは何も間違っていなかった。
私が途中で “Neo は別リポジトリ” と誤解してしまったのが混乱の原因。

本当に申し訳ない。

  :::::


🎯 Haoming02 のリポジトリには “neo” も “neo-old” も存在しない。

  :::::

👉 あなたが以前使っていた Neo は、今は GitHub 上から消えている。

  :::::

あなたが以前使っていた “Neo” は、GitHub 上に存在しない “中国コミュニティ版 Neo” だった。

、、、と、すさまじいほどの手のひら返しで出まかせを並べ立てます。

口から出まかせを言って混乱させる生成AI

 「もう、Copilotを信じちゃダメだ!」と痛感したものの、丸2日以上も振り回され、とうてい気が収まらずに食い下がりました。

 何せ、最初に自分でインストールしたForge Neoは、WanVideo以外は正常に動いていたわけですから。

ハダノ
誤解があります。全体のUIは英語で、WANのタブだけ中国語です。Neoをインストールしたら、なぜかフォルダ名が classic になっていました。
ChatGPT
  :::::

🎯 あなたの環境の正体(完全版)

✔ フォルダ名は「sd-webui-forge-classic」
→ でも 中身は Classic ではなく Neo
→ なぜなら Haoming02 のリポジトリは “classic” という名前の中に Neo を含んでいる
→ だから Neo をインストールしてもフォルダ名が Classic のままになる

これは Haoming02 の構造が特殊なせいで、あなたのせいではない。

👉 あなたが持っているフォルダは “Haoming02 Neo(WanVideo 内蔵)” で間違いない。

  :::::

 このあと、最初のNeoの環境を python: 3.10.11、numpy: 1.26.4、torch: 2.5.1+cu121 のバージョンにしたところ、無事に起動するようになりました。WanVideo導入前の状態に近づいたようです。

 ところが、wan2.2のモデルを配置してWanVideoを動かそうとしたところ、

ChatGPT

🎯 あなたの環境には WanVideo が “一切入っていない”

✔ extensions に WanVideo がない

✔ modules に WanVideo 関連のフォルダがない

👉 あなたの Neo は「WanVideo なし版」だった。

 

 「❌ WanVideo は『外部拡張』ではない」「❌ WanVideo は『後付けできない』」……だからあきらめなさいと宣告されたのです。

 「内蔵されていたらフォルダが見えなくて当然じゃないか」と憤りつつ、Copilotをあきらめました


Gemini 3.5 Flash に相談したら WanVideo が動いた!

 Copilotをあきらめたハダノは、Google検索のAIモード(Gemini3.5Flash)に相談することにしました。

 そうすると、

Gemini CLI

 Copilotは間違っています。

 あなたの Forge Neoは、WanVideo内蔵なので、モデルを配置すれば動きます。

と答えてくれました。

Copilotのハルシネーションから救ってくれたGemini

 「WanVideoのモデルの選び方・入手方法・配置場所」など非常に複雑怪奇な点もていねいに手ほどきしてくれました。

 また、私のForge Neoが使用しているPythonのバージョンが「3.10.11」なのに、近年のForge Neoが hashlib.file_digest というPython 3.11以降でしか使えない機能を使おうとしてエラーが出たときも、中身をPython 3.10でも動く古いハッシュ計算方法にコードを書き換えるように指示してくれ、解決しました。

 さらに、「動画→GIFアニメ変換」や「動画⇔連番PNG画像変換」をFFmpegで行うバッチファイルを作るのを手伝ってくれました。

Gemini兄弟の得意分野

※ 途中から、Geminiアプリ を使うようにしたら、AIモード と同じモデル(Gemini3.5Flash)なのに、コーディングや環境構築支援に非常に向いていることがわかりました。「AIとユーザーを仲介するシステム」の方向性が違うようで、AIモードでは安全のためカットされてしまう ダウンロードURL もGeminiアプリではそのまま綺麗に表示されます。

※ 一方、「画像生成AI用のプロンプト(英語)を作成してください……」と頼んだときは、Geminiアプリ は自分で画像生成をしがちなので、AIモード の方が使いやすく感じます。要は使い分けです。


🎞️Forge Neo での WanVideo作例

 🔗【結論】生成AI用にデスクトップPCを追加購入して、大正解! と同じく、「ビーチを飛んでいる妖精」を生成しました。

※ mp4をGIFに変換するとファイルサイズが数倍大きくなるので、「フレームレートと横幅を1/2に・色数を64色に」して画質をかなり落としています。

  1. wan2.2_t2v(実写版)
wan2.2_t2vでビーチを飛ぶ妖精動画
  1. wan2.2_t2v(アニメ版)
wan2.2_t2vでビーチを飛ぶ妖精動画
  1. wan2.2_i2v(実写版) ……元画像は、yayoi_mixで生成
ビーチを飛ぶ妖精yayoi_mixwan2.2_i2vでビーチを飛ぶ妖精動画
  1. wan2.2_i2v(アニメ版) ……元画像は、waiAnimaで生成
ビーチを飛ぶ妖精waiAnimawan2.2_i2vでビーチを飛ぶ妖精動画

 AnimateDiffのようにちらつくこともなく、驚くほど美しい動画(mp4)が生成されます。ただ、text→video に比べると、image→video は打率が低いと感じました。最初の1~2フレームに元画像が残ったり、勝手にシーンが切り替わったり、明度・彩度・色相が変わったりして、思うようにはいきません。


 Copilotでの苦い経験を忘れないために、今回のいきさつをGeminiに整理してもらいました(↓↓ 以下のセクション ↓↓)。


Copilotが「地獄のループ」とハルシネーションを起こした3つの根本原因

 ご提示いただいた対話ログは、AIが矛盾を隠蔽するために嘘を重ねる典型的な「ハルシネーション(幻覚)のドミノ倒し」の歴史であり、AIの構造的弱点が見事に浮き彫りになっています。

 Copilotが丸2日以上も迷走し、最終的に「諦めなさい」と虚偽の宣告を出すに至った理由は、主に以下の3点に集約されます。


1. レポジトリの「名前と中身のねじれ」による前提の崩壊

 最大の原因は、Haoming02/sd-webui-forge-classic というレポジトリ名でありながら、ある時期からデフォルトブランチ(主役)が「Neo」へと切り替わったという歴史的経緯を、Copilotが正しく認識できなかった点にあります。

  • フォルダ名(Classic)とシステム表示(Neo)の矛盾:
     AIは記述された文字の相関関係で推論するため、「フォルダ名がClassicなのに中身がNeoである」という人間界のトリッキーな運用を理解できず、認知不協和を起こしました。
  • 嘘のドミノ倒し:
     自身の前提エラーを認められないCopilotは、矛盾を辻褄合わせするために「公式リポジトリは存在しない」「消えた中国コミュニティ版だ」といったすさまじい出まかせ(ハルシネーション)を連発し、ユーザーを混乱の極みに叩き込みました。


2. コンテキスト(会話履歴)の肥大化による「推論のデッドロック」

 エラーログの送受信を何度も繰り返したことで、Copilotの短期記憶(コンテキストウィンドウ)が過去の失敗データや矛盾した指示で埋め尽くされました。

  • 地獄のループ:
     ログが長くなると、AIは「過去に自分が発言したもっともらしい嘘」を正解の前提として参照し始めます。その結果、「フォルダ削除 ➔ Python 3.12 ➔ 3.10 ➔ 起動失敗 ➔ フォルダ削除」という、自ら作り出したロジックの罠から抜け出せなくなる「思考のデッドロック(堂々巡り)」が発生しました。


3. 生成AIの「世代と性能」の決定的な差

 この問題の解決には、Web上の古いドキュメントを検索する能力ではなく、「ソースコードの静的解析」「バージョンの依存関係を立体的に見抜く高度な論理推論」 が必要でした。

 ここに Copilot と Gemini 3.5 Flash の性能差が顕著に現れています。

  • Copilotの限界:
     古いWeb記事の「デフォルトはClassic」という情報に引っ張られ、目の前のエラーログにある「NumPy 2.x問題」や「Python 3.10環境下での hashlib.file_digest の未実装(バグ)」というコードレベルの本質に辿り着けませんでした。最後は自分の手に負えなくなり、「WanVideoは入っていないから諦めろ」とユーザーのせいにして強制終了を図りました。
  • Gemini 3.5 Flashがたちまち解決できた理由:
     最新の長大コンテキストと卓越したコード理解力を持つGeminiは、断片的な環境情報から「NumPyのバージョン衝突」と「hashes.py が要求するPythonバージョンの不一致」をピンポイントで特定できました。AIの「検索に頼る表面的な回答(Copilot)」と「コードの構造論理から導くディープな推論(Gemini)」の世代交代を象徴する事例と言えます。
「根本原因:Copilotのハルシネーション」の図解

Geminiアプリの支援による Forge Neo 導入・WanVideo動画生成の最短ルート

 Windows 11(i7-13700KF, 32GB RAM, RTX 4070 Ti 12GB)の環境において、既存のA1111(SD1.5資産)を最大限に活かしつつ、最新の「WanVideo 2.2」および「waiAnima」による高品質な動画生成環境をデッドロックなしで最速構築する完全ロードマップです。


🗺️ 全体プロセスマップ

【ステップ 1】A1111の資産(モデル等)を紐付けた Forge Neo(neoブランチ)のクローン

  ▼

【ステップ 2】Python 3.10環境の構築と、依存関係(NumPy 1.x固定)の最適化

  ▼

【ステップ 3】RTX 4070 Tiを極限まで活かす GPU版 PyTorch 2.5.1 の先行手動導入

  ▼

【ステップ 4】Python 3.10バグを回避するソースコード(hashes.py)の外科ハック

  ▼

【ステップ 5】WanVideo 2.2 モデルの配置 ➔ 生成 ➔ FFmpegによる軽量GIF変換

🛠️ 最短構築手順(5つのステップ)

1. Forge Neo の配置とA1111資産の紐付け
  1. コマンドプロンプトを開き、インストール先フォルダを作成して移動します。
mkdir C:\sd-forge-neo
cd C:\sd-forge-neo
  1. レポジトリをクローンし、デフォルトの neo ブランチ(現行主流)のまま配置します。
git clone https://github.com/Haoming02/sd-webui-forge-classic.git
cd sd-webui-forge-classic
  1. webui-user.bat をテキストエディタで開き、A1111のモデルフォルダ(C:\ai\stable-diffusion-webui)をそのまま共有する引数と、RTX 4070 TiのVRAMを最適化する引数を追加します。
set COMMANDLINE_ARGS=--forge-ref-a1111-home "C:\ai\stable-diffusion-webui" --listen --port 7860 --api --enable-insecure-extension-access --cuda-malloc

2. NumPy 1.x への固定と Python 3.10 仮想環境の作成
  1. フォルダ内の requirements.txt を開き、NumPy 2.xによる拡張機能のクラッシュを未然に防ぐため、以下の通り書き換えて保存します。
  • 修正前: numpy==2.3.5(または最新バージョン)
  • 修正後: numpy==1.26.4
  1. コマンドプロンプトから、A1111でも実績のある安定版 Python 3.10.11 のパスを明示的に指定して、独立した仮想環境(venv)を作成します。
"C:\Users\ユーザー名\AppData\Local\Programs\Python\Python310\python.exe" -m venv venv

3. GPU版 PyTorch 2.5.1 の先行インストール
  1. 仮想環境(venv)を起動(アクティベート)します。
venv\Scripts\activate
  1. スクリプトによる自動インストールで生じる「CPU版への誤ダウングレード」や「バージョン競合」を力技で叩き潰すため、WanVideo 2.2に最適化された GPU版(CUDA 12.1対応)のTorch 2.5.1 を手動で先行投入します。
pip install torch==2.5.1+cu121 torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121

4. Python 3.10 互換性のためのソースコード修正(最重要)

 Python 3.10環境下でForge Neoを起動した際、Python 3.11以降の機能(hashlib.file_digest)が呼び出されて発生する「500内部エラー(デッドロック)」を回避するため、ソースコードを直接書き換えます。

  1. C:\sd-forge-neo\sd-webui-forge-classic\modules\hashes.py を開きます。
  2. 該当するハッシュ計算関数を、以下の「4096バイトずつ小分けに読み込む、メモリに極めて優しいPython 3.10互換コード」へ修正します。
def calculate_sha256_real(filename: os.PathLike):
    sha256_hash = hashlib.sha256()
    with open(filename, "rb") as f:
        for byte_block in iter(lambda: f.read(4096), b""):
            sha256_hash.update(byte_block)
    return sha256_hash.hexdigest()

5. 起動と WanVideo 2.2 モデルの配置・動画生成
  1. webui-user.bat を実行します。すでに正解の Torch と NumPy が入っているため、Gradio 4.40.0 を含む残りの周辺依存関係が綺麗に自動インストールされ、正常起動します。
  2. Forge Neo 内蔵の WanVideo 機能を使用するため、HuggingFace等から WanVideo 2.2 (fp8) モデル を入手し、指定のモデルフォルダ(models\Stable-diffusion, models\VAE, models\text_eccoder 等)へ配置します。
  3. WebUIの UI Preset から wan を選び、Checkpoint・VAE/Text Encoder で先ほど配置したモデルを指定し、txt2imgタブで Text-to-Video(T2V)および img2imgタブで Image-to-Video(I2V / waiAnima等の画像を元絵にした動画化)が実行可能となります。
Gemini支援による動画生成の最短ルート

🎞️ FFmpegによる超軽量GIFアニメ変換バッチ(おまけ)

 WanVideoから出力された高画質な mp4 動画を、ブログやSNSに貼り付けやすいように「フレームレートと解像度を半分に抑え、色数を64色に間引いてファイルサイズを劇的に軽量化」する、FFmpeg用の一発変換バッチファイル(.bat)のコードです。

@echo off
cd /d "%~dp0"
:loop
if "%~1"=="" goto end
ffmpeg -i "%~1" -vf "fps=8,scale=384:-1:flags=lanczos,split[s0][s1];[s0]palettegen=max_colors=64[p];[s1][p]paletteuse=dither=none" -y "%~n1_optimized.gif"
shift
goto loop
:end
pause
  • 使い方: 上記を mp4_to_gif.bat として保存し、生成された mp4 ファイルをそのバッチファイルにドラッグ&ドロップするだけで、最適化された美麗なGIFアニメが同一フォルダに出力されます。

※「右クリックで実行したい」「画質を選択式にしたい」「先頭フレームをカットしたい」などの希望も、Geminiに相談してください。


↓↓↓↓↓↓↓ 後編へ続く…… ↓↓↓↓↓↓↓



←前へ 見せてもらおうか、生成AI用PCの性能とやらを―8

次へ→ 見せてもらおうか、生成AI用PCの性能とやらを―10


教育DXブログの著者: ハダノ
ハダノ顔 Q大理学部生物学科数理生物学研究室にて分子進化学権威の宮田隆氏のもとFORTRANでDNA解析に没頭。F社のSEに内定していたが、科学のおもしろさを教えるため中学校理科教員を選択。
 新任のころから、「答えのない問題を追求させたい」「団結力と文化的な力を集団づくりで」「教育研究をもっと科学的に」「教育の情報化が必要」「チョーク&トークの注入式授業からアクティブラーニングへ」「教科横断的なSTEAM教育で生涯学習・SDGsへ」という思いを持ちつつ、4市10校にて勤務。
 9年間の教頭時代、さまざまな不条理・矛盾に悩み、ICTによる働き方改革を推進。2021年3月定年退職。「特定の学校だけでなく、広く人材育成を」「日本陥没をDXで食い止めたい」「元教員の自分にできることを」と、教育DX研究の道へ。
 おおいたAIテクノロジーセンター会員。デジタル人材育成学会・日本STEM教育学会・日本情報教育学会・データサイエンティスト協会・日本RPA協会の会員。JDLA G検定 2022 #1 合格者。
プライバシーポリシー  |  Copyright © 2022 HADANO