
― 再現性を担保するための構造分解と完全版プロンプト ―
はじめに
ポートレート生成において、多くの人が直面する問題があります。
それは「同じプロンプトでも毎回違う画像が出る」という不安定さです。
この問題は単純に「プロンプトが短いから」ではありません。
本質は、プロンプトが“構造化されていない”ことにあります。
本記事では、ポートレート生成におけるプロンプトを「制作工程」として分解し、再現性を担保する設計手法と、実務レベルの完全版プロンプトを解説します。
プロンプトは「文章」ではなく「設計図」である
一般的なプロンプトは以下のような形になりがちです。
- beautiful woman
- cinematic
- high quality
しかしこれは、制作工程で言えば「いい感じに撮ってください」と同義です。
つまり、制御が一切できていない状態です。
重要なのは、プロンプトを以下のように分解することです。
■ポートレートプロンプトの基本構造
- 被写体設計(Subject)
- スタイリング(Styling)
- ポーズ・構図(Pose / Composition)
- ライティング(Lighting)
- 環境(Environment)
- カメラ設定(Camera)
- 色・トーン(Color)
- スタイル(Style)
- 感情・意味(Mood)
- 品質制御(Quality)
この構造は、そのまま実写の制作工程と一致します。
つまりプロンプトとは、
撮影ディレクションをテキスト化したもの
です。
再現性を下げる3つの要因
① 抽象語の多用
「beautiful」「cinematic」などは解釈が広すぎるため、毎回結果が変わります。
② 物理条件の未定義
光の位置、カメラ距離、焦点距離などが未指定だと、構図がブレます。
③ ノイズ要因の放置
背景・髪・表情など、AIが自由に解釈する部分が多すぎると不安定になります。
再現性を上げる設計原則
■1. 可能な限り数値化する
- 距離(1.5m)
- 角度(45°)
- 色(#コード)
■2. 揺れる要素を固定する
- 表情(neutral)
- 視線(camera)
- 髪型(長さ・分け目)
■3. ネガティブプロンプトで逸脱を防ぐ
- anime / cartoon 排除
- 過剰補正排除
- 背景ノイズ排除
実務レベル完全版プロンプト
以下は、再現性を最大化するために設計されたプロンプトです。
ultra-realistic portrait of a 26-year-old Japanese woman,
height 165cm, slim build, narrow shoulders, long neck,
oval face shape, small chin, straight nose bridge, slightly wide-set almond eyes,
dark brown iris (#3b2f2f), clear sclera, natural eyelashes,
light smooth skin with subtle pores, no blemishes, no freckles,
neutral calm expression, lips slightly closed, no smile,
eye contact directly to camera,
hair: medium-length (shoulder length), straight with slight inward curl at ends,
natural black (#1a1a1a), center part, slight volume at crown, no stray hair,
outfit: white silk blouse, matte texture, no patterns, slightly loose fit,
top button open, soft fabric folds, no accessories,
pose: seated upright on a chair, spine straight but relaxed,
hands resting gently on thighs, fingers naturally curved,
shoulders slightly angled (15 degrees to camera),
camera position: eye-level, 1.5 meters distance, centered framing,
framing: chest-up portrait, head near top margin,
lens: 85mm prime lens,
aperture: f/1.8,
depth of field: shallow, sharp focus on eyes, background fully blurred,
lighting setup:
single soft light at 45° camera left, slightly above eye level,
soft shadows on opposite side, subtle reflector fill (10%),
environment:
indoor studio, plain warm gray background (#d6d1cc), no objects,
color grading:
warm tone, low contrast, soft highlights, natural skin tones,
style:
editorial fashion photography, realistic, non-stylized,
negative prompt:
cartoon, anime, bad anatomy, extra fingers, blur, noise,
overexposed, harsh shadows, plastic skin, busy background,
--ar 2:3 --q 2 --style raw --seed 12345
このプロンプトの本質
このプロンプトの価値は「長さ」ではありません。
重要なのは、
- 解釈の余地を潰している
- 変数を固定している
- 制作工程を完全に言語化している
という点です。
応用:プロンプトの正しい使い方
この完全版は「完成形」ではなく「ベース」です。
例えば:
- ライティングだけ変更
- 髪型だけ変更
- レンズだけ変更
といった差し替えを行うことで、
意図したバリエーションを設計できる
ようになります。
まとめ
ポートレート生成におけるプロンプト設計は、
- 単語の追加ではなく
- 制御構造の設計
です。
そして最も重要なのは、
どの工程をAIに任せ、どこを人間が設計するか
という視点です。
AIは「生成」は得意ですが、「意図の設計」はできません。
その設計を担うのが、プロンプトです。
必要なのはテクニックではなく、
制作工程を分解し、再構築する視点です。
上記プロンプトの詳細解説
このプロンプトは単なる「詳細記述」ではなく、生成結果の揺らぎを抑えるために設計された「制御仕様書」です。
以下では、各ブロックが何を固定し、どのようにAIの自由度を制御しているのかを、実務視点で分解して解説します。
■全体構造の理解(最重要)
このプロンプトは以下の3層で構成されています:
① 形状定義(Geometry)
→ 人物の物理的特徴・構図
② 光学定義(Optics)
→ 光・レンズ・色
③ 制約条件(Constraints)
→ AIの逸脱防止
👉 この3つを揃えることで、“再現性のある生成”が成立します
■① 被写体設計(Subject Design)
ultra-realistic portrait of a 26-year-old Japanese woman,
height 165cm, slim build, narrow shoulders, long neck,
oval face shape, small chin, straight nose bridge, slightly wide-set almond eyes
●役割
- 人物の「平均化」を防ぐ
- 骨格レベルでのブレを抑制
●ポイント
- 「26歳」→ 若すぎず老けすぎない中間固定
- 「narrow shoulders / long neck」→ シルエット制御
- 「face shape」→ 顔の輪郭を固定
👉 AIは顔より“輪郭”の方がブレやすい
■② 目・肌の詳細定義(微細ディテール制御)
dark brown iris (#3b2f2f), clear sclera, natural eyelashes,
light smooth skin with subtle pores, no blemishes, no freckles
●役割
- 「不気味の谷」回避
- テクスチャの安定化
●ポイント
- 色コード指定 → 色の再現性向上
- sclera(白目)→ 濁り防止
- pores → 過度なAI補正防止
👉 “肌を指定しない”とプラスチック化する
■③ 表情・視線(最もブレる要素)
neutral calm expression, lips slightly closed, no smile,
eye contact directly to camera
●役割
- 感情の揺らぎを固定
●ポイント
- no smile → 微妙な表情変化を排除
- eye contact → 視線のズレ防止
👉 視線がズレると“別人”に見える
■④ 髪(ノイズ発生源の制御)
medium-length, straight, inward curl, center part, no stray hair
●役割
- 生成崩れの最大要因を抑制
●ポイント
- 長さ+形状+分け目を全指定
- stray hair排除 → ノイズ削減
👉 髪はAIにとって最も不安定なパーツ
■⑤ 衣装(光の反射制御)
white silk blouse, matte texture, no patterns
●役割
- 光の挙動を安定させる
●ポイント
- silk × matte → 過剰反射を防ぐ
- no patterns → 認識ノイズ削減
👉 柄はAIに誤認識を起こさせる
■⑥ ポーズ(構図の骨格)
seated upright, hands on thighs, shoulders angled 15°
●役割
- 人体構造の破綻防止
●ポイント
- hands指定 → 指の崩れ対策
- 角度指定 → 正面すぎる不自然さ回避
👉 手を指定しないと高確率で崩れる
■⑦ カメラ位置(視点の固定)
eye-level, 1.5m distance, centered framing
●役割
- パースの安定化
●ポイント
- 距離指定 → 顔の歪み防止
- eye-level → 自然な印象
👉 距離未指定=広角的歪みが発生
■⑧ レンズ・被写界深度(写真性の核)
85mm, f1.8, shallow depth of field
●役割
- 写真らしさの決定
●ポイント
- 85mm → ポートレート標準
- f1.8 → 背景分離
👉 ここが“CG感”と“写真感”の分岐点
■⑨ ライティング(最重要)
single soft light at 45°, slightly above eye level
●役割
- 立体感の生成
●ポイント
- 45° → 顔の陰影バランス最適
- 上から → 自然光再現
- fill 10% → コントラスト微調整
👉 光を制御しない=全てが崩れる
■⑩ 環境(ノイズ遮断)
plain warm gray background (#d6d1cc), no objects
●役割
- 背景の暴走防止
●ポイント
- 単色指定 → 認識安定
- no objects → 不要要素排除
■⑪ カラーグレーディング
warm tone, low contrast, soft highlights
●役割
- 印象の統一
👉 撮影後の「現像工程」に相当
■⑫ スタイル指定
editorial fashion photography, realistic, non-stylized
●役割
- 出力の方向性固定
👉 “photorealistic”より具体性が高い
■⑬ ネガティブプロンプト(制約)
cartoon, anime, bad anatomy, extra fingers...
●役割
- AIの暴走防止
●ポイント
- anatomy系 → 形状崩れ防止
- style系 → 漫画化防止
👉 ポジティブより重要な場合も多い
■⑭ パラメータ
--ar 2:3 --q 2 --style raw --seed 12345
●役割
- 最終制御
- ar → 構図比率
- seed → 再現性の核
👉 seedがないと完全再現は不可能
■このプロンプトの本質
このプロンプトは
- 詳細だから優れているのではなく
- “変数を潰している”から安定する
という設計です。
■重要な理解
この構造はそのまま、
企画 → コンセプト → 撮影 → 現像
という実写制作と一致しています。
■まとめ
このプロンプトの本質は以下です:
- 曖昧な表現を排除する
- 物理条件に落とし込む
- ノイズ要因を先回りして潰す
つまり、
AIに任せるのではなく、AIを制御するための設計
です。
■なぜ英語の方が有利なのか
① 学習データの偏り
多くの生成モデルは、
- 英語キャプション付き画像
- 英語圏のデータセット(LAIONなど)
で学習されています。
👉 つまり、
概念とビジュアルの結びつきが英語で最適化されている
② トークン分解の精度差
AIは文章をそのまま理解しているのではなく、トークン(意味単位)に分解しています。
英語の場合
- “soft light”
- “85mm lens”
👉 意味単位で安定して分解される
日本語の場合
- 「柔らかい光」
- 「85mmレンズ」
👉 分解が不安定になりやすい
(文脈依存・曖昧性が高い)
③ 写真用語の標準言語が英語
例えば:
- aperture(絞り)
- depth of field(被写界深度)
- rim light
- cinematic lighting
👉 これらは英語で学習されている前提語彙
■では日本語は使えないのか?
結論:使えるが、用途を分けるべき
■日本語が向いているケース
① コンセプト・感情
- 「静かな朝の雰囲気」
- 「孤独感のある表情」
👉 抽象概念は日本語でも機能する
② ラフ生成
- アイデア出し
- 雰囲気確認
👉 精度より方向性重視
■日本語が不利なケース
① 物理・技術指定(致命的)
- 光の角度
- レンズ
- 距離
👉 ここは英語でないと崩れる
② 再現性が必要な場合
👉 同じ画像を出したいなら英語必須
■実務的な最適解(重要)
👉 ハイブリッド運用
●推奨構造
[英語:物理・構造]
+
[日本語:コンセプト・感情]
●例
ultra-realistic portrait, 85mm lens, soft lighting, shallow depth of field,静かな朝の空気感、少し内省的な表情、落ち着いた雰囲気
👉 これが最もバランスが良い
■さらに精度を上げる方法
●① 完全英語+内部設計は日本語
- 設計 → 日本語で考える
- 出力 → 英語に変換
👉 実務ではこれが主流
●② 日本語→英語の“意図翻訳”
単純翻訳はNG:
❌ 「柔らかい光」→ soft light
✔ 「窓からの拡散光」→ diffused window light
👉 写真用語に変換することが重要
■よくある誤解
❌「日本語対応モデルなら問題ない」
→ 部分的には正しいが不十分
理由:
- 言語理解はできる
- しかし視覚との結びつきは英語優位
■結論
- 日本語でも生成はできる
- しかし
精度・再現性・制御性は英語が上
■本質
問題は言語ではなく、
どれだけ“制御可能な記述”になっているか
です。
ただし現状のモデルでは、
その制御言語が英語に最適化されている
というのが現実です。
※上記のプロンプトを使って、GeminとChatGPTで画像生成してみました。(毎回、同じ写真になるとは限りません)
ChatGPTの方はAI画像によくある顔を作成しました。Geminiの方は、本当に存在する人物のようで自然です。ただし、肩を15°振ってというのはGeminiは無視をしています。Geminiはこちらの指示をきかないところが多々あります。
![]() | ![]() |
| Gemini | ChatGPT |
日本語で、「シニヨンのアップの髪型にして」とだけ入力しました。
![]() | ![]() |
| Gemini | ChatGPT |
日本語で、「胸元が空いたゴールド色のスリップドレスにして」とだけ入力しました。
![]() | ![]() |
| Gemini | ChatGPT |
▶︎ [AI写真プロンプトの書き方|リアルな写真を作るコツ]]








