学生のためのChatGPT基礎
こんにちは、ねこです。
この記事では、ChatGPTを使用するにあたって、学生に役に立つと思った情報を分かりやすくまとめました。
もちろん、学生でない方にも学びになることが多いと思います。ぜひ、最後までお読みください!
✳︎新たに役に立つと思った情報については、随時更新していきます。
Chat GPTとは何か
ChatGPTは、OpenAIによって開発された大規模な人工知能言語モデルです。インターネット上の大量のテキストデータから学習しており、質問応答、文章生成、要約、翻訳など、様々な言語タスクをこなすことができます。
以下のリンクからアクセスし、アカウントを作成することで、Chat GPTを使うことができます。GPT-Plus にアップグレードしなければ、無料で使うことができます。
ChatGPTの使い方は、至ってシンプルでチャット欄に、質問文を入力するだけです。
その際に意識することは、とりあえず1つで、できる限り具体的かつ詳細に書くことです。
Chat GPTは、直前の文に確率的に続きそうな文字を繋げることで文章を生成しています。そのため、質問でうまく回答の範囲を限定をすることができないと、抽象的かつ、一般的すぎる回答が返ってきます。
なので、質問をする際は、結果、長さ、形式などについて詳細な説明を心がけてください。
具体的には、
のように書くとよいです。
基本的には、上記のように質問すれば、望んだ回答を得ることができます。
しかし、上記のように質問しても、適切な回答が得られない場合があります。
そのような場合に、より良い回答を得るためには、プロンプトデザインについて学習する必要があります。次章で、プロンプトデザインの詳細についてまとめます。
プロンプトデザインとは
プロンプトとは、自然言語によって書かれた、AIに伝える命令文のことです。
そして、プロンプトデザインとは、そのプロンプトを適切に作成することを指します。
つまり、プロンプトデザインとは、AIに伝えたいことを適切に伝え、望んでいる回答や文章生成などを実行してもらうことが目的です。
プロンプトデザインには、2つの主要なフレームワークが存在します。それぞれについて紹介します。
1. Shunsuke式プロンプトデザインの型
Shunsuke式プロンプトデザインの型は、宣言文、変数、コマンドの3つに分かれています。
宣言文には、目標を書いてください。具体的には、メール文の作成などです。
変数には、目標を達成するための要素を書いてください。具体的には、ペルソナやキーワード、興味などです。
コマンドには、変数を用いた命令文を書いてください。具体的には、「[キーワード]に対する[ペルソナ]の[興味]です。[ペルソナ]にむけたBiogのコンテンツのOutlineを作成して下さい」などです。
最後に、コマンドを実行する命令である「>Run Commands [C1]・・・・[C(end)]」をつけて完成です。
2. 深津式プロンプトのテンプレート
深津式プロンプトのテンプレートは、命令書、制約条件、入力文、出力文の4つに分かれています。
命令書では、役割(編集者など)と目的(要約など)を与えてください。
制約条件では、文章量(○○単語程度)や品質(簡潔で明快な、小学3年生でも分かるように)、文脈・前提情報などを、できるだけ具体的かつ、詳細に書いてください。
入力文については、文章の要約や添削などを依頼する場合に、対象とする文章を入れてください。
出力文は、何も書かずそのままで大丈夫です。
3. Keito式プロンプトのテンプレート(2023/4/1 加筆)
Keito式プロンプトのテンプレートは、先程の深津式プロンプトのテンプレートの改良版です。このテンプレートは、成果物、命令書、制約条件、入力文、出力文、思考回路の6つに分かれています。
成果物では、Chat GPTの性能に関するブログ記事など望んでいる成果物を書いてください。
命令書では、深津式と同様、役割(編集者など)と目的(要約など)を与えてください。
制約条件でも、深津式と同様、文章量や品質、文脈・前提情報などを書いてください。ただ、テンプレートに既に書かれている、[ここに目的に対して最高回答を得られるための条件を複数個指定]のままで実行しても大丈夫です。
入力文では、選択式のテキストアドベンチャーゲームを作成するなど、具体的な目的を入力してください。また、要約や添削する文章は、ここに貼り付けてください。
出力文と思考回路は、テンプレートに書かれてる文章のままで大丈夫です。次の章で紹介するのですが、思考回路をChat GPTに与えることで、回答の精度を上げることができます。
プロンプト作成の鉄則と技術
上記の3つのフレームワークのどれかを用いることで、プロンプトの大枠を作ることができると思います。ただ、プロンプトを具体的に作成する際に知っておくべき鉄則ついては、まだ触れていません。
この章では、そのプロンプト作成における鉄則とそれを踏まえた技術について紹介します。
ここでは、2つの鉄則を紹介します。
鉄則1:
質問と回答のセットを例として与えると、回答の精度は上がる。
鉄則2:回答までの思考経路を与えることによって、回答の精度が上がる。
次に、これらの鉄則に基づいた具体的なプロンプト作成の技術を紹介します。
Zero-shot (精度:⭐️)
単純に質問だけを提供するやり方。
︎
例)
Q:りんごはどういう食べ物?
A:
Few-shot (精度:⭐️⭐)
答えてほしい質問と似たような質問と回答のセットをいくつか提供するやり方。
Zero-shot-CoT (精度:⭐️⭐)
「step by step で考えて」と、具体例を示さず思考の経路だけを指示するやり方。
(例)
Q:日本にあるピアノの数を教えて
step by step で考えてください
A:
Few-shot-CoT (精度:⭐️⭐⭐️)
答えてほしい質問と似たような質問と回答のセットを、回答までの思考経路がわかるようにした形で、いくつか提供するやり方。
Least to Most (LtM)(精度:⭐️⭐⭐️)
課題の解決策を複数のステップに分解して順番に答えさせ、最後に最初の課題を回答させるやり方。
補足情報
最後に、プロンプトを作成する際に役立つ補足情報についてまとめます。
命令文と挿入テキストの分離
挿入テキストは、###か”””で区切って入力する
役割付与
最初に役割を与える文章を書くやり方。
例)
「あなたは、プロのライターです。」
自己反省
得られた回答に対して、「あなたの回答は間違っているので、自己反省して新たな回答をください」と指示するやり方。
英語で質問
日本語よりも英語の方が回答性能が高いので、日本語で適切な回答が得られない場合、英語で質問するとよい。
最後までお読みいただきありがとうございました。
いいねやシェアをしていただけると励みになります。もしよろしければ、お願いいたします🙇♂️
参考文献
[1]
[2]
[3]
[4]
[5]
[6]
[7]
この記事が気に入ったらサポートをしてみませんか?