まず、プロンプトエンジニアリングとかいうやつの話。
最近、ついに僕の周りもChatGPTを触る人が増えてきて、ChatGPTを活用している人、そうでもない人、怖がっている人、面白いと言ってずっと会話している人、本当に色々な反応があって面白いなぁと感じます。
ChatGPTに与える文章のことをプロンプトと言います。チャットの入力欄にはテンプレも何も無いので、はじめはAI相手に何を打てば良いのかよく分かりませんよね。そこで、世界中の人たちが試行錯誤した結果、色々な「こういうプロンプトだといいぞ!!!」という知見が集まり、いつしかプロンプトエンジニアリングとかプロンプトデザインとか呼ばれるようになりました。
ChatGPTは簡単に言えば「手を動かすのがめちゃくちゃ早いアシスタント君」だと思っているので、適切な文脈と指示を与えればとんでもないパフォーマンスを発揮します。
では、適切な文脈と指示とは何でしょう?
「あれをいい感じにやっといて」だと、あれが何を指しているのか、いい感じとは何なのかよく分かりません。
表現がなるべく一意に定まるよう、「○○という業務を行う会社のAさんに向けて、△△という案件の成果報告プレゼンをしたい。だから君にはプレゼンの原稿を作って欲しくて、××みたいな感じだと嬉しい。□□は望ましくない。」みたいに具体的に文脈と指示を伝える。こうすることで、ChatGPTくんも自分に与えられた役割を深く理解し、僕たちの役に立つ出力をしてくれる可能性が高くなります。
この具体的に文脈と指示を与える色んなテクニックが、今プロンプトエンジニアリングと呼ばれているような手法の概要になります。
より具体的には「結果だけじゃなくてどうやってその結果に至ったのかも教えて」と伝える(Chain-of-Thought)だったり、「あなたは大学入試受験指導塾の英語の先生です」と最初に役割を与える(Role Prompting)だったり、「今から君にはWeb記事のタイトルを考えてもらうけど、まず確認ね。意識すべき大事なことはなんだっけ?」と関連する事実を列挙させる(Knowledge Generation Prompting)だったり、人間相手のコミュニケーションでも重要そうなテクニックが挙げられています。
プロンプトのテクニックはもはやコミュ力なのか
「こういうテクニックって人間相手のコミュニケーションでも重要だよね」という発見は重要だと思います。現時点で、ChatGPTと人間とのコミュニケーションは(今のChatGPTが文字列しか知覚できない点以外)非常によく似ています。
目的やして欲しいことを明確に伝えないと、優秀なアシスタント君でも迷走してしまうし、そうならないために自分がコミュニケーション力を磨く必要がある。
それが顕著に現れる今のChatGPTは、ある種の写し鏡とも考えられます。ChatGPTくんのパフォーマンスが悪い一因として、自分がテキストチャットで適切に文脈と指示を与えられないことも考えられるわけですね。
僕もあなたも、ChatGPTくんとの対話の中で、自分の言語化能力の低さに絶望していると思います。自分のプロンプトを改善することで、日頃の人間とのテキストコミュニケーションをより良いものにすることが出来れば、仕事や人間関係の問題も改善されるかもしれません。
ChatGPTとの対話を通して、日頃の人間とのコミュニケーションのとり方に伸びしろが見つかり、人間にもやさしくなれる。ステキなことですね。
そんなことを考えながら、今日も3時間に一度お話を許されるGPT-4くんとの対話を楽しむ佐藤でした。