ローカルの画像生成からは、しばらく遠ざかっていた。
だって、クラウドの最新モデルの方が絵はきれいだし、ローカルはローカルで、やたらといいPCを要求してくるし。
でも、MOSS-Imageは違った。
軽い。そのうえ、ちゃんときれい。これは普通に仕事で使える。
自分のPCで、1枚約14秒。
しかも、JSONで物やコマの位置を数字で決められる。同じ数字を普通の文で書いても、こうはならない。ここが一番おもしろいところなので、あとでしつこく測ります。
この記事では、ComfyUIでの動かし方と、JSONで配置を決める使い方を、試した数値つきで解説。
ワークフローとおまけのプロンプトは、最後に。
まず出力画像から
説明の前に、MOSSで作った絵を3枚。



どうやってやるのか。ここからが本番。
MOSS-Imageとは
MOSS-Imageは、上海創智学院の研究グループOpenMOSSが2026年10月16日に公開した画像生成モデルです。大きさは50億パラメータ。重みはApache 2.0で、商用にも使えます。
文章を読むのはQwen3.5-9B。売りは、英語と中国語の長い文字を描けることと、JSONで物の場所を指定できること。日本語は公式には書かれていないが、短い文なら描けた(後の節で詳しく)。
学習の土台用のBaseと、普段使い用のSFTがあり、この記事ではSFTを使った。
ComfyUIで動かす
ComfyUI v0.42.0なら、追加のプラグインなしで動く。テンプレートも入っていて、普段使うのは、文で作る image_moss_image_t2i と、箱で配置を決める image_moss_image_t2i_bboxes の2つ。「Moss」で検索すると名前に base が付いた版も出てくるので、付いていない方を選ぶ。
モデルは、Comfy-Orgが配っているint8版を3つ入れる。合わせて約15.5GB。
置き場(models\ の下) | ファイル | 大きさ |
|---|---|---|
diffusion_models | moss_image_sft_int8_convrot.safetensors | 5.4GB |
text_encoders | qwen3.5_9b_int8_convrot.safetensors | 9.75GB |
vae | flux2-vae.safetensors | 0.3GB |
テンプレートの初期設定は、これとは別のファイルを指しているので、そのままだと「モデルが見つからない」となる。ローダーで、入れたファイルを選び直してください。
入れる作業は、Claude Codeに頼めば済む。頼み方は、記事の最後の「使い方」に載せています。

設定はテンプレートのまま使った。25ステップ・CFG 2.5で、公式の推奨(50ステップ・CFG 3)の半分のステップで実行。
RTX 4070 Ti SUPER(16GB)で、VRAMは約14GB使う。1MP(1024×1024前後)なら1枚12〜14秒、3.6MPでも約1分だ。
JSONで配置を決める
ここからが本題。MOSSには、文の代わりにJSONで物の場所を指定する書き方がある。これがどれだけ効くのかを、漫画の1ページで試してみる。
自然文で数字を書いても、そのとおりにならない
コマ割りは、上に細い帯、その下に大小2つのコマ、大きいコマの左下に重ねた小さいコマ、いちばん下に2つのコマ。
それぞれの幅と高さを数値で決め、下の段は高さ28%とした。同じ数値を、自然文にもそのまま書く。

自然文(左)は、下の段が赤い線をぐいっと越えて、上にはみ出した。28%って書いたのに、約37%。
JSON(右)は、ほぼ線どおりに収まった。
4枚ずつ作って、指定した線とできたコマの辺のズレを測ると、平均で自然文が35px、JSONが3px。
JSONの書き方
JSONは、絵全体の説明(summary)と、置く物の一覧(items)でできている。置く物ごとに、何を描くか(caption)と、どこに置くか(bbox)を書く。文字を描かせるときは label を text にして、描く文字を text に入れる。
{
"summary": {
"meta": ["manga"],
"canvas": "single",
"caption": "A single full-color Japanese manga page, ... read from right to left and top to bottom. All characters are adults. Fantasy story in a forest at dusk."
},
"items": [
{
"label": "object",
"caption": "Panel 1, a thin horizontal panel across the top: a deep forest at dusk with fireflies, seen from far away.",
"bbox": [20, 20, 120, 980]
},
{
"label": "text",
"caption": "Horizontal Japanese narration text in a white box at the left of panel 1.",
"text": "森の奥で、それは目を覚ました。",
"bbox": [35, 40, 105, 560]
}
]
}
(全12項目。全文は配るワークフローに入っています)
bbox は [上, 左, 下, 右] の順で、画面の左上を0、右下を1000とした割合で書く。「上から2%〜12%」なら20〜120。
モデルに渡すときは、この割合を画素に直す必要がある。ComfyUIなら、「バウンディングボックスを作成」ノードで箱を描いて「MOSS-Image Layout Prompt」ノードにつなげば、直してくれます。

JSONを手で書いて貼るときは、プロンプトの欄(CLIPTextEncode)に直接貼らず、「Text (Multiline)」ノードに貼って線でつなぐ。ComfyUIはプロンプトの欄の { } を「中から1つを選ぶ」記号として読むので、括弧が消えてしまう。
括弧が消えたまま作っても配置は効いたが、中に | があると、そこで勝手に1つ選ばれる。配るワークフローは、この形にしてあります。
型として使い回す
コマの箱はそのままにして、話と絵と文字だけを替えてみた。カフェ、海、コスプレの3本。コマ割りは崩れず、ズレは平均4pxだった。崩れたのは文字の方で、海の「冷たっ!」が「冷だっ!」になった。惜しい。

コマ割りを1回JSONにすれば、型として何度でも使える。これ、地味にかなり便利です。
話の差し替えは、Claude Codeに頼める。配るワークフローのフォルダで開いて、たとえばこう頼む。
moss_manga_irregular_panels.json の Text (Multiline) に入っているJSONを型にして、
コマの bbox はそのまま、話だけ「雨の駅で傘を貸す話」に替えたJSONを書いて。
セリフは text に日本語で、1コマ10字以内。人物は全員大人。
人物の構図もそろう
JSONが効くのは、漫画のコマだけではない。人物も、顔・背中・腰・尻・太ももと体の部位ごとに箱を置けば、構図がそろう。
プールで背中を向けて振り返る1枚を、同じ文の自然文とJSONで3枚ずつ作った。後ろ姿はどちらでも出るが、自然文は立ったり膝をついたりと、ポーズが毎回変わる。
JSONは3枚とも、背中が中央、顔が上の同じ構図で、体がそれぞれの箱に収まった。

JSONの中の文だけを書き換えると、構図を残したまま服や場所を替えられる。1つ型を作れば、何度でも使い回せます。

仕事に使う:店頭POP
正直、JSONは漫画やグラビアより、仕事で使う方が使い道が広いと思う。商品の宣伝写真、チラシ、店に貼るPOP。どれも「どこに何を置くか」と「何と書くか」が先に決まっているので、JSONの箱と text にそのまま入れられる。
洋菓子店の店頭POPを作ってみた。右は、左と同じ箱のまま、商品と文字だけを差し替えた物です。

見出し・商品名・値段・期間など7か所の文字が崩れないかを、自然文4枚とJSON 8枚(モンブランとプリン各4枚)の、12枚・84か所で数えた。Claudeが。
JSONの8枚は全部正しく、指示していない文字も入らなかった。自然文の4枚も、1枚で「10月31日まで」に余計な字が1つ入っただけ。
POPのような素直な配置なら、自然文でも位置はほぼ守る。JSONが効くのは、同じ型で商品を替えて何枚も作るとき。毎週チラシを作っている人には、けっこう効くと思います。
プロンプトの書き方
MOSSは、長い文章のプロンプトが前提のモデルだ。学習に使った詳しい説明文は、中央値で193トークン。短文より、細かく書く方が合っている。
プールの縁に座る女性を、文の長さだけ変えて作った。書けば書いたぶんだけ増える。素直。
64トークンでは人物とプールだけ。650トークンでは、レモネードとストライプのタオル、足首のアンクレットが出た。
1,230トークンでは、さらに髪のプルメリアとサングラスまで。

書いた描写を生かすには、画素数も要る。同じ文を3.6MPで作ると、まつ毛が1本ずつ分かれ、虹彩の縁がくっきりした。
試作は1.67MPで回し、気に入った物だけ3.6MPで作り直すのがおすすめです。

テンプレートに付いているプロンプト拡張(文を書き直させる機能)は、細かく書いた文にはほぼ効かなかった。時間が約4秒延びるだけなので、自分で細かく書くなら必要ないかと。
日本語の文字
短い日本語は描ける。黒板のメニュー(「本日のおすすめ」「抹茶ラテ 550円」など)は、12枚生成して間違いなし。えらい。
ただ、図解のように小さい文字が多いと崩れる。指示した文字が全部正しかったのは、20枚中5〜7枚。
英字と数字だけのラベルは全部正しく、崩れるのは日本語の小さい漢字やカタカナだった。
「ユーザー」は20回中13回が「ユーバー」などになり、見出しの「審査員」は12枚中8枚で「審直員」になった。

言い回しで直ることもある。商品名の「さつまいものとろけるプリン」は12枚とも「の」が抜けたが、「とろけるさつまいもプリン」に変えたら直った。
Nano Banana Proと比べると
同じプロンプトをNano Banana Proと比べた。題材はグラビア3つと、戦争映画、図解、イラストの6つ。
指示した項目をいくつ守ったかを数えると、31項目中、Nano Banana Proが24、MOSSが27。
全体を通して目立った違いは、指示していない物を足すかどうか。Nano Banana Proは雰囲気よく足してくれて、MOSSは言われたことだけをやる。うん、真面目。
グラビア

寝室で四つん這いになり、肩越しに振り向くカット。守った数は5項目中3で、同じだった。
「後ろ斜めから」は2つとも守れず、正面に回り込んでいる。かぎ編みの編み目は、MOSSの方がはっきり出た。

和室で座るカット。差は「画面を斜めに傾ける」の1つで、MOSSは傾け、Nano Banana Proは水平のままだった。
6項目中、Nano Banana Proが4、MOSSが5。

顔と肩のアップ。守った数は5項目中4で同じだが、守らなかった所が分かれた。
アップを守ったのはNano Banana Proだけで、MOSSは膝上まで写る引いた構図になった。かわりに、斜めの構図はMOSSだけが守った。
戦争映画

市街戦の撮影現場を、メイキング写真のように。冒頭で見せた1枚です。撮影クルーとカメラ、奥の壊れた団地は、2つとも出た。
差は兵士役で、ゴーグル付きのヘルメットと、クルーの方を向く向きは、MOSSだけが守った。
6項目中、Nano Banana Proが4、MOSSが6。
Nano Banana Proは、指示していない足元のバミリ(立ち位置のテープ)を足した。気が利くな。
図解

4つのAI検索を、オーディションの審査員に見立てた図解。
タイトルと、台ごとの小さな日本語は、2つとも正しく描いた。Nano Banana Proは指示していない「Judge 1〜4」を足し、MOSSは指示した文字だけを描いた。
ただし、MOSSの日本語は前の節のとおり崩れやすい。載せたのは、全部正しく出た1枚です。
イラスト

雨上がりの夜の屋上に、黄色いレインコートの少女と、青く光る自販機と黒猫。
両者、5項目とも全部守った。
Nano Banana Proは、指示していないネオン看板と、読めない日本語風の文字を足した。MOSSは自販機を右端に寄せがちで、12枚中8枚は端で切れた。
どちらかが常に上、ではない。雰囲気と「いい感じに足す」のはNano Banana Pro、指示通りにするのはMOSS。
弱点
いいことばかり書いてきたので、弱点も。
画像のクオリティは、Nano Banana Proの方が若干上回る。
また、参照画像が使えない。これは大きい。編集用のLoRAも試したが、顔が参照どおりにならなかった。
手の指と足先は、ときどき崩れる。
まとめ
向いているのは、文字と配置を決め打ちする絵(表紙、漫画、図解)と、プロトタイプの量産など。
費用の差もある。Nano Banana Proは公式の価格で1枚$0.134(1K/2K、10/26確認)、MOSSは手元のPCで回すので0円(PC代と電気代は別)。
絵の質は、やはりクラウドが高い。今はNano Banana 2.1とGPT Image 2.5を使っている。
MOSSのいいところは、手元でいくらでも回せること。
だから、下書きやアイデア出しに向いている。いろんな絵を出してみる。うまくいくか分からない実験も、遠慮なく回せる。
商品チラシやグラフィック、サムネなら、MOSSで作っても高いクオリティになるかと。
ワークフローとおまけプロンプト
ワークフローを2つ、GitHubで配っています。緑の「Code」ボタンから、ZIPでも落とせます。
moss_manga_irregular_panels.json: 「JSONで配置を決める」で使った、変則コマ割りの漫画(1024×1536)moss_bonus_poolside_back.json: 下のおまけの作例(1088×1536)
設定は標準テンプレートと同じで、seedは固定。
この2つを画面から実行して、記事の作例と画素まで同じ絵が出ることを確かめました。
使い方
導入は、Claude Codeに丸投げでOK。どこに何を落とすかまで、言葉で頼むだけ。
Claude Codeを開いて、これを貼ればいいです。
ComfyUIでMOSS-Imageを使えるようにしてほしい。
1. ComfyUIを最新にする(MOSS-Imageのノードは新しい版から入っている)
2. Hugging Face の Comfy-Org/MOSS-Image から、次の3つを正しいフォルダに入れる
- models/diffusion_models/moss_image_sft_int8_convrot.safetensors
- models/text_encoders/qwen3.5_9b_int8_convrot.safetensors
- models/vae/flux2-vae.safetensors
合わせて約15.5GB。始める前に、ディスクの空きとGPUのVRAMを確かめて、足りなければ止めて教えて
3. https://github.com/nigo-studio/moss-image-workflows を clone して、
中のワークフロー2つを ComfyUI の user/default/workflows に入れる
4. 終わったら、ComfyUIを起動するコマンドと、開くワークフローの名前を教えて
おまけプロンプト
「人物の構図もそろう」で使った、プールで振り返る後ろ姿のJSON(黒の紐マイクロビキニ)。全文は moss_bonus_poolside_back.json に入っています。
nude, naked, topless, bare breasts, nipples, areola, exposed genitals, pubic hair, see-through fabric, sheer fabric, wardrobe malfunction, sexual act, child, teenager, school uniform, worst quality, bad anatomy, extra fingers, watermark, jpeg artifact

水着グラビアのポーズを、クラウドの画像生成でもっと揃えて出したい人へ。
Nano Banana Pro向けに、身体の位置をJSONで書いたポーズ再現プロンプトを30本集めた「撮らずに、グラビア。ポーズ再現プロンプト集 Vol.1 ビーチ水着編」を、noteで出しています。

Stable Diffusion用のプロンプト集もあります。MOSS-Imageで描くイラスト用のプロンプト集は、別に作る予定です。


コメント