見出し画像

LLMによるインターフェースの革新

初めに

汎用知能を実現する研究において、2023年現在大きな注目を集めているLLMですが、この活用方法として汎用的なインターフェースの構築があると思います。汎用的なソフトウェアを構築するのには、汎用的なインターフェースは必要不可欠であり、LLMを使ったアプローチは既存のソフトウェアに大きな変化をもたらすと考えます。この記事では、フクが個人的に考えることをメモとして記録します。
また、この記事はもともとQiitaに投稿していたものを移転したものです。2023年のAI研究スピードは凄まじく、Qiita投稿時点ではなかった、LLMをインターフェースとして活用する研究もすでに沢山でています。そのためこの記事では、それらの研究も踏まえ少しアップデートした内容をお届けします。

インターフェイスの限界

従来のコンピュータへのインターフェースとして代表的なものにGUIがあります。GUIの開発は直感的にコンピュータを操作出来るようになったという意味で革新的な開発でした。しかし、汎用的なソフトウェアを実現するうえではGUIによって行われる情報のやり取りには"情報量"という観点で限界があると考えます。この問題を解決するインターフェースはLLMを用いた、自然言語の"対話"によるインターフェースであると考えます。

LLMの凄さ

自然言語は人間にとって革命的な発明でした。これは、抽象的な事を思考したり表現しコミュニケーションする能力を獲得し、またこれを後世に残すことを可能にしました。
また、現代の情報系に生きる僕は、「情報量」という観点で、革命的だと感じます。世の中に存在するものすごい情報量のものを言葉という短い表現に圧縮し、さらにこれをつなげることで文脈という付加情報を含めコミュニケーションすることを可能にしたのです。
ChatGPTで有名なLLMの技術は、多くの情報量を含んだ自然言語を人と機械のインターフェースとして扱う事が出来きます。これはすなわち、言語という高圧縮の短い表現を使って複雑な概念、意図をコンピュータに伝えることが出来るという事を意味します。
さらに、言語を理解している(ように見える)ので、対話によって意思の伝達ミスなどを修正することができます。この技術のインターフェースとしての活用は、既存のソフトウェアに大きな変化をもたらす考えます。

LLMをインターフェースとして使う

一括りにインターフェイスと言っても、LLMが役割を果たすインターフェースは二種類あると考えます。「人とコンピュータのインターフェース」、そして「コンピュータとコンピュータのインターフェース」です。
まず、人とコンピュータのインターフェースについては既に述べている通り、LLMは"対話"によって"情報量"に革新を起こせると考えます。
面白いのは、コンピュータとコンピュータのインターフェースの方です。まるで知能をもった人間のように、LLMが基盤モデルとなり大きなタスクを実行するために下流のソフトウェアへ処理を流し、時には下流のソフトウェア駆動でコンピュータたちが自立的に連携して動作していく、そうして人の非意識下で人をサポートする。そんなソフトウェアが実現できるのだと思います。

研究・プロダクト

OpenAIの発表でFunction callingが公開されました。これにより、人は粒度の大きい曖昧性を持ったタスクを機械に与え、機械はそれを実行するためのツールを選択、データの用意をすることが可能になります。これは機械が汎用的な知能を獲得したから可能になったことです。
また後発の研究として、オープンソースのモデルを使ってFanction callingを実現する研究も公開されました。既にOpenAIから高性能なFunction callingが提供されているのに後追いでこの研究をする意義として、著者らはオープンソースのモデルを使った研究とOpenAIのようなクローズな研究の両方が世の中に存在することに意味があると考えてらっしゃるようです。
これらの考え方である、基盤モデルが中心となりタスクを実行するために必要なことを、外部の関数として認識しその引数を準備するというアプローチは、極めて既存のソフトウェアと相性が良く、今後汎用的なソフトウェアを構築する方法として主流になると考えます。

まとめ

時間がたってからこの記事を見返してみると、考えていたことは既に先端の人たちが取り組んでいることで、極めて当たり前のことを言っていたなと感じる一方、本質的にズレたことを考えているわけではないことを実感することができ、少し自信につながるような感触がありました。
今後も優れたエンジニアとなるために、ひたすら考え続け、思い立ったら記事の投稿もしていきたいと思います。

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