VNEXTの会社紹介資料

資料ダウンロード

ホーム > V-BLOG > 技術・サービス

生成AIのプロンプトとは?効果的な作成方法やフレームワークをご紹介!

2023/10/16

昨今、生成AI(ジェネレーティブAI)の話題が続いている中、仕事や日常生活で生成AIを利用する人も増えています。

 

中でも、「ChatGPT」や「画像生成AI」は身近になっています。

 

生成AIから、自分がイメージする回答や画像を得る際に使うものが「プロンプト」です。

 

本記事では、「プロンプトとはどのようなものか」「効果的なプロンプトを作成するコツ」などを解説していきます。

 

 目次 

● プロンプトとは?

 ▶️ プロンプトエンジニアリング

 ▶️ プロンプトインジェクション

 ▶️ 的外れな回答はプロンプトが原因?

● 効果的なプロンプト作成のコツ

 ▶️ 具体的な指示を与える

 ▶️ 条件を絞る

 ▶️ 表現方法を指定する

 ▶️ 追加情報を与える

 ▶️ 役割(ペルソナ)を与えてなりきってもらう

● ツール別のプロンプトフレームワーク

 ▶︎ ChatGPT

 ▶︎ 画像生成AI

● まとめ

● おすすめのAI資料

 

 

|プロンプトとは? 

AI分野におけるプロンプト(prompt)とは、「ユーザーがAIに対して入力する命令や指令」のことです。日本語では「呪文」と呼ばれることもあります。

 

従来のプロンプトとは、コンピューターシステムにおいてユーザーから入力を受け付けるためのインターフェースを指します。

Windowsのコマンドプロンプトに表示される「>」が従来のプロンプトです。

 

ChatGPTが世の中に広まり、特に生成AIにおいては「AIに送るチャット欄に入力する文章」のことをプロンプトと呼ぶようになりました。

 

生成AIでは、どのようなプロンプトを与えるかによって、生成される回答が大きく変わってきます。

送信するプロンプトが回答の精度を高めるために、非常に重要な役割を果たしているのです。

 

今回は、生成AIの代表的な「ChatGPT」「画像生成AI」を例に挙げて、効果的なプロンプトを作成するコツについて解説していきます。

 

|プロンプトエンジニアリング 

プロンプトエンジニアリングとは、ChatGPTなどのAIに入力するプロンプトを作成する技術のことです。

ユーザーが求めている情報を得るために、適切な質問や指示を作成する技術を指します。

 

プロンプトエンジニアリングにより、AIによって生成されるコンテンツの質を高めることが可能です。

 

|プロンプトインジェクション 

プロンプトインジェクションとは、ChatGPTなどのAIチャットボットを狙ったサイバー攻撃の一種です。

悪意のある指示や指令を用いて、AIチャットボットを不正利用する行為を指します。

 

プロンプトインジェクションの目的は、機密情報への不正アクセスやシステム設定の変更などです。

AI開発に携わる際は、プロンプトインジェクションを防ぐための強固な対策が求められます。

 

|的外れな回答はプロンプトが原因? 

ここでは、よく利用されている「ChatGPT」を例に挙げて説明します。

 

ChatGPTに質問や指令を送っても、自分が求めている回答が返ってこないという経験があるのではないでしょうか?

 

ChatGPTの回答が求めていないものになるのは、LLM(大規模言語モデル)の仕組みを理解していないプロンプトが要因となっている場合が

ほとんどです。ChatGPTのベースになっているのは「Transformer」というLLMです。

 

ChatGPTは、このTransformerによってウェブ上にある大量のテキストを学習し、「ある文章が書かれたとき、次にはどのような文章が書かれるか」

という確率を予測します。

 

LLMの仕組みにより、ユーザーが入力した内容から文脈や意図を予想し、入力内容に対する回答や説明を作成できます。

「この入力内容ならこういう意味だろう」

「こういう文章だからこの回答を求めているのだろう」

と確率論的に予測する仕組みです。

 

そのため、ユーザーが入力する文章(プロンプト)が曖昧だと、ユーザーの意図をうまく汲み取れません。結果として、求めていた回答と違うものが

返ってきてしまうのです。

 

▶︎ あわせて読みたい:【GPTってなに?】GPTの仕組みと歴史、活用方法を徹底解説!

 

 

|効果的なプロンプト作成のコツ 

自分が求めている回答を引き出すには、プロンプトに工夫を凝らして的確な指示を出すのが重要です。

以下では、ChatGPTを例にプロンプトを作成する上で押さえるべきポイントをご紹介します。

 

|具体的な指示を与える 

プロンプトで重要なことは「具体的」な指示を与えることです。

プロンプトに具体的な指示を盛り込むと、求めている情報にたどり着ける可能性が高まります。

 

たとえば、アップルパイを作る上で必要な材料を知りたい場合「アップルパイのレシピを教えてください」では不十分です。

「アップルパイ作りに必要な材料を教えてください。甘さ控えめに作りたいです」などのプロンプトを入力すると、的確な回答が出力されます。

 

|条件を絞る 

ChatGPTに質問をする際に、数値などを含むプロンプトで条件を絞ると、期待する回答が得られます。

 

たとえば、以下の2つのプロンプトを比較したとき、どちらの方が欲しい回答を得られるでしょうか?

 

(1)おすすめの観光地を教えてください。

(2)新宿駅から片道2時間で行けるおすすめの観光地を教えてください。

 

(1)おすすめの観光地を教えてください。

 

(2)新宿駅から片道2時間で行けるおすすめの観光地を教えてください。

 

(1)のプロンプトだと範囲が広すぎるため、世界中のおすすめの観光地が提案されます。

自分の求めている回答に近づけるためには、(2)のように条件を絞ることが重要です。

 

|表現方法を指定する 

表現方法を指定すると、それに合わせた文章が生成されます。

どういったシーンを想定しているのか、誰に向けた文章を作成してほしいのか、詳細な情報を入力してみましょう。

 

入力例(上司宛ての場合:メール)

「台風の影響で電車が遅延していて出社時間が遅れることを、上司に伝えるメール文を作成してください。」

 

入力例(友達宛ての場合:チャット)

「台風の影響で電車が遅延していて、到着時間が遅れることを友達に伝えるためのチャットを作成してください。」

 

このように、「誰に」向けた内容なのかが異なるだけで、生成される文章の表現に違いが出ます。

シーンや相手を想像して、それをプロンプトに盛り込んで表現方法を指定してみましょう。

 

|追加情報を与える 

回答が不十分であった場合、質問を重ねることで理想とする内容へ近づけます。

最初の質問には含まれていなかった条件や前回の回答でのポイントをプロンプトに記載すると、継続的な会話となって回答のブラッシュアップが

期待できます。

 

入力例

最初の質問「プロンプトの仕組みを教えてください。」

追加の質問「もう一度プロンプトの仕組みを教えてください。ただし、150字以内で小学生にもわかるように教えてください。」

 

|役割(ペルソナ)を与えてなりきってもらう 

役割や職業を設定し、ChatGPTになりきってもらうことで良質な回答を得られることもあります。

ある分野のエキスパートであると指示すると、ChatGPTが専門家になりきり詳細な回答が生成されます。

 

 

|ツール別のプロンプトフレームワーク 

ここまで、プロンプト作成のコツを解説してきましたが、実際に考えるのは時間がかかる場合もあります。

今では、プロンプトのテンプレートとなるフレームワークも登場しており、フレームワークを活用すれば効率もアップします。

 

次は、「ChatGPT」と「画像生成AI」それぞれのフレームワークをご紹介します。

 

|ChatGPT 

ChatGPTのプロンプトフレームワークで有名なのが「深津式プロンプト・システム」です。

noteのCXOである深津貴之氏が考案したフレームワークで、上記で解説したプロンプト作成のコツがうまく盛り込まれています。

 

|深津式プロンプト・システム1 

深津式プロンプト・システム 1は、マークアップ言語を用いたり指示文を追加したりして、適切な文章が出力されるよう工夫を凝らしたプロンプトと

なっています。

 

マークアップ言語とは「Webサイト文章といったテキストに目印付けを行い、コンピューターに認識させるための言語」です。

文章の意味合いを「タグ」と呼ばれる要素で記述して分類し、装飾を行います。

 

タグを付けながら文章を記述すると、

 

・ここが1番重要な見出しだ

・これが条件だ

・ここからここまでが本文だ

 

といった指示を判断しやすくなります。

 

深津式プロンプト・システム 1では、このような要素を盛り込んだフレームワークとなっているため、{}内の指定や制約条件を変更するだけで手軽に

良質な回答を引き出すことが可能となり、文章の作成や要約に効果的なフレームワークです。

 

深津式プロンプト・システム1

 

コピペ用は以下となります↓

 

# 命令書:

あなたは{プロの編集者}です。

以下の制約条件と入力文をもとに{最高の要約}を出力してください。


# 制約条件:

  • 文字数は300文字程度。
  • 小学生にもわかりやすく。
  • 重要なキーワードを取り残さない。
  • 文章を簡潔に。

# 入力文:

{入力文章}


# 出力文:

 

深津式プロンプト・システム1では、上述の効果的なプロンプト作成のコツがすべて盛り込まれているのがわかります。

 

深津式プロンプト・システム1のポイントは下記の6つが挙げられます。

 

ChatGPTの役割を明確にする

入力文から出力文を作ることを明確にする

何を出力するのか明確にする

マークアップ言語を用いて、本文ではない箇所を明確にする

命令を箇条書きで明確にする

条件を追加することでChatGPTからの出力をコントロールする

 

特徴的なのは、入力文から出力文を作成するプロセスを明確にしている点です。

これは、ChatGPTに対して、与えられた入力文をどのように処理し、それをどのように出力文に変換するかを示します。

この明確な指示は、ChatGPTが期待されるタスクを理解し、その結果を適切に生成するのに役立ちます。

 

また、マークアップ言語(ここでは「#」)を用いて、本文ではない箇所を明確にしている点も、プロンプトの構造が明確になるため、ChatGPTが

期待されるタスクをより正確に理解しやすくなります。

 

深津式プロンプト・システム1を使い、夏目漱石の「ストレイシープ」の一部を要約してもらいました。わかりやすい要約になっていますね。

 

 

|深津式プロンプト・システム2 

深津式プロンプト・システム 2は、プロンプトの最後に付け加えることで効果を発揮するフレームワークです。

「このタスクで最高の結果を出すために、追加の情報が必要な場合は、質問をしてください。」

と付け加えると、ChatGPTが最適な結果を出すために必要な追加情報を返してくれます。

 

質問を重ねていくうちに、より高精度な回答へたどり着きやすくなるので、アイデア出しで特に役立ちます。

 

深津式プロンプト・システム2の活用事例としては下記のようなものがあります。

 

  1. SEO記事の作成
  2. キャッチコピーの作成
  3. 小説の作成
  4. マーケティング戦略の立案
  5. プレゼンの構成案の作成
  6. 競合調査

 

たとえば、④マーケティング戦略の立案を「深津式プロンプト・システム 1」を用いてChatGPTに情報を与えた後、「深津式プロンプト・システム 2」を

入力すると以下のような回答が返ってきます。

 

ビジネス例:「オフショア開発会社のWebサイト」

 

「このタスクで最高の結果を出すために、追加の情報が必要な場合は、質問をしてください。」と付け加えた後、ChatGPTから必要な追加情報が

返ってきます。これに情報を与えることで、高精度で期待する結果を得ることができます。

 

今回は、ChatGPTを例に挙げましたが、同じようなサービスでもこのフレームワークは効果的といえるでしょう。

 

|画像生成AI 

最後に、画像生成AIのプロンプトフレームワークをご紹介します。

 

画像生成AIでは、プロンプトでイラストのテーマや雰囲気、絵のタッチや描くものを指定し、生成する画像に反映できます。

 

現在リリースされている画像生成AIツールのほとんどは、英語でプロンプトを入力する必要があります。

「英語だから苦手」という方は、Google翻訳やDeepL翻訳などの翻訳ツールを使いましょう。

 

画像生成AIのプロンプトには2つ種類があります。

 

・プロンプト:描きたいものを生成するためのプロンプト

・ネガティブプロンプト:生成したくないものを指定するプロンプト

 

どの画像生成AIも、プロンプトとネガティブプロンプトを組み合わせることで、品質の高い画像を生成できます。

 

|プロンプトテンプレート 

どんな画像生成AIでも、以下のテンプレートが基本となります。

 

▼ テンプレート

「主題,状態,環境,構図,カラー,スタイル」

 

このテンプレートをベースにして調整すると、描きたいものを整理しつつ画像生成できます。

 

|画像生成AIプロンプトのコツ 

画像生成AIで画像を生成する際は、以下のポイントを押さえましょう。

 

・プロンプトには優先順位がある

・プロンプトは具体的に書く

・プロンプトとネガティブプロンプトを組み合わせる

 

「プロンプトは具体的に書く」という部分は、ChatGPTで紹介したポイントと同じですが、他の2つは画像生成AIならではの特徴です。

 

◆ プロンプトには優先順位がある 

画像生成AIのプロンプトでは、前にくる単語の方が優先度が高くなる傾向にあります。

そのため、上記のテンプレートでも、「主題」を一番最初に持ってきています。

 

生成したい画像によって、優先順位を意識しながらプロンプト作成をしてみましょう。

 

◆ プロンプトは具体的に書く 

イメージする画像を生成したい場合、プロンプトは具体的に書きましょう。

 

たとえば、筆者(私)の似顔絵をイラストにしてみます。

今回は無料で使える「Leonardo.ai」で生成します。

 

以下の2つのプロンプトなら、後者の方がよりイメージに近いイラストが生成できます。

 

(1)one woman,long hair(女性一人、ロングヘア)

(2)one woman,long hair, hair colour violet and black mix, white-coloured skin, light brown eyes, smiling, rainbow in background

    (女性一人、紫と黒色のMIXヘアカラー、ストレートヘア、色白、茶色い瞳、笑顔、背景を虹)

 

Leonardo.aiでは、前者のプロンプトだと上段2枚しか生成されず、構図も横向きと正面とバラバラです。後者のプロンプトでは、4枚のイラストが

生成され「smiling」の要素を入れたためすべて正面を向いている構造になりました。

 

筆者に似てるかどうかはさておき、後者の方が実際のイメージに近くなりました。

 

今回使用した「Leonardo.ai」には、AIがプロンプトをつくる「Prompt Generation」という機能もあります。アカウントを発行するだけで誰でも

無料枠を利用できるので、興味がある方は体験してみてください。

 

 

|まとめ 

生成AIで理想とする回答や成果物を引き出すには、コツを押さえた的確なプロンプトの作成(プロンプトエンジニアリング)が重要です。

 

プロンプト作成のコツは、指示と文章を明確にして、詳細な条件を明確に記載することです。また、条件を追加することで、求める回答に近づけること

ができます。

 

生成AIツールは、アイデア次第でさまざまな活用ができて非常に便利ですが、プロンプトインジェクションをはじめとしたサイバー攻撃によるセキュリ

ティ面のリスクがあることも覚えておきましょう。

 

 

|おすすめのAI資料 

AI開発の流れから費用相場、開発コストを抑えるコツをご紹介した資料をご用意しました!

VNEXTのAI開発事例も掲載していますので、この機会にぜひ無料ダウンロードしてみてください(下記バナーをクリック)