【ChatGPT＋DALL-E3】画像を二枚出したい（残念談）


　どうも、カーブミラーです。

　今回は、画像を二枚出したい、と思ってやり取りしました。結果はダメ。

:::note info
本記事は、ChatGPT（有料版）
＋DALL-E3で行なっております。
画像はあります。　あしからず。
:::

　まずは、
　　ChatGPTのアクセス不良から。

　昨日（2024/06/04）は、
　　お昼ごろから夕方に掛けて
　　　ChatGPTが使えない状況でした。

　症状としては
　　・いつものマークが出てこない
　　・入力・送信はできるが、反応なし
　　・履歴は一切表示されない

　そして、
　　23時半くらいから
　　　また同じ症状が発生しました。

　Web版、アプリ版の両方です。

　そのアプリ版で、
　　“サーバーに問題が発生しています”
　　　と出てきます。

　これは、OpenAI側の問題なので、
　　こちらは、直るのを
　　　待つしかありません。

　あるいは
　　アプリ版で
　　　画像を選択して
　　　　プロンプトをコピー。
　　　　　アプリ版の履歴は
　　　　　　見れますので。

　そのプロンプトを
　　ほかの画像生成AIへと
　　　ペーストして継続する。

　MS-CopilotのDesignerか
　　Google Geminiでしょうか。

　そこからは
　　英文しか使えません。
　　　もちろん、日本語も使えますが
　　　　きちんと指示するならば
　　　　　やはり英語でしょうね。

　ちなみに
　　Claudeもダメでした。
　　　画像生成はできないけど
　　　　“動かない”と報告があったため。

　いくら
　　ChatGPT系列だからといって
　　　同じときに、アクセス不能に
　　　　ならなくてもいいのに😅
***
　さて、本題です。

　ChatGPTで
　　画像生成をしていると、
　　　たまに、二枚出力される
　　　　ことがあります。

　ちゃんとした画像ならば
　　ありがたいのですが、
　　　低レベルです。

　同じ二枚でも
　　GPTsのDALL-Eは
　　　きちんと出してくれます。

　これを
　　こちらで
　　　コントロールできないだろうか、
　　　　というのが、今回の試みです。

　やり取りをどうぞ。
　　ちなみに、GPT-4で行なっています。
***
***user***
DALL-E3で二枚同時に描けますが、どのようにすればできますか？

***ChatGPT***
DALL-E 3で複数の画像を一度に生成するには、ユーザーが提供する詳細なプロンプトが必要です。このプロンプトには、生成したい画像の具体的な内容、スタイル、環境、色彩などを含めることが求められます。プロンプトが具体的であればあるほど、AIは正確にユーザーの意図した画像を生成することができます。

例えば、異なるシーンを含む二枚の画像を生成したい場合、以下のようなステップで進めることができます：

1. **プロンプトの作成**：各画像についての詳細な説明を書きます。たとえば、「静かな湖の夕暮れの風景」と「賑やかな市場の昼間のシーン」といった具体的なシチュエーションを指定します。

2. **画像生成の依頼**：作成したプロンプトを用いて、画像生成を依頼します。ここで、生成したい画像の数やサイズなどのオプションも指定します。

3. **結果の確認**：生成された画像を確認し、意図した通りに仕上がっているかをチェックします。必要に応じて、プロンプトを調整して再度依頼することも可能です。

これらのステップを踏むことで、DALL-E 3を用いて複数の画像を同時に生成することが可能です。具体的なプロンプトを提供していただければ、私が画像生成の依頼を代行することもできますので、詳細を教えてください。

***user***
具体的にはどのようにすればいいですか

***ChatGPT***
DALL-E 3を使用して複数の画像を生成するための具体的な方法を説明します。まずは、ユーザーがどのような画像を求めているのか、その詳細を具体的に知る必要があります。それに基づき、以下のステップで進めます：

### 1. プロンプトの詳細化
- **シーンの詳細**：場所、時間帯、季節、気分（例：「静かな湖畔の夕暮れ時」）
- **対象の特徴**：登場する人物や物の特徴（例：「笑顔の女性が湖を背景に立っている」）
- **色彩とスタイル**：色調、画風（例：「暖色系で、印象派のスタイル」）

### 2. 画像生成の依頼
- **画像のサイズと形式**：生成する画像の解像度やアスペクト比
- **画像の数**：同時に生成したい画像の枚数（この場合は2枚）

### 3. 生成コマンドの実行
こちらでは、具体的にどのような画像を生成したいのかの詳細をいただければ、実際に生成依頼を行うコマンドを実行できます。たとえば、次のようなプロンプトを私がDALL-E 3へ送信します：

```json
{
  "prompt": "A quiet lakeside at sunset with a smiling woman standing, backdrop of the lake, warm colors, impressionistic style; A busy market scene during daytime with vibrant colors and lots of people shopping, in a realistic style.",
  "size": "1024x1024",
  "n": 2
}
```

この例では、1枚目の画像は「湖畔の夕暮れ時に笑顔の女性がいる印象派スタイルの画像」、2枚目は「昼間の賑やかな市場のリアリスティックスタイルの画像」という内容です。

### 4. 生成された画像の評価
- 生成された画像を評価し、必要に応じてプロンプトを微調整して再度依頼することも可能です。

以上の手順に従って、具体的な要望に基づいた画像を生成することができます。どのような画像を希望されているか教えていただければ、さらに具体的なアシストが可能です。

***user***
（上記のPromptを送信）

***ChatGPT***
（一枚目しか出てこない）

***user***
二枚目は？

***ChatGPT***
申し訳ございませんが、今回の生成で一枚の画像のみが作成されました。二枚目の画像を生成するために、再度リクエストを送る必要があります。二枚目の画像として、どのような内容を希望されているか再確認させていただけますか？それに基づいて再度生成を行います。

***user***
DALL-E3への依頼フォーマットを教えて

***ChatGPT***
DALL-E 3に画像生成を依頼する際のフォーマットは、以下のようになります。このフォーマットに従って、詳細なプロンプトを作成し、必要なオプションを指定します。

### 基本的なリクエストフォーマット

```json
{
  "prompt": "ここに生成したい画像の詳細な説明を入力します。",
  "size": "画像の解像度を指定します（例：1024x1024）",
  "n": 生成したい画像の数を指定します
}
```

### 各項目の詳細

1. **prompt**: この部分には、生成したい画像の具体的なシーンやスタイル、色彩などの詳細な説明を入力します。この説明は、AIが意図に沿った画像を生成するための基礎となります。

2. **size**: 生成する画像のサイズを指定します。一般的なオプションには「1024x1024」（正方形）や「1792x1024」（横長）などがあります。サイズは、使用するプラットフォームや目的に合わせて選ぶことができます。

3. **n**: 生成したい画像の枚数を指定します。複数の画像を一度に生成したい場合にこのオプションを使用します。

### 例

以下は、ある特定のシーンの画像を生成するためのサンプルリクエストです。

```json
{
  "prompt": "夕暮れ時の海辺で犬と遊ぶ子供たちの楽しげなシーン、明るく暖かい色調でリアリスティックなスタイル。",
  "size": "1024x1024",
  "n": 1
}
```

この例では、夕暮れ時の海辺で遊ぶ子供と犬の画像を、リアリスティックなスタイルで1枚生成するよう依頼しています。このフォーマットを参考にして、ご希望の画像内容を詳細に記述してください。

***user***
フォーマットで、二枚の画像を欲しいときは、どのように書けばいいですか

***ChatGPT***
二枚の画像を同時に生成したい場合は、`n` の値を `2` に設定して、プロンプトに両方の画像に関する詳細を含めます。両方の画像に対して共通のスタイルやテーマがある場合は、その情報をプロンプトに統合することができます。異なるスタイルやテーマで画像を生成したい場合は、それぞれの詳細を明確に区別して記述することが重要です。

### 例: 異なるテーマの二枚の画像を生成する場合

```json
{
  "prompt": "1. 静かな湖の夕暮れ時に立つ笑顔の女性、暖色系で印象派スタイル。2. 昼間の賑やかな市場で買い物をする人々、リアリスティックスタイルで鮮やかな色彩。",
  "size": "1024x1024",
  "n": 2
}
```

このリクエストでは、一枚目の画像は「湖の夕暮れと笑顔の女性」を印象派スタイルで、二枚目の画像は「昼間の賑やかな市場」をリアリスティックスタイルで表現することを指示しています。このように、異なるシーンやスタイルを一つのプロンプトで明確に分けて記述することで、AIはそれぞれ異なる画像を生成することが可能です。

プロンプトにはそれぞれの画像の内容を番号をつけて明確に区別すると良いでしょう。これにより、AIはどの部分がどの画像に対応しているのかを理解しやすくなります。

***user***（上記Promptの一部を変更）
{
  "prompt": "1. 静かな湖の夕暮れ時に立つ笑顔の女性、暖色系で印象派スタイル。2. 青空のもと、賑やかな市場で買い物をする人々、リアリスティックスタイルで鮮やかな色彩。",
  "size": "1024x1024",
  "n": 2
}


***ChatGPT***
![Converted_Image (1).jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3457238/0e27530a-fe5e-9f56-069e-9c18a831c9fd.jpeg)
（一枚の左右に描かれましたね）

***user***（ちょっと確認）
{
  "prompt": "黒猫",
  "size": "1024x1024",
  "n": 1
}


***ChatGPT***
![Black_Cat.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3457238/8e78d7ae-3098-67e3-f8e3-12cc3e86229e.jpeg)

***user***
英語プロンプト出力。略さずに和訳。

***ChatGPT***
こちらが英語でのプロンプトです：

"A realistic black cat sitting gracefully, focusing on its sleek fur and bright eyes, natural setting."

このプロンプトを日本語に完全に訳すと以下のようになります：

「自然な背景の中で、滑らかな毛並みと明るい目を持つ、優雅に座っているリアルな黒猫。」
***

　まず、
　　目的の二枚生成は
　　　ダメでしたね😅

　System Prompt（ChatGPTの中）を
　　変更しない限り、
　　　できないのでしょうね。

　それから
　　最後に、黒猫を出しました。

　これは
　　本当にフォーマットどおりに
　　　機能するのかのチェックです。

　どうやら
　　ChatGPTがPromptを盛るのは
　　　仕方ないことのようですね。

　まぁ、“黒猫”だけでは
　　描きようがなかったのかも😅

　問題は、フォーマットです。
　　このフォーマットを使用すれば
　　　二枚生成は本当に避けられるのか
　　　サイズ指定も守られるのか

　この点は
　　確認する必要がありますね。

　みなさんの
　　作品制作の糧に
　　　なれば、幸いです。

　今回は、ここまで。