Ximera Media Next Trends #50|Ikuo Morisugi|July 10th, 2023
はじめに
メディアのトレンドとそれを巻き起こすスタートアップを追いかける連載シリーズXimera Media Next Trendsの第50回となる今回は「LLMベースサービス構築の現在地」を取り上げます。
本連載 #45にてご紹介したLLM(巨大言語モデル)の登場で、ChatGPTを筆頭にさまざまな生成系AIサービスが生み出されています。
ChatGPTは月間10億人の訪問者、1億人のアクティブユーザがいると見積もられています。既にChatGPTに文章生成・要約・壁打ちなどのシングルタスクの処理をさせている方もいると思いますが、最近ではシングルタスクのみではなく、LLMを活用してより複雑なサービスやアプリケーションの開発を行うことも容易になってきていています。
LLMの発展による一番の大きな変化は「自然言語の指示を高い精度で理解し、様々なアクションを自動で策定・実行できる」AIが登場したことです。将来的にはより多くの人がAIを使ってカジュアルにLLMベースのサービスを開発するようになってくると考えられます。
一方で、現在多くの人はまだその利益を享受している状況ではありません。現在ChatGPT単体でできることには限界があることや、LLM周辺で起こっているサービス開発環境の変化に人々の認知が追いついていないと考えられます。
本稿ではそうしたLLMベースのサービス開発をするうえでのChatGPTの問題の整理および、解決のためのソリューションを取り上げます。より具体的なイメージを持っていただくことで、みなさまで検討/取り組まれている事業の参考になれば幸いです。
ChatGPTの問題
ChatGPT単体でサービス開発をする際の制約事項として、大きく以下3点があります。
(1)ChatGPTは汎用モデルかつ古い情報ソースを扱っているため、専門分野の知識が要求される場合や情報の鮮度が求められる場合には解決できなかったり、具体的なアクションをとることができない
(2)ChatGPT単体では毎回プロンプトを打たないといけない、かつプロンプト入力に慣れていないと探索的思考を深めることができない
(3)ChatGPTのモデル(GPT-3/4)自体は、トレーニングプロセスやウェイトもブラックボックスである(入出力しか制御ができない)
(1)ChatGPTは汎用モデルであるため、場合によっては解決できなかったり、具体的なアクションをとることができない
とくに無料版のChatGPTではデータが古いことや、より専門的な情報(例えばある特定のグルメサービスのレストラン候補から出してほしいなど)については、あくまで一般的な確率モデルに基づくため、必ずしも要求通りの正確な回答を提供できないこともあります。
また、ChatGPTでおすすめされた商品やサービスを購入しようとしてもそのままでは購入するプロセスに進めません。ノーマルのChatGPTはあくまでプロンプトで返すだけになるので、エンドユーザにやって欲しいアクションがあっても、ChatGPTの外のWebページに移動してもらうなどはユーザ自身でやってもらわなくてはいけません。
(2)ChatGPTでは精度を上げるために何度もプロンプトを打たないといけない
サービス企画のブラッシュアップにしろコード生成にしろ、目的通りのアウトプットを実現するために何度もChatGPTでプロンプト入力が必要になります。プロンプト入力はStep By Step法が有効であることが知られていますが、分解した要件を正確に入れる必要があり、ある程度専門知識やプロンプト入力への慣れがないと望ましい結果を得られにくいです(それほど複雑ではないお題の場合、「Step By Stepで考えてください」という魔法の呪文で精度が上がる場合もあります)。
(3)ChatGPTのモデル(GPT-X)自体は、トレーニングプロセスやウェイトもブラックボックスである
ChatGPTのモデル(GPT-3/GPT-4)がどのようにトレーニングされ、どのパラメータにどれくらいの重きを置かれているのかは公開されていません。そのため、精度の改善を図ったり、意図した通りに動かしたい場合は、プロンプト入力ベースで動作改善をしていく必要があります。
これらの制限事項がある限り、複雑なサービス開発においては、ChatGPT単体で望み通りの結果を得ることが難しいです。こうした問題に対して、既にいくつかソリューションが登場しています。
ソリューション
GPTベースのLLMと外部サービスを連携: ChatGPT Plugins
問題(1)であげた、「ChatGPTは汎用モデルであるため、場合によっては解決できなかったり、具体的なアクションをとることができない」に対して、ChatPGTではChatGPT Pluginsというオプションを用意しています。
ChatGPT Pluginsを使うことで、LLMアプリケーションの開発者が、最新の情報や専門的ナレッジベースの活用、購入や予約などのアクションをChatGPT上で実現できるようになります。
ChatGPT Plugins Storeがあり、その数は急増していると伝えられている
(2023年6月現在は有料ユーザ向けに徐々にロンチ)
出典: ChatGPT
これを利用することで、最新のニュースを配信するチャットアプリや、おすすめのレストラン情報を見つけたり、気に入った商品や宿などをChatGPT上で注文や予約ができたりするサービスを開発することができます。LLMモデル部分はChatGPTに任せ、Pluginsのみを開発することにより、より短期間にサービス提供ができるようになります。
思考->推論->批判のプロセスをAIにより自動化: AutoGPT
問題(2)であげた、「求める精度の答えを得るために何度もプロンプトを打たないといけない」に対する1つのソリューションがAutoGPTです。
AutoGPTはChatGPTのベースになっているLLMモデル(GPT-4)のAPIに接続されており、ユーザが達成したい目標をいくつか与えるだけで、AI自ら思考(企画)、推論(アクション策定)、批判(レビュー)の3つのプロセスを自律的に実行することができます。
企画 => アクション策定 => アウトプット1回目 => レビュー => 再度思考/アクション策定 => アウトプット2回目 のサイクルを重ね、プロセスを実行していくAIにより、アウトプットが自動的に生成されるため、ChatGPTでのプロンプト入力に比べて非常に効率的に求めるアウトプットへたどり着くことができます。
例えばデモとして、Auto GPTについて調査して、要約記事を作成するという事例があります。「Githubを探してAuto GPTのプロジェクトを調査し、autogpt.txtに出力してください」という目標を与え、Auto GPTが自動でブラウザを開き、google検索し、Auto GPTのレポジトリを発見し、説明を塊ごとに要約し、autogpt.txtに出力するという一連の流れを実現しています。
他にもAutoGPTで、ReactとTailwind CSSを使用して、Webサイトを構築するという目標と、それに伴う5つの手順を与えたのみで、新規登録/ログインのWebサイトをCSSのスタイル付きで10分とかからず自動生成した例もあります。そのほかにもさまざまな事例が生まれています。
より複雑なタスクやアプリケーションを作ろうとするとまだ失敗したり、介入する必要はありますが、いずれにせようまく使いこなすことで今まで手作業で時間がかかっていたことがかなり短縮される可能性があります。
他のLLMやツールと組み合わせてアプリケーションを構築: LangChain
最後に、問題(3)であげた、「ChatGPTのモデル(GPT-3/4)自体は、トレーニングプロセスやウェイトもブラックボックスである」に対するソリューションがLangChainです。LangChainはよりカスタマイズされた複雑なLLMベースのアプリケーションを開発するためのライブラリです。
「Chain」という言葉が使われているように、まるで数珠つなぎのようにさまざまなLLMモデルやツールを組み合わせることができます。さらにメモリ(記憶)機能があり、過去のやりとりを長期に記録・参照することができます。
LLMのモデルはGPT-3/4が主流ですが、他のモデルも多数存在します。LangChainを使うことで、より自身が実行したいタスクに向いているモデルをGPT以外にも選択して利用することができます。
例えば、複数のLLMを使って、文章分析や要約が得意なモデルと画像分類や処理が得意なモデルを組み合わせ、文字が書かれた画像を正しく分類するタスクの出力を最適化することができます。この他にもLangChainでできることは多岐にわたり、かなりカスタマイズ性が高いです。
一方で、LangChainは設定する内容が複雑であることやプロンプトを処理することに関連するコーディングが発生するため、エンジニア向けのツールとなっています。こうしたプロンプトをうまく処理するためのツールや技法、仕組みの理解に長けたエンジニアは「プロンプトエンジニア」の名称で界隈では需要が高まっています。
おわりに
今回ご紹介したソリューションについては、事前準備やエンジニアによる開発が必要なものがほとんどで、誰もが対話だけで商用レベルで通用するサービスができあがるという状況にはまだなっていません。
ただその下地はできあがりつつあり、より利便性が高く、高速にサービスを作れるツールは遠くない未来に出てくると考えられます。そういった状況になると、誰もがカジュアルにサービス開発ができるようになり、膨大な数のアプリケーションが生まれることになります。
サービス開発に関しては、AIが仕事を代替する部分もかなりありますが、クリエイティブな職がなくなるということよりも、より創造的・生産的活動にフォーカスできるようになる側面が強いです。
産業革命では、蒸気機関が登場して以来、織物は農家の副業で生み出されるのではなく、工場で大量生産する形態に変わりました。そこで大量のブルーカラー労働者という職業が生まれました。自動車が登場した時も人力車を引く職業はなくなりましたが、代わりにタクシー運転手という新たな職業が生まれました。
自動化・効率化されてなくなっていく職業はいつの時代もあるため、いかに早くトレンド・時代の流れをキャッチアップして自身を変えていくことができるかが重要になります。
Ximera Media Next Trends のトップページへ
キメラは2019年1月以来、70を超える国内パブリッシャー(新聞社・出版社・放送局)でサブスクリプションの事業設計、デジタルメディアのグロース、分析体制の構築などを支援しています。
コンテンツのエンゲージメント分析ツール「Chartbeat」の日本総代理店としてデジタルメディアの分析支援や体制づくりに取り組む一方、2021年には自社開発したサブスクリプション管理プラットフォーム「AE」を通してパブリッシャーのサブスクリプションビジネス開発を支援。2024年9月からはソーシャル動画の横断分析ツール「Tubular」の導入と分析の支援を開始。