LLM・Copilot・Plugin・AI Orchestrationというワードが飛び交っていた「Microsoft Build 2023」

大嶋悠司氏:では、「生成系AI/LLMに関する注目アップデート ~Build 2023編~」というタイトルでメルカリの大嶋が発表いたします。

私は、メルカリの生成系AIとLLMの専任のチームでテックリードをやっている大嶋といいます。メルカリに入って5年目ぐらいになりますが、生成AI/LLMチームは、2023年の5月にできたばかりのチームで、まだまだエンジニアも少ない中でやっています。

今回、「Microsoft Build 2023」に参加させていただきました。特に、生成系AIやLLMに関する発表について、どんなものがあったかを中心にお話できればと思います。

(スライドを示して)今回の発表ですが、私の印象としてはこんな感じでした。とにかくLLMがあって、CopilotとかPluginとかAI Orchestrationとか、そういうワードが飛び交っている印象でした。

このスライドにはなんの情報もありませんが、この後、どんな話だったのかを詳しく説明します。

キーノートでは、とにかくCopilotという単語が多かった

まず、キーノートから始まりました。Satyaさん(Satya Nadella氏)が最初に出てきて、「今回、50個を超える新しいアップデートがあるよ」みたいなことを言ってくれるわけです。

どんな発表があるんだろうなと思っていたら、最初のアップデートが「Bringing Bing to ChatGPT」と言っていたので、けっこうびっくりしました。「MS Build(Microsoft Build 2023)」なのに、最初の発表が「ChatGPT」なのがかなりの驚きで、ここからも「MS Build」で生成系AIやLLM系がどれだけ重要視されていたかが伝わるかなと思います。

とにかく今回は、Copilotという単語が頻繁に出てきました。「Windows Copilot」「Microsoft 365 Copilot」「GitHub Copilot」「Viva Copilot」「Edge Copilot」。たぶんここに書いていないやつもあったんじゃないかという気はしていますが、とにかくCopilotという単語が多かったです。

Copilotとは何か?

GitHub Copilotは私も使ったことがありましたが、「Copilotって何なん?」という気はしていたんですよね。

Windows Copilotについては後で資料を公開しますが、バチクソにかっこいいデモが(スライドの)リンクから飛べるので、見てもらえると(いいと思います)。バチクソにかっこいいなと思うのですが、これを見ると、なんとなくチャットでユーザーをサポートするアプリなのかな? という気がするわけです。

ただ、マイクロソフトさんがすばらしいのは、(スライドを示して)この図を作ってくれたことです。今回の私の発表を聞くポイントとして、この図だけ覚えてもらえばいいかなと思っています。

下にFoundation modelsやAI infrastructureがあって、真ん中にAI Orchestrationがあって、その上にCopilotsがあって、Plugin extensibilityなどがあるという、LLM系のアプリケーションのアーキテクチャをすごく整理してくれた図なんですね。

つまり、Copilotというのは、Foundation model、いわゆるLLMやChatGPT-4などに支えられたアプリケーションであり、UXを提供する部分になるんだよということが、ここからわかります。基本的に、チャットのUIでユーザーをサポートするアプリケーションのことをCopilotというんだよと説明しています。

Copilotたちがプラグインで拡張可能になる

それとこの図は、Copilotたちがプラグインで拡張可能になることをなんとなく示唆しています。その発表の中でも、めちゃめちゃプラグインが登場しました。

たぶん今お聞きのみなさんは、ChatGPTのプラグインをすでに使っていると思います。ChatGPTでは、プラグインがめっちゃ提供されていますよね。デフォルトでブラウジング画面が「Bing」になるという発表が最初にあったわけですが、ChatGPTにもプラグインがあるよねという話。

ChatGPTに提供しているプラグインとして、Bingの「Bing Chat」があります。ChatGPTみたいな感じで、チャット形式で検索をするやつでもプラグイン互換ができるという話とか。

あと、Bingの右上にチャットが開くようなUIが出現して、そこでもプラグインの恩恵が受けられます。例えば「このページに書いてあるこういうことを知りたいです」といった時に、ChatGPT以外のすべてのWeb上でプラグインの恩恵が受けられます。

あと、「Office 365」のCopilotでも、プラグインは使えます。例えば、リーガルに関するドキュメントで、「このドキュメント内で私に不利になる条件はなんですか?」みたいなことを検索した時に、一生懸命、賢い回答をしてくれるプラグインがあるよという話ですね。

今さらかもしれませんが、プラグインとは何かというと、AIのAPIアクセスをサポートするもので、外部からの情報を取ってきて、AIの返答を賢くするものという感じです。

BingのプラグインがChatGPTと互換になったりなど、1個のプラグインをあちこち使い回せる世界観をマイクロソフトは目指しているんだなということが、この発表から読み取れました。

Foundation modelsを説明

(スライドを示して)Copilot StackのAI Orchestrationが、さらに中身を展開してくれるわけですが、こんな感じにすごく細かくなっています。

冒頭で私がお話ししたとおり、この図がめっちゃ大事で、マイクロソフトが発表してくれたそれぞれのサービスが、いったいこの図の中のどこに位置するかを意識しながら話を聞くと、頭の中がすごく整理されます。

(スライドを示して)まずは、一番下ですね。Foundation modelsの部分です。これはそんなに混乱しないと思いますが、LLMモデルですね。

マイクロソフトはここでModel catalogというものを提供しています。オープンソースのモデル、「Hugging Face Hub」のモデル、「Azure OpenAI Service」のモデルも提供しています。

Groundingとは何か?

次に、この上の部分ですね。GroundingやPlugin エクステンションのところです。

ここは何かというと、Groundingと書いているところには、ベクターのデータベースとか、Web APIsとか、Pluginsとかが書いてあります。Retrieval Augmented Generationと書いているところは、検索によるジェネレーションの拡張です。

ここに関して、「Groundingってそもそも何やねん?」という話なんですけど、ある証拠に基づいて生成されているか? ということがGroundingなわけですね。

例えば「Azure」の画面でデータソースを選ぶというところで、「Azure Cognitive Search」のデータに基づいて生成を行うために、Azure Cognitive Searchの結果にグラウンドした生成が行われるサービスを出すという話ですね。

LangChainで作ったフローを可視化できる「PromptFlow」

OrchestrationのところはMetapromptみたいなものがあって、これも後でちょっと説明しますが、「PromptFlow」というものがあります。

PromptFlowというフローがあります。たぶんこれを見たら、なんとなく想像がつくかなと思います。みなさんは、LangChainでAPIコールのフローみたいなものを設計したことがあるんじゃないかなと思いますが、そういうLangChainで作ったフローを可視化できたりするのがPromptFlowです。マイクロソフトはまだプライベートアクセスだと思いますが、今後出していく予定です。

LangChain以外に「Semantic Kernel」というものも使えるようになります。Semantic Kernelは、マイクロソフトが作っているLangChainみたいなOSSですが、そういうのも使えます。

だから普通にOSSで使いこなしていく人たちは、それがそのまま使えるというサービスですね。

Orchestrationは、コンテンツフィルターの役割も担う

Orchestrationは、Promptとかリザルトフィルタリングみたいなところで、これもすごく商用導入する上で重要ですが、生成したものがバイオレーションしていないかとか、セクシャルなことを言っていないかとか、ヘイトスピーチをしていないかということをフィルタリングする、そういうコンテンツフィルターみたいなものをGUIで提供してくれます。

こんなふうに、マイクロソフトはいろいろなサービスを出してくれています。それ自体はマイクロソフトの商品ページを見ればわかりますが、別にマイクロソフトの製品だけではなく、それ以外のいろいろなOSSがこの図でどこに相当するか。この図でどこに当たるかを考えながら見ていると、すごく頭の中が整理されるので、この図はマジでありがたいなと個人的には思っています。

(次回へつづく)