最終更新日:2024-09-23
ChatGPTのプロンプトとは?作成のコツ・例文・システム・共有方法徹底解説!
ChatGPTを使っていて「この回答は聞いたことと違う」「違う文章のテイストが良かった」などと感じたことはないでしょうか?ChatGPTはとても便利ですが、思った通りの回答が返ってこないことがあり、結局自分で作業するという経験を多くの方がしていると思います。
ChatGPTは会話に特化したAIモデルであるのにもかかわらず、なぜこのようなことが起こるのでしょうか?この記事では、そのような疑問を解決するためChatGPTにおける「プロンプト」について解説していきます。
プロンプトとは何か?やプロンプトを作るコツ、共有して活用する方法を紹介します。また、実践ですぐに使用できるプロンプトモデルについても紹介します。ChatGPTをもっと使いこなしたい方は、ぜひ最後までご覧ください。
こちらでChatGPTとは?どんな仕組み?と言った疑問への答えを詳しく説明しています。
AI Marketでは、
また、ChatGPT導入支援、カスタマイズ開発、コンサルティングに強い開発会社をこちらで紹介していますので、こちらもぜひご参考ください。
目次
プロンプトとは?
AI分野においては、プロンプトは「ユーザーがAIに対して行う入力」という従来と異なる使われ方をするようになっています。従来のプロンプトとは、コンピューターシステムにおいてユーザーから入力を受け付けるためのインターフェースを指します。Windowsのコマンドプロンプトに表示される「>」が従来のプロンプトです。
ChatGPTでのプロンプトとは、ChatGPTに対する命令や質問という意味で使われています。簡単に言うと、ChatGPTに送るチャット欄に入力する文章のことをプロンプトと呼びます。
ユーザーと対話を行うChatGPTは、どのようなプロンプトを与えるかによって、生成される回答が大きく変わってきます。つまり、送信するプロンプトが回答の精度を高めるために非常に重要な役割を果たしているのです。
AI Marketの姉妹サービスであるPrompt Plusは、プロンプトエンジニアの作成した高品質なプロンプトを売買可能なプロンプトマーケットプレイスです。プロンプトの販売や購入にご興味のある方はぜひご覧ください。
プロンプトマーケットプレイス|Prompt Plus
ChatGPTの回答が的外れになるのはプロンプトが原因?
ChatGPTの回答が求めていないものになるのは、LLM(大規模言語モデル)の仕組みを理解していないプロンプトが要因となっている場合がほとんどです。ChatGPTのベースになっているのは「Transformer」というLLMです。
LLM(大規模言語モデル)とは何か、どんな仕組みで動くか、こちらの記事で詳しく説明していますので併せてご覧ください。
ChatGPTはTransformerによってウェブ上の何十億ものテキストを学習し、「ある文章が書かれたとき、次にはどのような文章が書かれるか」という確率を予測します。
学習したテキストの量が多いほど、テキストの多様な関係性を学習でき、例えば『三ツ星レストランの食事は』という単語の後には『おいしい』という単語が続く確率が高いというふうに覚えていきます。
このLLMの仕組みにより、ユーザーが入力した内容から文脈や意図を予想し、入力内容に対する回答や説明を作成できます。つまり、「このような入力内容だからこういう意味だろう」「こういう文章だからこういう回答を求めているのだろう」と確率論的に予測する仕組みです。
ですから、ユーザーが入力する文章、つまりプロンプトが曖昧だと、ユーザーの意図をうまく汲み取れません。結果として求めていた回答と違うものが返ってくるケースが発生するのです。
プロンプトの質のほかに、LLM自体の特性が原因になることもあります。その場合は、複数のLLMを組み合わせるLangChainの仕様を検討してもいいかもしれません。
こちらでLangChainを使うメリット、複数LLMを使用する機能を詳しく説明しています。
プロンプト作成のコツとは?例文を交えて解説
ユーザーが求める回答にするためのプロンプト作成のコツがいくつかあります。例を交えて紹介していきます。
プロンプトを指示と文脈で分ける
プロンプトの先頭に指示を入れ、内容に応じて指示と文脈を「##」や「””」などの記号で区切ることが有効です。例えば、上記画像のようにプロンプトの頭に「##指示:以下の文章を要約してください」と入力し、改行して「##文章:」と入力します。
要約したい文章を「##文章:」の後に書いていきます。ChatGPTに対して「~してください」という指示と、指示に対する文章を記号を使うことで明確に分けることができます。
こうすることで、「要約する」という命令のもと、どこからどこまでの文章を対象にするのかをはっきりすることができ、曖昧さを排除することができます。
詳細条件・前提条件をプロンプトに入れる
求めていない回答になる原因の1つに「条件がはっきりしていない」ことが挙げられます。例えば「業務の効率化の方法を教えてください」と質問した場合、効率化のための一般的な回答が返ってきます。
しかし、「効率化の方法」は職種や業務内容、事業規模など様々な条件で異なるはずです。それで、詳しい条件を指定しないために予期していた回答と違うものが返ってくることになります。例えば上記画像のように「#条件」と区切って、詳細条件を限定することができます。
または、「私は企業の経理担当者です。」という前提条件を入れたうえで業務効率化について質問すれば、
具体的なことを知りたい場合は、ユーザーが置かれている状況や求める条件を事前に定義しておくことが大切です。
出力の表現方法をプロンプト内で指定する
ChatGPTはプロンプトで表現を指定することで、それに合わせた文章を作成することができます。例えば、オフィスで上司への報告文書を作成することを想定するのであれば、以下を指定することでふさわしい文章を出力できます。(上記画像)
- 上司への報告書であること
- 上司がAIについてよく知らないこと(受け手の属性)
以下のように適切な出力を受け取れます。
状況によって文章の表現は様々であり、状況にそぐわない表現であれば失礼に当たることもあります。ユーザーが求める表現はどんなものかを指定することで、ユーザーの目的に沿った正しい文章を作成することができます。他にも、以下のような指定が挙げられます。
- 子どもでもわかるように教えてください。
- 学校の先生のように教えてください。
- 取引先に送るように書いてください。
- お客様に対応するために書いてください。
- 上司に報告するために書いてください。
- プロの編集者のように書いてください。
出力形式の例をプロンプトに含める
ChatGPTの回答は様々な形式で出ます。プロンプトで出力形式を指定することで、ユーザーが求める形式で出力され、回答をそのまま使用することができます。実際に以下のような出力形式があります。
- プレーンテキスト
- 複数回答形式(箇条書き形式)
- テーブル形式
- 会話形式
- コード生成
上記画像では、会話形式での出力を指示しています。すると以下のように会話形式で出力されました。
特に指定がなければ、基本的な出力形式はプレーンテキストです。しかし、出力形式を指定することで複数の選択肢や箇条書き、テーブル形式などに対応できます。
また、会話形式で壁打ちのように使用することや、プログラムコードを出力することもできます。ユーザーが作成したいものに合わせた出力形式で指定することで、回答をそのまま使用できるようになり業務効率化につながります。
特に、2023年7月に公開された「Advanced Data Analysis(旧:Code Interpreter)」機能を使うことでコード作成の能力は段違いに上がっています。
曖昧で不正確な表現を減らす
ChatGPTは曖昧なプロンプトになるほど、返ってくる答えも差しさわりのない曖昧な表現になりがちです。上記画像はプロンプトで主語と目的語をあいまいにしてしまったための失敗例です。
提案に対して上司からされる質問を想定し、事前に対応する目的で指示を出しました。しかし、質問をする主体が私であるのか、上司であるのかあいまいなため以下画像のようにうまくいきませんでした。
プロンプト作成時に「いくつか挙げてください」や「大体これくらい」「端的に」などの曖昧な表現の場合、求めている数や長さなどを満たさない出力になる場合があります。
具体的に「5個挙げてください」「3~5文で作成してください」などのように数字で表現することが望ましいです。
また、日本語で指示をする場合、主語や目的語が抜けることで求めている回答にならないこともあります。ChatGPTは英語の方が得意であることもあり、日本語での会話のように主語や目的語を省略するとうまく指示内容が伝わらないこともあります。
次は主語と目的語を明確にしたプロンプト例です。完ぺきではありませんが、概ね想定通りの回答でした。
上記の出力です。完ぺきではありませんが、概ね想定通りの回答でした。
追加情報を与える
ChatGPTは、追加で情報を与えることでよりユーザーの目的に合う回答になっていきます。ChatGPTは確率論で文章を認識し回答を作成していくため、具体的な条件を指示した場合でも、目的から外れる場合もあります。しかし、ChatGPTは、これまでの文脈を踏まえた回答を行うことができます。
求めていない回答の場合は、人間同士の会話と同じように、追加で情報を与えることでよりユーザーの目的に合う回答になっていきます。
こちらでビジネスシーンでのChatGPT活用事例を詳しく説明しています。
AI Marketでは、
実践で使える!ChatGPTのプロンプトシステムを紹介
プロンプトの形式が決まっており、その通りにプロンプトを作成することですぐに使える実践的かつ汎用的なプロンプトシステムが、今話題になっています。代表的なプロンプトシステムについて紹介します。
深津式プロンプトシステム
深津式プロンプトシステムとは、note株式会社 CXOの深津貴之氏が考案したプロンプトシステムです。深津式プロンプトシステムはChatGPTから精度の高い回答を得やすくすることを目的として作られています。
深津式プロンプトをベースにプロンプトを作成することでユーザーが求める回答が得られる可能性が高まります。ふさわしい出力を得るまでの道筋がある程度明確になっている場合に向いているプロンプトシステムです。
深津式プロンプトシステムは、基本的に以下のような構成になっています。
構成 | 内容 |
---|---|
#命令書 | 指示を出します その際ChatGPTに役割を与えます。 |
#制約条件 | 詳細な条件を記載します 文字数や表現方法、出力形式などを具体的に入力します。 |
#入力文 | 重要なキーワードや要約する文章、表現方法の例示を入力します |
このようにプロンプトを、「命令」「条件」「入力」の3構成に分け、それぞれで詳細な設定を行うことで、ChatGPTが正確にプロンプトの内容を理解し、回答を行うことができます。(もっと複雑に指定することもできます)
ゴールシークプロンプト(シュンスケ式)
ゴールシークプロンプトとは、ユーザーが求めているゴールをChatGPTに作ってもらうプロンプトシステムです。上記画像のようなごくシンプルな形は海外のプロンプトエンジニア界隈で話題となって広まりました。
国内では、プロンプトデザイナーの林 駿甫氏が初期のゴールシークプロンプトを基にしつつも、まったく革命的なゴールシークプロンプトを考案して一気に広まりました。
従来のプロンプトの作り方では、どれだけ詳細なプロンプトを作成しても、ChatGPTが全てを理解し回答できるとは限りませんでした。そこで、ChatGPTにユーザーが求めるゴールへの道筋の候補を提示してもらい、そのゴールにたどり着くためのプロンプトをChatGPTに作成してもらい実行させるのがゴールシークプロンプトの考え方です。そのため、ゴールまでの道筋が明確でない場合も使えます。
ゴールシークプロンプトでは、ゴールにたどり着くために必要な情報をChatGPTが自ら考えてユーザーに逆質問します。そして、より正確にユーザーの求める回答を導き出すためのプロンプトを作成し実行できるようになります。
一般的なプロンプトに比べると、ゴールを設定してすぐに答えが返ってくるものではありません。ChatGPTと何度も会話を重ねてプロンプトを作成するため時間がかかります。しかし、ユーザーが求める回答を導き出すために必要な情報を網羅したプロンプトを作成できます。
また、ChatGPTが作成したプロンプトなので再現性が高いメリットもあります。
Chain-of-Thoughtプロンプティング
Chain-of-Thoughtプロンプティングとは、AIに対して与える指示や質問を一連の思考のステップに沿って行う手法です。このプロンプティング方法は、AIが回答を導き出す過程で、人間のような論理的な思考プロセスを再現することを目指しています。複雑な問題を分解し、一つ一つのステップを順を追って進めることに重点を置きます。
例えば、「2023年1月1日が日曜日だった場合、同年の12月31日は何曜日でしょうか?」といった設問に対し、Chain-of-Thoughtプロンプティングを用いた場合は以下のようになります。
“2023年1月1日が日曜日だった場合、2023年12月31日が何曜日になるか、以下の手順で考えてください。
1. 2023年が平年か閏年かを判断する。
2. 2023年1月1日から12月31日までの日数を計算する。
3. その日数を7で割った余りを求める。
4. 余りと曜日の対応関係から、12月31日の曜日を導く。”
上記のようにChain-of-Thoughtプロンプトで入力すると、生成AIは以下のように応答しました。(Claude Opusでの例)
”1. 2023年は平年です。なぜなら、西暦年が4で割り切れる年は閏年ですが、例外として西暦年が100で割り切れて400で割り切れない年は平年だからです。2023年は4でも100でも400でも割り切れないので平年です。
2. 平年の日数は365日なので、2023年1月1日から12月31日までは365日間です。
3. 365を7で割ると、商が52、余りが1になります。
4. 2023年1月1日が日曜日で、それから364日(52週)が経過したということは、2023年12月30日も日曜日になります。そこからさらに余りの1日を進めると、2023年12月31日は月曜日になります。
よって、2023年1月1日が日曜日だった場合、2023年12月31日は月曜日になります。”
上記の例からわかるように、Chain-of-Thoughtプロンプティングではステップバイステップで問題を分解し、各ステップで論理的な思考を促しています。これにより、AIモデルは単に答えを出すだけでなく、その思考の過程を明示的に示すことができるのです。
この特長は、ビジネスにおいてAIによる提案や意思決定の説得力を高める上で非常に有益だと言えるでしょう。
関連記事:「Chain-of-Thoughtプロンプティングとは?特徴・メリット・生成AIの企業活用で欠かせない理由とは?」
プロンプトは共有できる?
プロンプトのテンプレート化や使い回し、組み合わせ、新機能GPTsの活用など、より効率的にプロンプトを量産して共有するためのテクニックを紹介します。
プロンプトのテンプレート化
プロンプト作成を効率化するためには、よく使うプロンプトをテンプレート化することが有効です。例えば、文章の要約や校正、コードの生成など、頻繁に使用するタスクごとにテンプレートを用意しておきましょう。
テンプレートには、必要な指示やパラメータを含めておくことで、毎回プロンプトを一から作成する手間を省くことができます。
以下は、文章の要約用のプロンプトテンプレートの一例です。
“`
次の文章を、500文字程度で要約してください。
キーワード: [キーワードを入力]
文章: [要約したい文章を入力]
“`
プロンプトの再利用と組み合わせ
一度作成したプロンプトは、別のタスクでも役立つことがあります。類似したタスクや目的を持つプロンプトは、少し修正を加えるだけで再利用できる場合があります。また、複数のプロンプトを組み合わせることで、より複雑なタスクに対応することも可能です。
以下は、文章の要約とキーワード抽出を組み合わせたプロンプトの例です。
“`
次の文章を、500文字程度で要約し、その要約からキーワードを3つ抽出してください。
文章: [要約したい文章を入力]
“`
プロンプトのテンプレート化や再利用、組み合わせを活用することで、効率的にプロンプトを量産し、ChatGPTを活用することができます。日頃からプロンプトの管理を行い、ライブラリ化しておくことをおすすめします。
GPTsの活用
GPTsを簡単に言うと、特定の目的のためにカスタマイズされたChatGPTのバージョンです。この機能を通じて、特定のタスクや興味に合わせたChatGPTのバージョンを簡単に作成できます。
例えば、ボードゲームのルールを教える、数学の勉強を手伝う、デザイン作業を助けるといった具体的な用途に特化しています。
カスタマイズのプロセス
GPTのカスタマイズは、ユーザーが直接指示を出して行うことができます。プロセスは、特定の機能や知識をChatGPTに組み込むことから始まります。これにより、AIはユーザーの求める情報やサポートをより正確に提供できるようになります。
OpenAIによって近々ローンチされる予定のGPTストアでは、ユーザーが作成したGPTを共有、発見し、使用することができます。このプラットフォームは、AIのカスタマイズと共有を促進することで、より多様で個人に合ったAIの利用を可能にします。
GPTsはChatGPTの機能を大幅に拡張し、ユーザーが特定のニーズや興味に応じたカスタマイズを容易に行えるようにします。この新機能は、AIとの対話をより個人的で、より有用なものに変えることでしょう。
Prompt Plus(プロンプトプラス)
AI Marketの姉妹サイトとして、秀逸なプロンプトを売り買い可能なプロンプトマーケットプレイス「Prompt Plus」を提供しています。
こちらでは、プロンプトエンジニアが作成した高品質なプロンプトを購入することが可能ですので、ぜひ一度ご利用ください。
ChatGPTのプロンプトについてよくある質問まとめ
- プロンプトとは?
AI分野においては、プロンプトは「ユーザーがAIに対して行う入力」という従来と異なる使われ方をするようになりました。ChatGPTでのプロンプトとは、ChatGPTに対する命令や質問という意味で使われています。従来のプロンプトとは、コンピューターシステムにおいてユーザーから入力を受け付けるためのインターフェースを指します。詳しくはこちらにジャンプ。
- プロンプト作成のコツとは?
ユーザーが求める回答にするためのプロンプト作成のコツには以下があります。
- 指示と文脈を分ける
- 詳細条件・前提条件を入れる
- 表現方法を指定する
- 出力形式の例を提示する
- 曖昧で不正確な表現を減らす
- 追加情報を与える
- ChatGPTの人気のプロンプトシステムは?
- 深津式プロンプトシステム
- ゴールシークプロンプト(シュンスケ式)
Prompt Plus(プロンプトプラス)はプロンプトエンジニアが作成した高品質なプロンプトを購入することが可能ですので、ぜひ一度ご利用ください。
まとめ
ChatGPTから求める回答を引き出すためには、ただ質問や指示を出すのではなく、しっかりとした条件のプロンプトの作成が必要になります。プロンプト作成のコツは、指示と文章を明確にして、詳細な条件を明確に記載することです。また、条件を追加することで、求める回答に近づけることができます。
ChatGPTを使いこなし、仕事の効率性が大幅に向上させるためにも、しっかりとしたプロンプトを作っていきましょう。
AI Marketでは、
貴社に最適な会社に手間なく数日で出会えます
AI Marketの編集部です。AI Market編集部は、AI Marketへ寄せられた累計1,000件を超えるAI導入相談実績を活かし、AI(人工知能)、生成AIに関する技術や、製品・サービス、業界事例などの紹介記事を提供しています。AI開発、生成AI導入における会社選定にお困りの方は、ぜひご相談ください。ご相談はこちら
𝕏:@AIMarket_jp
Youtube:@aimarket_channel
TikTok:@aimarket_jp
運営会社:BizTech株式会社
掲載記事に関するご意見・ご相談はこちら:ai-market-contents@biz-t.jp