はじめに
前回、下記の記事にて、DALL-E 3におけるプロンプトの書き方や、主要なパラメータ、具体的な生成事例、チューニングの仕方について解説をしました。今回の記事では、ChatGPT 4oのプロンプトの記述形式についてより深堀ってみました。
それでは、どのようなプロンプト記述形式があり、どんな違いがあるのか、生成事例を比較して見ていきましょう。
DALL-E 3の基本的なプロンプト処理の流れ
まず、具体的なプロンプト記述形式に説明する前に、DALL-E 3がプロンプトに基づいて画像生成してくれる一連のプロセスについて、簡単に説明しておきたいと思います。
- プロンプトの入力
ChatGPTのチャット欄にプロンプトを入力します。例えば、「青い空の下で咲く満開の桜の木、風に舞う花びらを描いてください」といった、生成したい画像に関する具体的な指示をします。 - ChatGPTによるプロンプトの解析と構造化
続いて、ChatGPTは入力されたプロンプトを解析し、自然言語処理(NLP)技術を用いて内容を理解します。その際にユーザーの意図を読み取って、プロンプトの補充や詳細化が行われます。その後、更にプロンプトをDALL-E 3が理解しやすい形式に構造化します。 - 内部表現への変換
構造化されたプロンプトは内部表現に変換されることで、DALL-E 3が処理できる形式になります。その形式の中には、オブジェクト情報(キャラクター、物体など)や環境情報(背景、場所など)などの各種情報があり、それらに基づいて画像生成のプロセスへと進みます。 - 画像生成
内部表現を基に画像を生成します。DALL-E 3は大量の学習(テキスト-画像のペア情報)がなされているので、プロンプトで指定された要素(例えば桜の木、青い空、舞う花びらなど)を反映した詳細な画像生成が可能です。 - フィードバックと再生成
最初の生成結果が期待通りでない場合、ユーザー側からのフィードバックを受けて、プロンプトを調整して再度生成します。 - 安全性と倫理的配慮
生成された画像が表示される前に、安全性チェックが入ります。著名人の生成だったり、成人向けになっていないか、または明らかに既存のキャラクターに類似していないかなどが確認されます。
このように、ChatGPT上で画像生成する場合には、DALL-E 3にプロンプトが引き渡される前に、「ChatGPTでの解析・補充・構造化」のプロセスが入っています。これによって、簡易的なプロンプト記述であっても高品質な画像を得られる一方で、意図とは異なる、予期していない解釈が入ってくることもあるわけです。
プロンプト形式の種類とそれぞれの特徴
それでは、プロンプト形式によって、解釈のされ方がどのように変わるのか見ていきましょう。以下、8種類のプロンプトの記述形式を取り上げます。各プロンプト形式に基づいて生成された画像を比較していきたいと思います。
1. 明示的な命令形式
- プロンプト例:「DALL-E 3, 青い空の下で咲く満開の桜の木、風に舞う花びらを描いてください。」
- 特徴:最初に「DALL-E 3」と呼びかけることで、明確な指示として認識されやすい傾向。
生成された画像のプロンプト:
Under a clear blue sky, a fully bloomed cherry blossom tree stands with petals gently swirling in the wind. The tree is positioned centrally, with the delicate pink petals creating a vibrant contrast against the azure backdrop. There are a few wisps of clouds in the background, enhancing the serene and picturesque atmosphere.
指示した通り、美しい青空の背景に、満開の桜の木、風に舞う花びらが詳細に描かれています。生成された画像のプロンプトを確認してみると、「木の位置」、「鮮やかなコントラスト」、「少しの雲」が情報として補完されていることが分かります。
2. 自然言語形式
- プロンプト:「青い空の下で咲く満開の桜の木、風に舞う花びらを描いてください。」
- 特徴: 多少の曖昧さはあるものの、自然言語解析により、プロンプトを適切に構造化。
生成された画像のプロンプト:
Under a clear blue sky, a fully bloomed cherry blossom tree stands with petals gently swirling in the wind. The tree is positioned centrally, with the delicate pink petals creating a vibrant contrast against the azure backdrop. There are a few wisps of clouds in the background, enhancing the serene and picturesque atmosphere.
こちらも先ほどと殆ど同じで、指示通りの画像になっています。また補完されているワードも全く同じですね。こちらのほうがややくっきりとした画像の印象を受けますが、この違いはシード値のランダム性によるものと思われます。
3. Prompt指定形式
- プロンプト:「Prompt: “青い空の下で咲く満開の桜の木、風に舞う花びらを描いてください。”」
- 特徴: 明確な指示として認識し、比較的高速で処理する。
生成された画像のプロンプト:
A fully bloomed cherry blossom tree under a clear blue sky, with petals gently swirling in the wind. The tree stands centrally, with delicate pink petals contrasting against the azure backdrop. A few wisps of clouds enhance the serene and picturesque atmosphere.
こちらも指示通り、品質も高い画像にはなっていますが、1, 2の事例とは異なり、桜の花に少し焦点が当たっていて、実際に生成画像のプロンプトを見ても、満開の桜(A fully bloomed cherry blossom)が先に来ていて、優先されているのではないかと推測されます。
4. ブロック形式
- プロンプト:{青い空の下で咲く満開の桜の木、風に舞う花びらを描いてください}
- 特徴: 明確な指示として認識し、高速で処理。
生成された画像のプロンプト:
Under a clear blue sky, a fully bloomed cherry blossom tree stands with petals gently swirling in the wind. The tree is positioned centrally, with the delicate pink petals creating a vibrant contrast against the azure backdrop. There are a few wisps of clouds in the background, enhancing the serene and picturesque atmosphere.
これは1, 2と類似しており、生成画像のプロンプトも同一になっています。
5. ストーリー形式
- プロンプト:「青い空の下、満開の桜の木が立っていました。風が吹くと、花びらが舞い上がり、美しい光景を作り出しました。」
- 特徴: ストーリー形式は、シーン全体を詳細に描写し、より豊かなコンテキストを提供します。
生成された画像のプロンプト:
Under a clear blue sky, a fully bloomed cherry blossom tree stands. The wind blows, causing petals to swirl in the air, creating a beautiful scene.
これまで生成された1~4の画像とは大きく異なっています。ストーリー形式ということで、指示内容自体が少し異なる部分はありますが、その部分を正確に反映していて、動的な印象を感じさせます。一方で、生成された画像のプロンプトは、比較的シンプルなものになっています。
6. JSON形式
- プロンプト:{“prompt”: “青い空の下で咲く満開の桜の木、風に舞う花びらを描いてください。”}
- 特徴: JSON形式は、データの構造が明確であるため、AIがプロンプトを正確に認識しやすくなります。
生成された画像のプロンプト:
A fully bloomed cherry blossom tree under a clear blue sky, with petals gently swirling in the wind. The tree is positioned centrally, with delicate pink petals creating a vibrant contrast against the azure backdrop. A few wisps of clouds enhance the serene and picturesque atmosphere.
この画像は1~4に近いものになっています。実際に、生成画像からプロンプトを見ていくと、「1,2,4」と「3」の中間的な状態になっていることが分かります。
7. キーワード形式
- プロンプト:キーワード: 青い空, 満開の桜の木, 風に舞う花びら
- 特徴: キーワードを並べることで、AIに対して必要な要素を簡潔に伝えることができます。詳細な説明が必要ない場合に便利です。
生成された画像のプロンプト:
Clear blue sky, fully bloomed cherry blossom tree, petals swirling in the wind.
これは特徴的で、最低限の情報しか反映されていません。画像からのプロンプトもかなり簡易的ですね。何度かやり直せば、もう少しクォリティ高いものが得られるかもしれませんが、今回は一発勝負としてやり直しはしていません。
8. 箇条書き形式
- プロンプト:
・青い空
・満開の桜の木
・風に舞う花びら - 特徴: 箇条書き形式は、各要素を明確に分離し、AIがそれぞれを個別に認識しやすくします。
生成された画像のプロンプト:
Blue sky, fully bloomed cherry blossom tree, petals swirling in the wind.
これも1~4に近い部分はありますが、鮮やかさや、青空との対比は弱くなっており、品質的にはやや劣る部分があるかと思います。7と同じくプロンプトは簡潔で、十分な補完がなされていません。
まとめ
各プロンプト形式の特徴・生成画像の比較
プロンプト形式 | 特徴 | 生成画像 |
---|---|---|
明示的な命令形式 | 明確で高品質な結果 | |
自然言語形式 | 自然な記述で使いやすい | |
Prompt指定形式 | 明確なプロンプト認識 | |
ブロック形式 | 明確なプロンプト認識 | |
ストーリー形式 | 豊かなで動的な印象 | |
JSON形式 | 構造化されていて正確 | |
キーワード形式 | 簡潔で使いやすいが、 品質面には難あり。 | |
箇条書き形式 | 簡潔で使いやすい |
最適なプロンプト形式の選び方
ここまで見てきたようにプロンプトの記述形式によっても、生成される画像が変わってきます。そのため、目的や求める結果に応じて、最適なプロンプト形式を選ぶことが重要だと思います。例えば、通常のレベル感であれば自然言語方式で十分かと思いますが、詳細で豊かな画像を求める場合はストーリー形式が適している場合もありそうです。
最後に
この記事では、DALL-E 3を使用して日本語プロンプトを効果的に活用するためのさまざまな形式とその特徴について解説しました。プロンプト記述の選択によって得られる結果の違いを理解し、目的に応じて最適な形式を選ぶことで、より精密で魅力的な画像を生成することができます。
コメント