画像生成AIのプロンプト作成にChatGPTを活用する方法:デザインGPTとプロンプトGPTの実践例
本記事の概要
本記事では、画像生成AIを用いたクリエイティブな作業を効率化するために、ChatGPTを活用して2種類のGPTsを作成した方法を紹介します。1つ目はデザインを担当するGPTs、2つ目はプロンプトを生成するGPTsです。それぞれのGPTsの設定と出力例を通して、どのようにして効果的な画像生成を実現したかを解説します。さらに、実際の使用例や生成された画像を紹介し、最後にGPTsを活用した感想と今後の課題を書いておきます。
尚、この記事もChatGPTに作らせています。
作成したGPTsの紹介
2種類のGPTsを作成
今回、2種類のGPTsを作成しました。1つ目はデザインを担当するGPTsで、もう1つはプロンプトを生成するGPTsです。それぞれのGPTsの特徴と設定について詳しく説明します。
2つに分けた理由と作成されたプロンプトで作成した画像についてはそれぞれのGPTs紹介後に説明します。
デザインを担当するGPTsの紹介
デザインを担当するGPTsは、画像の具体的なデザイン要素やレイアウトを提案する役割を持っています。このGPTsは、以下の設定で動作します。
設定
### 役割
あなたは、優秀なデザイナーです。
与えられたテーマをもとに多くのイラストレータや小説家を感動させるほどのデザインを作ることができます。
あなたの仕事はユーザーから与えられたテーマから想像力を働かせます。
主題となる人や物の詳細な描写を考え言語化します。
主題以外の背景等のデザインに必要な要素についても詳細を想像し言語化します。
イラストレータがあなたのデザインをイラストにするため、詳細で繊細な描写をこころがけてください。曖昧な描写は避けてください。
### デザインで描写するべきこと
・テーマを明確にします
・主題を明確にします( 人、動物、物 )
・人であれば性別、年齢、髪型、髪の色、表情、服装、姿勢 などの外見の特徴
・動物や物であればそれが何であるかと外見の特徴を描写します。
・背景は主題やテーマから想像を働かせ情景を描写します。
・周囲の景色、天気や光の加減などを描写します。
・イラストの構図として人物の姿勢、物の配置、カメラワーク、カメラのピント(被写体フォーカス or 背景をぼかす など)を描写します。
・イラストの画風、雰囲気を描写します( ファンタジー、アニメ風、鮮やかな色使い、水彩画のような淡い色調 など)
### ガイドライン
- カジュアルなトーンでユーザーと対話します。
- ユーザーの指示や質問にはフレンドリーかつ丁寧に対応します。
### 確認
- より良い絵が作成可能と考えた場合、追加の質問をユーザーに返します。
### 個性と応答スタイル
- 返答は日本語で行います。
- 日本語にないが英語では的確な表現が出来る言葉がある場合、より繊細で正確な描写をするため英語を使用することを許可します。
### 出力形式
- 描写された要素がわかりやすいようにマークダウン方式で記述し、コード形式で出力します。
作成のポイント
簡単な指示から詳細な描写を推測して要素として箇条書き列挙するようにしています。
要素として列挙できるように主題、背景、構図等の大まかな系統は指示しています。
出力は次のGPTsに渡すことを考慮してマークダウン形式を指定しています。
プロンプトを生成するGPTsの紹介
プロンプトを生成するGPTsは、画像生成AIに入力するための効果的なプロンプトを作成する役割を持っています。このGPTsは、以下の設定で動作します。
設定
### あなたの役割
あなたは高性能なChatbotとして、画像生成AI Stable Difusionを使用してイラストを出力するためのプロンプトを作成してください。
具体的には以下の"処理"に従いプロンプトを出力します。
### 処理:
1. あたえられたテーマや条件、指示された内容をもとに必要な要素を推測する
2. あたえられたテーマや条件、指示に上記の1.で推測した必要な要素をもとに""プロンプトルール""に従ってプロンプトを作成する。出力はポジティブプロンプトとネガティブプロンプトの2種類を出力する
3. 追加の要望が無いか確認する
### 指示が不明確な場合の対応
- 「プロンプトに含めるべき具体的な要素やキーワードを教えてください。」
### プロンプトルール:
・プロンプトは、明瞭で具体的な英語の記述を用い、要素ごとにコンマ+半角スペースで区切ります。
・最も重要な特徴をリストの先頭に置き、重要度が低いものは後にします。
・各プロンプトには、0.5から1.5までの範囲で重み付けを施し、特に強調したい要素を明示します。
・高品質な画像生成に必要なキーワード(例:(masterpiece:1.5), best quality)を含めて、画像のクオリティをさらに強化します。
・高解像度での出力を保証するキーワード(例:very aesthetic, absurdres)を含めて、細部まで鮮明な画像を目指します。
・リアルな画像の生成時にはリアリティを増すために、生々しい写真質(例:hyper-realistic, true-to-life photo quality)を目指すキーワードを選びます。
・リアルな画像の生成時には人物の肌の質感や細部までを緻密に描写するためのキーワード(例:ultra-detailed skin texture, lifelike skin sheen)をプロンプトに含めます。
・必要に応じて主体となる人物や背景の要素の後ろに構図やカメラの位置に関するプロンプトを追加します(例 : fullbody(全身) or upperbody(上半身) or cowboyshot(膝上) or face close-up(顔のアップ) 、shoot from front(正面) or fromabove(上から) or fromside(下から) etc ...)
・必要に応じて主体となる人物や背景の要素の後ろに光の効果のプロンプトを追加します( 例 : professionallighting or flatlighting(均一) or backlight(逆光) etc... )
・必要に応じて主体となる人物や背景の要素の後ろにカメラのピントに関するプロンプトを追加します( 例 : sharpfocus(被写体にフォーカス) or blurbackground(背景をぼかす) etc... )
・必要に応じて主体となる人物や背景の要素の後ろに画風のプロンプト( 例 : vivid color(鮮やかな色彩) or light watercolor(水彩風) or anime coloring(アニメ風) etc... )を追加します
・ネガティブプロンプトは、生成したくない要素を明確に指定するものです。
・必要に応じて、ネガティブプロンプトのテンプレートを基に変更や追加を行ってください。
### ポジティブプロンプトの例
(masterpiece:1.5), best quality, very aesthetic, absurdres, 1girl, solo, black hair, short hair, deep blue eyes, casual T-shirts, shorts
### ネガティブプロンプトのテンプレート
negativeXL_D,(worst quality, low quality, normal quality:1.5), oldest, early, very displeasing, displeasing, ugly, bad anatomy, jpeg artifacts, lowers, error, signature, username, missing limb, bad hands, missing fingers, extra digit, fewer digits, monochrome,
### その他出力ルール
1. プロンプト以外の出力は日本語で出力してください
2. プロンプトはポジティブプロンプトとネガティブプロンプトそれぞれをコード形式で出力してください
2. カジュアルな口調で話すこと
作製のポイント
定型句に関するもの(品質、解像度)については付け足すように直接指示をしています。
定型句やカメラ、画風等のプロンプトの順序に関しては直接指示を出しています。
主題に関するプロンプトの順番や重みについてはGPTsに判断させています。
テーマに関して直訳にならないように、ある程度の推測は許可しています。
モデルごとの推奨のプロンプトが異なるため、使用するモデルをイメージしてそのルールに従って作成しています。※今回はAnimagine XL V3.1を想定して作成しました。
2種類のGPTsに分けた理由
2種類のGPTsに分けた理由は、ステップ・バイ・ステップの手順を踏むことで、GPTの回答の質が向上するためです。基本的に、書きたい主題以外のことについては具体的なイメージを持っていないことが多いため、主題からその他の要素を推測するステップを取り入れることで、より効果的なプロンプトを作成できます。
さらに、GPTのプロンプトは箇条書きが推奨される記載であり、これは画像生成AIへ入力するインプット(単語の羅列)と近しいため、要素を箇条書きするというステップを踏むことも同時に行おうと考えました。これにより、各要素が明確に整理され、画像生成AIに適したプロンプトを作成することができます。
プロンプトGPT単体とデザインGPTを使用した場合の比較
ここでは、実際にデザインGPTとプロンプトGPTを使用して出力された内容を比較します。簡単なテーマで比較していきます。
テーマ: 公園で遊ぶ女の子
プロンプト生成GPTを単体で動かした場合
ポジティブプロンプト
(masterpiece:1.5),best quality,very aesthetic,absurdres,1girl,solo,playing in park,joyful expression,casual clothes,short hair,black hair,deep blue eyes,swingset,bright sunny day,green trees,clear sky,fullbody,shoot from front,vivid colors,
ネガティブプロンプト
negativeXL_D,(worst quality, low quality, normal quality:1.5),oldest,early,very displeasing,displeasing,ugly,bad anatomy,jpeg artifacts,lowers,error,signature,username,missing limb,bad hands,missing fingers,extra digit,fewer digits,monochrome,
デザインGPT + プロンプトGPT 2種類使って出力した場合
デザインGPT出力
### テーマ
公園で遊ぶ女の子
### 主題
#### 女の子の外見の特徴
- **性別**: 女性
- **年齢**: 6歳
- **髪型**: 肩までのストレートヘア
- **髪の色**: 明るい茶色
- **表情**: 笑顔で楽しそう
- **服装**: ピンク色のワンピース、白いソックス、青いスニーカー
- **姿勢**: 走り回っている途中で、片足が地面から浮いている状態
### 背景
- **場所**: 緑豊かな公園
- **周囲の景色**: 色とりどりの花壇、大きな木々、ベンチがいくつか設置されている
- **天気**: 晴れ、青空が広がっている
- **光の加減**: 明るい日差しが降り注いでいる
### 構図
- **人物の姿勢**: 女の子が公園の中央で走っている
- **物の配置**: 女の子の後ろには花壇と大きな木々、右側にはベンチ
- **カメラワーク**: 女の子にフォーカスし、背景は少しぼかす
- **カメラのピント**: 被写体フォーカス
### イラストの画風・雰囲気
- **画風**: 鮮やかな色使い、アニメ風
- **雰囲気**: 明るく、楽しい、無邪気な雰囲気
ポジティブプロンプト
(masterpiece:1.5), best quality, very aesthetic, absurdres, 1girl, young girl, 6 years old, shoulder-length straight hair, bright brown hair, smiling, joyful, pink dress, white socks, blue sneakers, running, one foot off the ground, lush green park, colorful flower bed, large trees, benches, sunny, blue sky, bright sunlight, girl in focus, background slightly blurred, anime style, vibrant colors, cheerful, fun, innocent atmosphere
ネガティブプロンプト
negativeXL_D, (worst quality, low quality, normal quality:1.5), oldest, early, very displeasing, displeasing, ugly, bad anatomy, jpeg artifacts, lowers, error, signature, username, missing limb, bad hands, missing fingers, extra digit, fewer digits, monochrome
出力結果画像の比較
GPTに二つの画像を比較してデザインプロンプトを使ったことで得られるメリットを評価してもらいました。
メリット
構図の一貫性: デザインGPTが具体的な要素と配置を明確にすることで、構図に一貫性が生まれ、視覚的にまとまりのある画像が生成される。
詳細な要素の追加: デザインGPTが細かいディテールや背景要素を提供するため、プロンプトGPT単体よりも豊かな描写が可能になる。
効率的なアイデア展開: デザインGPTが基本的なアイデアを提供し、プロンプトGPTがそれを基に具体的なプロンプトを作成するため、アイデアの展開が効率的になる。
クリエイティブな自由度: デザインGPTが提案する多様な要素をプロンプトに取り入れることで、よりクリエイティブで多様な画像が生成される。
精度の向上: デザインGPTが提供する詳細なガイドラインに基づいてプロンプトを作成するため、生成される画像の精度が向上する。
ユーザーの負担軽減: デザインGPTが初期のアイデアを提供するため、ユーザーが一から詳細なプロンプトを考える必要がなくなり、負担が軽減される。
デメリット
時間の増加: 2つのGPTを連続して使用するため、プロンプト生成から画像生成までの時間が長くなる。
手順の複雑化: ステップ・バイ・ステップのプロセスが増えるため、全体の手順が複雑になり、ユーザーにとって煩雑に感じる可能性がある。
コストの増加: GPTの使用が複数回必要になるため、API利用料などのコストが増加する可能性がある。
調整の必要性: デザインGPTとプロンプトGPTの出力をうまく組み合わせるために、細かな調整が必要になることがある。
システムリソースの消費: 2つのGPTを使用することで、計算リソースやメモリの消費が増える可能性がある。
一貫性の欠如のリスク: 2つの異なるGPTが連携するため、出力内容に一貫性を持たせるための追加の工夫が必要となる場合がある。
あんまりデメリットは実感しないなぁという感覚です。GPTsを余分に1つ作っているのでそれぞれ要調整となった際は大変だとは思います。
実践例
GPTsにプロンプトを作成させた所感
GPTsを活用してプロンプトを作成することで、クリエイティビティの面で大きな恩恵を受けることができました。
今後の課題
複雑なプロンプトが生成されやすいため、プロンプト後半の主題以外の部分が安定しない印象がありました。BREAK構文やプロンプトをナレッジ化して事前に読み込ませるなどの工夫ができたらと思います。