見出し画像

ChatGPTとビジネスの現場から:コンテキストゲームを制するものがプロンプトゲームも制する

前提

自分は営業部長やビッグデータ部署のマネージャーなど、さまざまな業務を経験してきましたが、昨年11月頃(ChatGPTが出る少し前)くらいから、主に自営業でLLM(大規模言語モデル、ChatGPTなど)関連の業務を複数の会社とやらせていただいています。特に、現場の業務問題を解決するためのLLMの活用方法について研究しており、今回はその中で気づいた「プロンプトゲームではなく、コンテキスト(文脈)ゲーム」という考え方を共有します。

なぜこれだけ賢いChatGPTが俺たちの仕事を全部やってくれないのか

その原因は「コンテキストが十分に伝えられていないんだな」と現場で実感するようになりました。現場での問題解決に必要なコンテキスト(=文脈)を、LLMに正しく伝えることができないため、LLMを使って問題を解決することができないのです。

例:料理の献立を考える際のコンテキスト

これは、例えば料理の献立を考えるシーンがわかりやすいです。「豚肉・玉ねぎ・じゃがいも・にんじんがあります。どんな献立が作れますか?」と聞くと、今でもChatGPTは「肉じゃが!」と答えてくれます。
また、近いうちに展開されるであろうGPT-4の画像インプットでは、冷蔵庫の写真をとったら実際に献立を提案してくれるところまでデモされています。


しかし、実際に人間が献立を考える際は「豚肉と玉ねぎとじゃがいもとにんじんがあるなぁ」とだけ考えて献立を考えるわけはありません。「冷蔵庫だけではなく食糧庫を見るとカレールーが大量に余っている」「肉の賞味期限が近い」「息子の離乳食も一緒に作ってしまいたい」「我が家はカレーは金曜夜に作るようにしている」「昨日子供が保育園でカレーを食べた」「奥さんはスパイシーなカレーが好きで今あるルーはそっち系じゃない」「奥さんが今朝和食の気分だと言っていた」「小さい頃に腐ったクリームシチューを食べたことがあり、クリームシチューは嫌い」など、下手すると人生全部を含めた壮大なコンテキストが背後には存在しています。

実は膨大にあるコンテキスト(文脈)

つまり、料理の場合で言っても、

  • 家の中だけで伝わるルール・用語

  • 料理に関わるもの(食材の在庫数や賞味期限など)の最新の状況

  • ステークホルダーの情報(息子の好みなど)

  • 影響を受けるタスク(離乳食も作らないといけないなど)

など、非常に大きなコンテキスト(文脈)を加味しないと解けない問題なんです。
同様のことが業務でも起こっているので、

  • 社内だけで伝わるルール・用語

  • 業務に関わる情報(他チームでスタックしちゃってる等)の最新の状況

  • ステークホルダーの情報(担当者のやりたいことなど)

  • 影響を受けるタスク(後続業務を担当するチーム)

など、非常に大きなコンテキスト(文脈)をChatGPTに伝えないと、問題を解くことができないのです。(逆に言うと、LLMはこれらを伝えることができれば、おそらく大半の問題を解いてくれると考えています)

現在のLLM(ChatGPT)の限界

つまり、人間が考慮しているコンテキストを、LLMに正しく伝えることができるようにすることが、業務上の問題解決では大事なのです。しかし、現状では、チャットGPTに渡せるコンテキストは非常に制限されています。(現状4000トークン〜32000トークン。だいたいの日本語文字数だと考えてください)これが、プロンプトゲームの必要性を引き起こしている原因です。プロンプトゲームとは、制限されたトークン数の中で、必要なコンテキストを伝えるゲームのことを指します(僕なりの勝手定義)。自分はプロンプトは基本的に「やりたいこと(LLMにやってほしいこと)+そのコンテキスト」で構成されていると思っており、そのコンテキストを制限されたトークン内で実現するのがハードルが高いのが現状です。

コンテキストとLLMとPrompt Engineeringの脳内イメージ

(わかる方はLlama Indexやfine tuneやその他いろんな方法でここを解決することを想定されていると思います。しかし、現場で実際にいろんな問題に当て嵌めてみると、意外な程にこのコンテキストを拡張するのは難易度が高いです)
技術の進歩とともに、トークン数はまだまだこれから増加すると予想されますが、人間も会社も業務も産まれてからこれまで、無意識のうちに、ものすごい量のコンテキストを生み出しています。そんな人間や業務が持つ膨大な量のコンテキストをLLMに正確に伝えることは非常に困難なのです。そもそも伝えられる形に情報が存在していないこともありえますし、あったとしても全部を学んでもらうことは非常に難易度が高いでしょう(そしてそれができたタイミングでは、さらにより一層の革命が起こるのではないかと思います)これが、現状のLLMの限界だと自分は感じています。

LLMを活用したサービスの今後の見立て

自分は上記のように考えているため、LLMを活用したサービスに関して、以下のような意見を持っています。

Github Copilotは引き続きすごい勢いで開発者の生産性をあげていく

なぜなら、開発者の仕事はおそらく人類の中でもかなり珍しい「必要なコンテキストをできる限りテキストで生成して、それらを元に成果物を作る」仕事だからです。この特性から、開発者の仕事という分野は圧倒的にLLMによって生産性を上げやすい状態だと思われます。

今朝発表されたMicrosoft 365 Copilotは現時点ではそこまでのインパクトを出せない(少なくともGithub Copilotよりはインパクトが小さい)

今朝ちょうどMicrosoftによって発表されたCopilotは、WordやExcelや様々なアプリケーションに搭載されていくとのことですが、ビジネスパーソンがWordやExcelで成果物を作るときには人間は(無自覚ですが)膨大なコンテキストを元に作っています。(社内用語や最新のドキュメント、担当者との口頭での会話の履歴やメールなど)おそらく、まだ現段階ではそういった膨大なコンテキストをすべて伝えることはできないため、「思ったより業務の中で使えないな」という感想になるのではないかと想像しています。(もちろんまだ実際のものを触っていないのでイメージです)
ただ、例えば「ファイナンスの人が他社のリサーチとその内容をもとに財務モデルをExcelで作ってみる」みたいな「コンテキストが限定されていて、それらが一つのOffice製品の中で完結させられる」ユースケースにおいては、破壊的なインパクトを出す可能性はあるのではないでしょうか。

コンテキストを収集して、それをもとにアクションしてくれるアプリケーションが強くなるのではないか

例えばMiloというGPT-4を使ったサービスがあるのですが、(サービス内容は下記ツイート参照)


こうしたサービスは、適度に「現状のGPTで扱える範囲のコンテキストを元に必要な行動をとってくれるサービス」なので、非常に有用という評価になっていくのではないかと想像しています。(アメリカ・カナダ限定公開っぽくまだ自分も使えていないのでこちらも想像です)

「コピーライティング」「SEO記事の文章生成」「新規アイデアのブレスト」などは今の時点でもかなり使える

これは、こういった業務は伝えるべき特有のコンテキストが少なく、一般的なWEB上にある情報だけでも、ある程度できてしまうためです。このあたりの業務は伝えるべきコンテキストが少ないためになんとかなってしまう業務なのではないかというのが今の理解です。

ここから数年は、「如何にコンテキストをうまくLLMに食べさせられるようにするか」を工夫する時代となる

今自分はいくつかの企業でLLM関連の業務を行なっていて、結局はこの工夫をあの手この手でやっているなと実感しています。「その業務において達成したいこと」を達成するために必要なコンテキストを収集してきて、それをLLMに渡すことができれば、高確率でその業務は成功します。
このあたり、もちろんプロンプトエンジニアリングを含め、他のOSSも活用したりする中で、こうしたら現時点でも一定制限を突破していけるなということもかなりわかってきているため、興味がある方がいらっしゃればそのうち記事化しようかなと思っています。

(余談:なぜGPTはChatになった瞬間に流行ったのか)

上記のようにビジネス現場にLLMを実装することをやっていて、「なぜtext-davinciは少し前からあったのに、ChatGPTが出てから急にこんなに流行ったのか」について、自分なりの仮説を持つことができました。(もちろんその直前にモデルが出て精度が上がったという要因は大きくありつつも)「Chat」という形式は人間にとって非常にコンテキストを自然に伝えやすく、そこから圧倒的に利用するのに精度が上がったという側面があるのではないか、というのが自分の仮説です。

この記事が気に入ったらサポートをしてみませんか?