ChatGPTを使てみたけど、「質問と関係ない答えが返ってきた」「質問に対して不十分な答えが返ってきた」「今までの会話の流れが無視された回答だった」などの経験は無いでしょうか?
あるいは、ブログや小説のタイトル、記事を書いてもらおうとして、入力文章が長すぎてエラーになったり、返される答えが途中で切られたりしませんか?
ChatGPTに対する質問や作業指示のことを「プロンプト」と呼ぶのですが、実はそのやり方にもコツがあります。
今回は、ChatGPTを使って期待する回答が得られるための質問の仕方について解説したいと思います。
ChatGPTの原理

まず、最初にChatGPTの最も基本的な原理について理解しておきましょう。
ChatGPT(チャットGPT)は、入力された文章に対して、次に続く確率が最も高い文章を生成していくように出来ています。
例えば、「ターミナル」というキーワードは業界によって様々な意味を持ちますが、「映画」というキーワードが含まれていることから、映画の「ターミナル」が最も確率が高いと判断され、それに基づいた文章が生成されます。

CharGPTに対して、幅広いジャンル、かつ膨大なテキストデータを使って学習させることで、次に続く文章を高い精度で生成(=あなかも人が作ったかのような自然な文書の生成)ができるようになっています。
質問で注意する4つのポイント

ChatGPTに質問する上で気を付けたいことが4つほどあります。
前提条件の情報量、質問の仕方、質問する文章の文脈が重要
ChatGPTは曖昧な質問の場合は期待する回答が返ってきません。
これは、幅広いジャンルかつ膨大なテキストデータを使って学習しているため、何らかの前提条件が無いと、どのジャンルの文章を生成すればよいのか分からないからです。
同様に、前提条件の情報量や質問の仕方、質問する文章の文脈によっても、次に続くであろう文章の確率が変わってきますので、ChatGPTが出す答えに影響します。
これについては質問のテンプレートを使う事である程度の改善できますので、後ほど説明します。
回答に重ねて質問を繰り返すと、今までの経緯を無視されることがある
ChatGPT からの回答に重ねて質問を繰り返すと、たまにトンチンカンな答えが返ってくることがありますが、これは今までの経緯を忘れてしまうことがあるからです。
どれくらいまで遡って会話の内容を覚えているかは分かりませんが、そんな場合は今までのチャット履歴の中から該当する部分を抜粋し、質問と一緒に貼り付けるなどの作業が必要です。
返される答えが正しいとは限らない
ChatGPTは単に次に続く確率が最も高い単語を予測しながら文章を生成しているだけなので、文書的にはもっともらしくても、中身が全くデタラメ(間違い、作り話)な文章を返すことがあります。
学習データはWebサイトのテキストデータであるため、一定の偏りがあったり、間違った答えを学習している可能性もあります。
単純にネット上に存在する多数派の意見に引っ張られている可能性があることは常に意識しておきましょう。
また、ChartGPTは文章の内容の正確さは気にしておらず、人間らしい文章の生成を追及しているため、時には真実に基づかない、空想が混じった全くデタラメな答えを最もらしく返してきます。
間違いがあってはならない質問をする場合は、自分で裏付けを取るなどの対策が必要です。
入力、出力ともに字数制限がある。
ChatGPTから入力できる文字数と、ChatGPTが返す答えの文字数には制限があります。日本語でおおよそ2000文字程度が入力の目安で、それを超えるテキストを入力する場合は分けて入力しなければなりません。
一方ChartGPTが返す答えについても制限があり、一定文字数以上は切られてしまいます。「続けて」とか「続き」と入力することで続きを表示してはくれますが、その際一部のテキストが欠落する場合があります。
この場合、欠落した箇所の少し手前から入力するとうまくいく可能性があります。例えば、「人的要因に」で切れた場合は、「人的要因にの続きを教えて」などです。
もし章立てで結果が返るケースであれば、「〇〇章から続きをおしえて」とお願いすればうまくいくかもしれません。
いずれにせよ100%解決する手段は無いので、回答が長文になりそうな場合、できるだけ一覧か章立てで答えを返してもらう方が良いでしょう。
失敗しない質問の仕方

簡単な事であれば、特に前提や前置き無しでChartGPTに質問しても、それなりに回答を返してくれます。もし期待通りの回答あ返されない場合、特に条件が複雑な質問や作業についてのみ、この質問方法を使ってください。
一般的な質問の書き方
作業を依頼する際、次のテンプレートを使う事でChartGPTから期待される回答を得られやすくなります。
- 設定
CharGPTにどのような立場で回答してもらうかを指定します。
例えば「あなたはPythonのプログラマーである」とか、「あなたは高校の英語の教師である」とかです。これによって、回答のジャンルが絞られます。 - 依頼内容
ChatGPTに対する依頼内容を記載します。
例えば「文章を200文字以内で要約して」とか、「年収600万で副収入30万だった場合の所得税はいくら?」などです。出来るだけ具体的に指示しましょう。 - 結果(必要に応じて)
CharGPTの回答に対して質問を重ねたり、要求を追加するような場合では、ChatGPTの直前の回答結果を貼り付けます。 - 条件
CharGPTが依頼内容を行うときに満たしてほしい条件を記載します。条件が多い場合は箇条書きにします。

より複雑な作業の依頼
一見複雑な手順であっても、1つ1つは単純な作業の積み重ねです。最終的な答えにたどり着くために、段階的にA→B→C→Dと思考を展開していくことを「思考の連鎖」と言います。
ChatGPTで採用されている大規模言語モデルでは「思考の連鎖」が行えます。
ChatGPTに思考の連鎖を行わせるには「ステップバイステップで考えて」と指示するだけです。
より複雑な手順に対しては、こちらから手順を支持して、その手順通りにChatGPTに思考させるという方法も使えます。

長文を要約するには
長文をそのまま要約することは現時点で困難です。一時期は「これから長い文章を分割入力します。私が要約してと言うまでは何もしないでください」のように指示をだすことで長文入力ができましたが、今はこの方法は通用しません。
今のところは、2000文字未満の文章ごとに要約してもらい、その結果を更にChatGPTにまとめもらう方法が現実的なようです。
1.直前の要約結果を、次の文章に含めて要約してもらう

2.書く文章の要約結果を控えておき、最後にそれをまとめて要約してもらう。

まとめ
今回はChatGPTに対する質問で、期待される回答が得られるように質問するポイントを整理しました。
CharGPTは、入力された文章から、次に来る確率が最も高い文章を生成するという仕組みです。従って、それを踏まえて質問することにより、ChatGPTが迷うことなく答えを出してくれるようになります。
2023年はChatGPTをはじめ、MicrosoftのBing AI(GPT-4)、GoogleのBardなどの大規模言語モデルが我々の生活に浸透してくるでしょう。
その時、いかにスムーズにAIを扱えるかがポイントになってきます。
せっかく無料で使えるのですから、是非皆さんの生活にお役立てください。