AIで画像を作るには、どの様な画像を作ってもらいたいか指示を与える必要があります。指示の書き方についてご説明します。

プロンプトとは

AIで画像生成するには、AIに指示を与える必要があります。どの様な画像を生成して欲しいか具体的に書くことで、AIはそれを理解して画像を作ってくれます。
AIに指示を与える文章のことをプロンプトと言います。

プロンプトは主に英語で単語を区切って指示します。最近のモデルは単語ではなく文章を理解してくれるものもあります。以下のモデルは自然言語を理解できる様です。
FLUX.1、SDXL、HiDream I1、Z-Image
特にHiDream I1とZ-Imageは、日本語もある程度理解してくれます。

プロンプトの構成

プロンプトの構成は、「品質・画風」、「被写体」、「被写体の詳細」、「背景・環境・ライティング」、「カメラ設定」の5種類で、この順番でまとめると良い画像が作れる様です。

AIは文章の最初に書いたもから読んでいくので、最初が最優先されます。優先度が高い順にご説明します。

品質・画風

品質はプロが撮った写真なのか、幼稚園児が描いた絵なのか、どの様な品質で生成するかを決めます。写真なのか絵なのかを指示します。絵の場合はイラスト、アニメ、油絵、水彩画などの画風を指示します。

例:4k, 8k, masterpiece, best quality, highly detailed, illustration, photo-realistic

メインとなる被写体

被写体は、人、動物、車や山などメインにしたいものを指示します。

例:1girl, 1boy, woman, man,cat, mountain

被写体の詳細

詳細は被写体が人ならば、表情、髪の長さと色、着ている服、立っているのか座っているのかなどのポーズなどです。

例:black hair, blue eyes, smile, casual clothes, standing, sitting

背景・環境・ライティング

背景は屋内ならカフェ、リビングや、外ならばストリート、森や海や川や山など。
環境は朝、昼、夕方、夜
ライティングは照明の当て方で、自然光、逆光、柔らかな照明とか。

例:background is a forest, night, sunset, dramatic lighting, bokeh,backlight, natural light, soft lighting

カメラ設定

カメラ設定はどのように写すかです。近づいて写す、全身を写す、上から写す、被写界深度などです。

例:close-up, full body, from above, depth of field

サンプル画像

サンプルの画像はRealistic Vision v5.1というモデルで生成しました。

品質、被写体、被写体の詳細、背景、カメラ設定の順番で生成した画像

プロンプト
high quality,photo, 1girl, long hair, casual clothing, smiling, beach, full body

設定値
Steps: 16, Sampler: DPM++ 2M AYS, CFG scale: 5.0, Seed: 3529341613, Size: 576x768, Model: realistic_vision_v5.1_f16

カメラ設定、背景、被写体の詳細、被写体、品質の順番で生成した画像です。少女より髪の毛のほうが優先度が高いので、髪の毛が長すぎる画像ができました。

プロンプト
full body, beach, smiling, casual clothing, long hair, 1girl, high quality, photo

設定値
Steps: 16, Sampler: DPM++ 2M AYS, CFG scale: 5.0, Seed: 3529341613, Size: 576x768, Model: realistic_vision_v5.1_f16

要素の重みづけ

重み付けとは、強調したい情報の精度を上げたいときに使います。
書き方は、以下の様になります。
(1girl:1.3)

数値を上げると、その要素が強調されます。上げすぎるとおかしな画像になってしまうことがあるので注意が必要です。

情報量は適切に

AIに指示を与えるのに、少なすぎても多すぎても良くないです。
情報が少ないと毎回違う画像が生成されます。それを狙うのも楽しいですが。
多すぎると干渉しあいヘンテコな画像が生成されます。ひとつの物に対して複数の要素を両立して欲しい場合に、それを混ぜて解釈してしまう場合もあります。

私の場合は生成する画像をイメージして、日本語で文章を作成してから必要な単語を抜き出してから英語に変換してプロンプトを作成しています。