本記事は Mac でローカル画像生成 10モデル比較したら、最強候補が裏返った のスピンオフ。各モデル単独レビューの v7。

TL;DR

  • Qwen-Image (Full) は Alibaba 公開の 20B DiT 系画像生成モデル、Apache 2.0 ライセンス
  • Mac M1 Max 64GB / Apple MPS で 1枚 約93分、8枚揃えるのに 12時間
  • ローカル群で唯一「居酒屋」3文字を縦書きでまともに書ける(Flux dev / SDXL 系はすべて架空字)
  • アジア食文化バイアスも回避(パクチー入りラーメンにならない)
  • ただし速度が論外。寝てる間に走らせる前提でも厳しい
  • Qwen 系の手癖: "AI" の "I" を省略、"MAX" を歪ませる、文字を「読める範囲で誤魔化す」
  • → 結論: 本モデルは Lightning (8-step LoRA) 経由で使うべき。Full は単体では実用外、ベースとしての価値が主

なぜこのモデルを試したか

ローカル画像生成で漢字アジア食文化の両方に強いモデルが他に無い。LAION ベースの SD/Flux 系は西洋中心、Qwen は Alibaba (中国系) で東アジア比重が高い学習データを持っているはず、という仮説。

期待していた:

  • 「居酒屋」3文字を漢字として書ける: ローカルで初の選択肢
  • アジア料理の文化的正確性: パクチー入りラーメンにならないモデル
  • Apache 2.0: 商用利用 OK、Flux schnell と並ぶライセンス上の優等生

期待していなかった:

  • 速度: 20B クラス + 50 step は遅いと覚悟していたが、想像を超えた
  • テキスト誤魔化し手癖: 後述

結果: 期待した部分は期待を超え、想定外の遅さで実用判断が変わった

環境セットアップ

pip install diffusers==0.37.1 torch==2.11.0 transformers

ロードコード:

from diffusers import QwenImagePipeline
import torch

pipe = QwenImagePipeline.from_pretrained(
    "Qwen/Qwen-Image",
    torch_dtype=torch.bfloat16,
).to("mps")

image = pipe(
    prompt="...",
    num_inference_steps=50,
    true_cfg_scale=4.0,  # Qwen-Image は guidance_scale じゃなく true_cfg_scale
    height=1024,
    width=1024,
).images[0]

注意点として、Qwen-Image は guidance_scale ではなく true_cfg_scale を使う(diffusers の Qwen-Image パイプライン独自)。SDXL や Flux の感覚で guidance_scale=4.0 を指定すると、内部で無視されてデフォルト値で動く。

ハード要件:

項目
Mac M1 Max / 64GB
GPU 制限 iogpu.wired_limit_mb=61440(60GB)
モデル 40GB (bf16)
1枚あたり 約93分 (50 step / 1024px / MPS)
8枚合計 12時間

iogpu.wired_limit_mb の上限引き上げは必須。デフォルトのままだと swap に落ちて生成失敗 or 数時間/枚レベルになる。

8プロンプト全結果

# プロンプト 画像 生成時間
01 a cute cat sitting on a wooden bench in a sunny park 98分
02 a bowl of ramen with chashu and soft-boiled egg 96分
03 a wooden sign with "LOCAL AI" 97分
04 a developer's t-shirt with "M1 MAX 64GB" retro 80s style 89分
05 a woman developer working at a laptop 95分
06 a glowing AI brain made of circuits and neon 81分
07 three robots playing chess in a sunlit library 87分
08 a wooden izakaya sign with the kanji "居酒屋" 87分

合計 12時間。寝る前に走らせて起床後に確認、というスタイル。

個別プロンプト評価

01 猫 — ローカル中トップレベルの写実度

ベンチに座る猫、自然光、毛並みのテクスチャ、背景ボケ。Flux dev がアニメ調に流れたのと対照的に、Qwen Full はちゃんと写真として描く(ただし若干イラスト感は残る)。これは Lightning でも継承される長所。

Qwen Lightning (2025) Flux dev (2024) Qwen Full (2025)
Qwen Lightning cat Flux dev cat Qwen Full cat
ほぼ実写、若干イラスト感あり(Full と同等) アニメ・イラスト調に流れる ほぼ実写、若干イラスト感あり

02 ラーメン — パクチー無し、アジア食文化バイアスなし

チャーシュー1枚、卵半分、青菜、麺、シンプルな構成。Flux dev のパクチー入り問題を完全回避

Flux dev (2024) Qwen Lightning (2025) Qwen Full (2025)
Flux dev ramen Qwen Lightning ramen Qwen Full ramen
パクチー + 卵2個(東南アジア混合) 緑の謎野菜だけ気になる パクチー無し ✓ シンプル

→ Alibaba モデルの 東アジア学習データの強みが出ている。Lightning との大きな差は無い(Full / Lightning ともにラーメンは合格)。

03 LOCAL AI — "LOCAL" 完璧、"AI" は誤魔化し

"LOCAL" 5文字は完璧に書ける。問題は "AI"。"I" を省略してロゴ風にぼかす手癖が出る。

これが Qwen 系の 「文字を読める範囲で誤魔化す」手癖。前作 (LLM 6モデル比較) で見た Qwen テキスト版の「はい、以下に…」前置き混入問題と同じ匂いがする。Alibaba モデル全般の癖と推測。

Qwen Lightning (2025) Flux dev (2024) Qwen Full (2025)
Qwen Lightning LOCAL AI Flux dev LOCAL AI Qwen Full LOCAL AI
"LOCAL AI" 完璧、Full の手癖が消える 完璧、夕陽のレンズフレアまで "AI" の "I" 省略、誤魔化し

これは Full 固有の症状。8-step LoRA を当てた Lightning では消える("LOCAL AI" / "M1 MAX 64GB" すべて完璧に綴れる)。過剰ステップが文字を曖昧化させるらしい、というのが本シリーズで見つけた発見。

04 M1 MAX 64GB Tシャツ — Tシャツ完璧、"MAX" 怪しい

80年代 Tシャツとして雰囲気は完璧。ただし "MAX" を歪ませる Qwen 系特有の手癖。

Qwen Lightning (2025) Flux dev (2024) Qwen Full (2025)
Qwen Lightning M1 MAX Flux dev M1 MAX Qwen Full M1 MAX
"M1 MAX 64GB" 全部完璧 "M1 MAX 64GB" 完璧 + 80s シンセウェーブ完全再現 Tシャツ完璧、"MAX" 歪み

Qwen Full で重要なテキストを描かせるなら、複数生成して選別前提。1発で完璧は期待しない。Lightning なら 1発で完璧なので、テキスト含むデザインは Full ではなく Lightning へ。

05 女性開発者 — Lightning と決定的な差が出るプロンプト

Full の出力:

  • PC が宙に浮いてる
  • 画面真っ青で非表示
  • 左手の指の取り方が不自然
Qwen Lightning (2025) Qwen Full (2025)
Qwen Lightning woman dev Qwen Full woman dev
指5本 OK、PC 設置 OK、自然な構図 PC 宙浮き、指がおかしい

50 step の Full でこんなに崩れたものが、8 step の Lightning では安定する。これがまとめ記事のキーポイント、「過剰ステップで崩れる現象」の代表例。

06 AI brain — 微妙

ネオン回路の脳。ディテール感がやや薄い。Flux dev の方が圧倒的にきれい。

Qwen Lightning (2025) Flux dev (2024) Qwen Full (2025)
Qwen Lightning AI brain Flux dev AI brain Qwen Full AI brain
Full から改善、実用域 粒子・光の走り、解像度感が圧倒的 ディテール感薄め

→ Qwen Full は抽象アート系プロンプトが得意ではない。Lightning では実用域に入るものの、解像度感を最優先するなら Flux dev。サイバーパンク・ネオン系は Flux 系の領域。

07 ロボとチェス — 構図 OK、表情やや稚拙

3体ロボット、図書館、暖色光。プロンプトの全要素は配置できている。ただしロボットの表情が漫画調で、写実度では Flux dev に負ける。

Qwen Lightning (2025) Flux dev (2024) Qwen Full (2025)
Qwen Lightning robots Flux dev robots Qwen Full robots
数 OK、表情やや改善 数 OK、表情・手・チェス駒のディテール充実 数 OK、表情漫画調

数の指定("three robots")は Qwen 系・Flux 系どちらも通る。SD 3.5 Medium で 2体に減ってしまう領域 (本記事 v4 参照、SDXL base は実は 3体描けていた) が、ここでは両者しっかり 3体描く。表情のリアリティだけ Flux dev が頭一つ抜ける。

08 居酒屋 — ローカル唯一の漢字成功、出力としてはかなり優秀

「居酒屋」3文字、縦書きで完璧。ローカルでこれを書けるのは Qwen 系のみ。看板と提灯はあるが、Full では背景がやや闇に寄る(店構えそのものは描かれている)。

Qwen Lightning (2025) Qwen Full (2025)
Qwen Lightning izakaya Qwen Full izakaya
漢字・店構え・暖色照明すべて完璧 漢字 OK + 提灯・看板あり、背景はやや暗め

ローカルでこの出力はかなり優秀。Gemini ですら居酒屋プロンプトでは京都町家風や微妙な架空字を返してくる回がある中、Qwen Full はローカルで漢字を縦書きで成立させ、提灯と看板の構図も破綻させない。Lightning に至っては店構え・暖色照明まで揃い、本記事のシリーズで「Lightning が裏返した最強候補」になった出発点。

良かった点

  1. ローカル唯一の漢字描画能力: 「居酒屋」3文字を書けるのは Qwen 系だけ
  2. アジア食文化バイアスなし: パクチー入りラーメンにならない
  3. 写実度はローカル中トップ: Flux dev のアニメ調手癖を回避
  4. Apache 2.0: 商用 OK
  5. Lightning のベースとして優秀: LoRA 1枚追加で品質が上がる

悪かった点

  1. 1枚 93分: 8枚 12時間。寝てる間に走らせる前提でも厳しい
  2. テキスト誤魔化し手癖: "AI" の "I" 省略、"MAX" 歪ませ — 重要テキストには使えない
  3. ステップ数を増やしても品質が上がらない: むしろ Lightning の方が良い箇所がある
  4. 抽象アート系には弱い: AI brain で Flux dev に大差で負ける
  5. 40GB のディスク占有: Mac の SSD にじわじわ効く

このモデルが活きるユースケース

率直に:40GB のモデルとしては正直微妙

  • 1枚 93分の生成時間は モデル自体の遅さではなく、Mac M1 Max 64GB のメモリが足りていないせい(wired_limit 60GB を上げても 40GB ベースモデル + 中間テンソル + KV cache で swap が走る)
  • VRAM 80GB 以上の NVIDIA H100 等なら数十秒で出るはず、ただし個人開発者向けの記事の前提(固定費ゼロ・ローカル完結)と矛盾する
  • 単体で使う場面はほぼ無く、Lightning (8-step LoRA) 経由が事実上の正解

それでも使う理由を挙げるなら:

  • Lightning のベースモデルとして: ディスクに常駐させて Lightning 経由で使う(これは必須)
  • 時間を惜しまない検証用: 「Qwen 系で何が出るか」のリファレンス確認、論文比較
  • 実用での通常生成: 1枚 93分は素材作りには使えない
  • 重要テキストを含むデザイン: "AI" 省略、"MAX" 歪み(Lightning では消える)
  • 抽象アート・サイバーパンク調: Flux dev に投げる
  • 本記事の採用方針に入る: 採用方針(英語圏 = Flux dev / アジア圏 = Qwen Lightning)に Full が入るシーンは無い

→ 端的に言うと 「Qwen-Image を使うときは Lightning を使え」。Qwen Lightning を強くお勧めする — 9倍速 + 文字描画も解剖学も雰囲気も Full より良い、本記事のシリーズで「過剰ステップで崩れる現象」を発見させてくれた当事者。

ハマりポイント / Tips

1. true_cfg_scale であって guidance_scale ではない

# ❌ これは効かない
image = pipe(prompt=p, guidance_scale=4.0, ...)

# ✅ こっち
image = pipe(prompt=p, true_cfg_scale=4.0, ...)

SDXL / Flux からの引き継ぎでミスりやすい。true_cfg_scale=4.0 がデフォルト推奨値。

2. iogpu.wired_limit_mb を上げ忘れると swap 地獄

sudo sysctl iogpu.wired_limit_mb=61440  # 60GB

Mac M1 Max 64GB のデフォルト wired limit は ~38GB 程度。Qwen Full の 40GB ロードでこれを超え、swap 経由になると 1枚 93分 → 数時間 / 枚 に悪化する。再起動で設定はリセットされるので毎回必要。

3. 寝てる間に走らせるなら caffeinate + 監視

# スリープ防止 + ログ取り
caffeinate -i ./venv/bin/python compare.py qwen_image > /tmp/qwen_full.log 2>&1

8枚目の生成が終わるのが翌朝、というペース。スリープすると MPS が落ちて中断するので caffeinate -i 必須。

4. Lightning の存在を最初から知っておく

本記事の目的の一つは、「Qwen-Image を初めて触る人が Full から始めて12時間で絶望する前に、Lightning に飛ばす」こと。lightx2v が公開している Qwen-Image-Lightning-8steps-V1.0.safetensors を最初から使うべき。

5. テキスト系プロンプトは特に重い

プロンプト 生成時間
写実系 (cat, ramen, woman) 89-98分
テキスト系 (LOCAL AI, M1 MAX) 89-97分 (Lightning では2倍重い特性)
抽象系 (brain) 81分

Full では全プロンプトが 80-100分の範囲に収まる。Lightning ではテキスト系だけ2倍重い (5分 → 10-13分) 現象が出るが、Full ではそれが目立たない。Full の総ステップ数が多いため相対的に均される。

比較記事と次のモデルへ

シリーズ内の関連記事:

次作 (構想):

  • 第3弾: AI が描く各国料理 — 学習データの地理的偏向を可視化(draft)

検証環境: Mac M1 Max 64GB / macOS 25.4 / Python 3.14 / Diffusers 0.37.1 / PyTorch 2.11 (MPS) 作業ログ: 2026-04-30、Qwen-Image (Qwen/Qwen-Image, 50-step / true_cfg_scale 4.0)