前回の記事では、「プロンプトとは、ChatGPTに出すメッセージや指示のこと」と簡単にご説明しました。今回から数回に分けて、この「プロンプト」について、基礎から詳しく解説していきます。
初歩的なプロンプト(指示)
プロンプトは単純なものから複雑なものまで様々な種類がありますが、まず、基本として押さえておくべきものに、次の二つがあります。
- 質問に答えてもらう
- タスクを実行してもらう
今回は、基本中の基本、「質問に答えてもらう」プロンプトについて解説します。やや複雑な「タスクを実行してもらう」プロンプトは、次回のコラムで解説します。
質問に答えてもらう
質問の書き方に特別な決まりはありません。普段の生活で誰かに質問する時と同じように質問するだけです。文体は疑問文でも良いですし、質問したいトピックを書くだけでも構いません。
ChatGPTは膨大な文字情報を学習したAIモデルなので、幅広い分野に関する知識を持っています。特に、長年にわたって変わらない基本的な事実や情報については、高い精度で答えを提供することができます。
それでは、いくつか身近に起こりそうな疑問を想定して、ChatGPTへの質問の例を見ていきましょう。
例1:英語を学んだ人が、「次に学ぶ外国語は、できるだけ英語の知識を活かせるものを選びたい」と思っているとします。そのような場合は、次のように質問します。
例2:サイエンスがテーマのサマーキャンプで、「料理と化学反応」についていくつか紹介することになったとします。どんな化学反応を題材にすると良いか、ChatGPTに質問してアイデアをもらってみましょう。
例3:小さいスペースに家庭菜園を作りたいものの、アイデアがまったく浮かばない。そのような時は、ChatGPTに質問してアイデアをもらうことができます。
例4:シアトルにおけるバスなどの公共交通手段について知りたいとします。ChatGPTに質問すれば答えてくれます。
このように、身近な疑問や調べ物について、単純なひとつの質問文をChatGPTに渡すと、期待どおりの回答を得られることがあります。難しい構文やプロンプトエンジニアリングのテクニックは気にせず、質問することから始めてみましょう。
でも、回答が期待外れの場合もよくあります。その対策については後述します。
検索サービスと何が違う?
ダイレクトな情報が得られる
前述した例のような情報は、GoogleやBingなどの検索サービスを使って知ることもできます。でも、検索サービスはウェブ上の情報源へのリンク(URL)を結果として返すので、私たちはリンク先のウェブページなどを読んで、質問の答えを探さなくてはなりません。一方、ChatGPTなどのAIは質問に対する答えをダイレクトに返すので、人間の手間が減ります。下図はその違いを図にあらわしたものです。
ウェブ上に存在しない情報が得られる
ChatGPTなどの大規模言語モデル(LLM)は、学習データに含まれていなかった内容にも推論によって答えることができるという画期的な特徴があります。
例えば「宇宙空間でのスモークサーモンの作り方」と検索しても、それについての情報は見つかりません。つまり、下の図の左側のような状況になってしまいます。
一方、ChatGPTに「宇宙空間でのスモークサーモンの作り方を教えて」と聞くと、あたかもそのような記事が存在したかのように回答してくれます。
この「見たことのない質問に答えることができる」という能力は「想像的にタスクを実行することができる」という意味でもあります。この能力があるおかげで、ChatGPTは小説やPR文章を書いたりできるのです。
ChatGPTに質問することの利点
検索サービスの代わりにChatGPTなどのAIを使って調べ物をすることには、いいことがいくつかあります。
情報の提示が簡略化される
ウェブサイトは情報の提示方法が多様です。例えば、レシピサイトは形式が異なり、広告など余計な情報も含まれがちです。これは利用者にとって、ストレスの原因となることがあります。しかし、ChatGPTは情報の要点を抽出し、一貫したチャット形式で応答するため、情報が読みやすくなります。
情報の漏れが少ない
今回ご紹介した例のように、家庭菜園に関するアイデアをネットで探す場合、関連する全サイトを閲覧するのは非現実的です。でもChatGPTはインターネット上の幅広い情報を学習しているので、自分が求めているアイデアを見つけられる可能性が高まります。
対話を通じて簡単に質問できる
従来の検索サービスは単語ベースの検索に特化しており、文脈の理解は得意ではありません。一方、ChatGPTなら会話の流れを把握し、単純な質問からも適切な回答が得やすくなります。結果として、ユーザーの効率が上がって便利になります。
下図はシアトルの公共交通機関について質問した後に「フェリーの料金は?」という質問を送信した結果です。ChatGPTは文脈から「シアトルのフェリーの話題」だとわかっているので、短い質問にも答えてくれます。情報は箇条書きで整理されており、内容も包括的です。
期待した応答が得られない場合
でも、ChatGPTの応答が期待に沿わないことは珍しくありません。実は、一回の質問で理想的な答えを得ることは少なく、しばしば試行錯誤が必要になります。ChatGPTの期待外れの応答には、以下のようなものが含まれます:
- 的外れな回答: 質問の趣旨を見誤ったり、話題とは異なる内容に答える。
- 誤りを含む回答: 情報が間違っていたり、事実と異なる。
- 内容が短くて不十分な回答: 回答が簡潔すぎて、質問のすべての側面をカバーしていない。
- 最新の情報が欠けている回答: 最新の出来事やデータについての情報が含まれていない。
- 専門知識が不足している回答: 特定の専門分野や複雑なトピックに関する深い理解が不足している。
このような残念な応答に対しての対策を、いくつかご紹介します。
AIの最新バージョンを使う
これは何よりも真っ先に行うべき対策です。AIの質に関しては「最新のものを使う」が最も重要である、ということを理解しておきましょう。残念ながら、ChatGPTの最新バージョンは有料です。
より具体的に質問する
ChatGPTは、質問が具体的であればあるほど、応答も具体的になります。たいていの場合、実用的な回答を得るには、質問をより具体的にすれば改善します。
応答結果の特徴を指定する
結果内容を充実させたい場合は「詳しく」や「初心者にも分かるように」といった文言を質問に加えましょう。
例:「簡単なイタリアンのパスタのレシピを教えてください。初心者でも作りやすいステップバイステップの指示を詳しく加えてください。」
逆に、応答の内容が多すぎたり長すぎたりする場合は「簡潔に」や「100文字以内で」や「箇条書きで」などの言葉を加えることで調整することが一般的です。
例:「健康的な生活を送るための5つの基本的なヒントを、100文字以内でまとめてください。」
条件を追加する
ChatGPTの応答に誤りが含まれる場合、以下のような文章を質問に加えることで、応答の質を向上させることができる場合があります。
例1:「100%の確信がある場合だけ、応答に含めてください」
例2:「結果については、必ず根拠を示してください」
例3:「この結果は、私のキャリアにとってとても重要です」
このような指示を含めると、AIが自ら応答内容を検証し、結果として精度が向上することがわかっています。
事前に専門知識を読み込ませる
ChatGPTは会話の内容を把握した上で質問に応答するので、会話の初期段階で専門的な情報を渡し、その後に質問をすると、先に読み込んだ情報をもとに応答してくれます。
例えば、近々ワシントン州のどこかにレーザークラムという種類の貝を採りに行きたいとします。貝や魚の捕獲についてはワシントン州魚類野生生物局(WDFW)というワシントン州の省庁が厳格にルールを定めていて、シーズンなども頻繁に変わるので、ChatGPTが最新の情報を学習していることはまずありません。そういった場合、WDFWから直接、関連情報をダウンロードしたりコピーしたりして、ChatGPTにあらかじめ読み込ませます。(注意:執筆時の無料版のChatGPT3.5は、一度の会話で扱える文字情報の量に上限があります。目安としては、一般的な英語の小説の数ページ分ぐらいの文字情報しか一度に扱えません。)
その後、質問をすることで正確な情報を得ることができます。
このように、ChatGPTにその場で情報を与えて、それをもとに質問に答えてもらうという使い方もあります。
ちなみに、有料版のChatGPTでは、わざわざ読み込まなくともWDFWのウェブサイトの関連ページを読みこんで応答してくれます。こういった点も、有料版と無料版の違いの一つです。
今回はChatGPTに「質問に答えてもらう」活用方法について解説しました。次回はChatGPTに「タスクを実行してもらう」方法について見ていきましょう。