見出し画像

古のNLPエンジニア、ChatGPTが出てからの約2年半を振り返る

こんにちは、べいえりあです。皆さん、今日もLLMやってますか?今回の記事ではChatGPTが世に出てからの約2年半で起こった(AI、LLM関連の)重大事件を自分の主観を元にランキング形式で振り返ってみようと思います。

本記事は、#IVRy_AIブログリレー の9月2日(2日目)の記事です。昨日は、CEOの奥西が「AI Oriented Companyが変える企業の未来と働き方」という記事を公開しました。ブログリレーの記事一覧は「IVRy AIブログリレー全記事まとめ」をぜひご覧ください。

何故、振り返りたくなったのか?

一番大きい理由は会社で何かAIについて書けと言われたから(小声)なのですが、それとは別にここ2年半振り返ってみると思ってたよりLLM進化しとるやんけ!と最近改めて思ったからです。

人類、過去ばかり見てても前に進めないとは思うのですが、2年半の進化を振り返ることで「まだまだこれからもLLMは進化し続けるんじゃないか」と期待を持つこともできるんじゃないかと思うので、興味を持っていただけた方々は是非お付き合いください。

古のNLPエンジニア?

この辺の記事にも書きましたが、NLPを10年ほどやってきました。

音声対話をやっている期間が長かったので、ランキングもそちらにちょっと偏るとは思います。

ChatGPT以降の7大事件ランキング

というわけで、早速ランキングを見ていこうと思います。前もってコメントしておきたいのですが、世の中的にインパクトがあったかよりも自分の中でインパクトがあったかを元に書いた方が世の中に出回っている記事と差別化されて面白いんじゃないかと思うので、自分の主観的インパクトを元に書いています。

7位 Deep Research

(GoogleもOpenAIも製品名がDeep Researchなので、Deep Researchと呼んでいますが、日本語だと調査エージェントでしょうか)

LLMに知識を問う、というのは適切かどうかは置いておいてよくあるユースケースだと思うのですが、この方向に進化したLLMエージェントがDeep Researchです。

LLMが知識を問われた際、よく知られた質問であればLLM内の知識で答えられますし、単純な質問であればLLM内に知識が無くとも検索エンジンなどのツールを用いて回答できると思うのですが、Deep Researchは

  1. LLMが調査計画を立てる

  2. その調査計画に従いLLMが調査を行う

  3. LLMが調査内容をまとめてユーザーに提示する

の3ステップで調査を行うことで、LLMが知識を持っていない(i.e., 最新の情報など)複雑な調査内容でも精度の高い調査を行うことに成功しています。

こんな感じで調査計画を立てて実行してくれる。計画の修正も可能

Deep Researchは後述するプログラミングエージェントと並んで自律型AIエージェントがある程度上手くいく最初の実例になったと思っていて、ほっといてもLLMが勝手に作業を進めてくれているという体験が新鮮でした。

6位 同時双方向音声対話モデルの出現

こちらは世の中的にはそこまでインパクトは大きくなかったかもしれないのですが、同時双方向音声対話モデルが出てきたのは個人的には衝撃でした。

一般的に、LLMを使って音声対話モデルを作ろうと思うと、

  1. 音声入力を音声認識システムでテキストに書き起こす

  2. 書き起こしたテキストをLLMに入力し、テキスト出力を得る

  3. テキスト出力を音声合成する

というパイプライン処理をするのが一般的だと思うのですが、一度テキストに落としてしまうと、

  • 音声特有の情報(感情であったり細かい発音など)が落ちる。書き起こしが失敗してしまうとそこから復帰できない

  • 対話ターンが区切る必要があるので、発話の重なりや相槌などの人間の自然に行うことを実現するのが難しくなり、音声対話体験が悪くなる

という問題があります。これを解決しているのが同時双方向音声対話モデルで、モデルが常にユーザーの音声入力を聞き、適切なタイミングを判断して音声を出力します。説明するより見てもらった方が早いと思うので、日本語でこれを実現したJ-Moshiのデモのリンクを貼ります。

https://nu-dialogue.github.io/j-moshi/static/video/oh-1-title.mp4 (J-Moshiのウェブサイトより引用)

どうですか?すごくないですか???

世間的な注目度で言うともうちょっと低い順位な気もするのですが、自分はここ7~8年くらいずっと音声対話やっていて、対話ターンをちゃんと定義せずに対話するモデルが出てきたというのが衝撃だったのでこの順位にしました。まだ実際のビジネス応用となるとそれなりに厳しいと思うのですが、今後の進展を見守っていきたいと思います。

5位 マルチモーダルモデルの台頭

LLMは元々テキスト入出力であったのですが、その入出力のモダリティを画像、音声、動画などに拡張したのがマルチモーダルモデルです。出力のモダリティが増えたのもインパクトはあったのですが、NLPエンジニアの自分の中でより強く印象に残ってるのは画像だったり音声の入力が可能になったことです。

音声については上記の同時双方向音声対話モデルのところでも書いているので割愛して画像入力について書こうと思うのですが、文書画像理解がめちゃくちゃ簡単に行えるようになったことが自分の中でとても大きかったです。文書画像理解はPDFなどの文書画像から知見を抽出するタスクですが、マルチモーダルモデルが出てくる以前の標準的なフローは

  1. 文書をOCRにかける(テキスト、位置情報などを取得する)

  2. その出力(テキストデータと位置情報などから来るそのテキストデータ間の関係性)を元に知見を抽出する

となっていました。OCR自体は各種クラウドサービスのAPIなどで簡単に行えてはいたのですが、実際に応用しようとすると、書き起こされたテキストが何を意味するのか(例えばレシートなどで「500円」というのが商品の値段なのか支払った金額なのかお釣りなのか、など)まで理解しないと不十分であることが多いです。この「理解」の部分が簡単に行えるようになり、文書理解がグッと身近になったんじゃないかと思います。

画像からの情報抽出例。
軽量モデル(Gemini 2.5 Flash Lite)である程度難しい漢字でも正確に認識できている

余談ですが、GPT-4が出て以降、モデルの軽量化などは進んでいたもののモデルの賢さの進歩についてはちょっとゆっくりになっていた時期があった気がしています。それで幻滅期に入りかけていたのをマルチモーダルモデルが救ったという側面もあると思っており、その点も含めてこの順位にしました。

4位 LLMによるプログラミング補助

ソフトウェアエンジニアから見てLLMのインパクトが最も大きかったのがプログラミング補助ではないでしょうか?自分も恩恵をめちゃめちゃ受けていてClaude CodeやCursorが無いとコーディングやりたくないという状態になってるのでこの順位にしました。

まず最初に出てきたのはコード補完です。こちらは研究自体は昔からされていたと思うのですが、実際に実用化されたのは2023年の3月に発表されたGitHub Copilotでした。このコード補完は一度使い始めるともう無い世界には戻れない代物だと思っていて、上記の通り自分はこれがないとコーディングやりたくないのでインターネットが無い環境ではコーディングができなくなってしまいました。

その後に出てきたのがDevinやClineやCursor、最近だとClaude CodeやOpenAI Codexに代表されるより自律的なプログラミングエージェントで、自然言語で指示を出せばリポジトリやその中のコードを読み取ってよしなにコードを書いてくれます。

エージェントについてはまだ賛否両論だと思うのですが、使いどころを間違えなければとても有用だと思っており、もしまだ試したことが無いソフトウェアエンジニアの方がいれば是非とも試してみてほしいです。

3位 ロングコンテクストの導入

皆さんはもう覚えていないかもしれませんが、ChatGPTのAPIが初めて公開された時の最大入力トークン長はどれくらいだったと思いますか?

4096トークン

です。当時のChatGPTは日本語だと文字数よりもトークン数の方がちょっと多くなっていたので日本語だと最大入力長は4000文字未満くらいになります。今考えるとビックリするほど少ないですね。

これは結構な制限で、例えば要約タスクでちょっと長い文書を入れると最大入力長を超えてしまうので文書を分割して要約するなどの工夫が必要になったり、LLMにコンテクストを通じて知識を与えようにもかなり絞り込んで与えないといけないいけないという不便さが生じていました。また、例えば長めの動画の内容を要約する、などの応用も入力長が長くなりすぎるので夢のまた夢でした。

こちらについてはChatGPTでも徐々に改善(4096トークン→16384トークン)していっていたのですが、一気に制限が緩和されたのがClaude 2で10万トークン、その後Gemini 1.5で100万トークンまで入力できるようになり、現在の主流のモデルでは20万~200万トークンくらい入れられるのが標準的になりました。入力長が長くなったとして、それを有効活用できるのか?というのは別問題だと思うのですが、そちらもNeedle In A Haystack分析などである程度は担保されているようにも思えます。

Gemini 1.5 ProのNeedle In A Haystack分析の結果。緑の部分がLLMが利用できた部分

この発展により、あまり入力長の制限を考えずにLLMが使えるようになった他、動画要約などの新しいユースケースが出てきたりしました。個人的には必要な情報はとにかく何でも雑にLLMに入れてよしなにやってもらうという戦略を取っても上手くいくようになったので、開発がとても楽になりました。

2位 モデルの軽量化

(モデルの軽量化と同サイズのモデルでの精度向上は表裏一体だと思っているのですが、こちらではモデルの軽量化に話を寄せています)

GPT-4が出た時はその性能にビックリしたのですが、それと同時にそのコストと推論の遅さに「これ、実際に使うとなると大変そうだな…」と思っていたものでした。しかしその後、様々な研究者・開発者の努力によりモデルはどんどん軽量化されていきました。例えばGPT-4と今年の2月に発表されたGemini 2.0 Flashを比べてみると、

$$
\begin{array}{|l|l|l|l|} \hline
 & \text{入力} & \text{出力} & \text{精度 (MMLU-pro)} \\ \hline
\text{GPT-4} & \$30 & \$60 & 63.7\% \\ \hline
\text{Gemini 2.0 Flash} & \$0.1 & \$0.4 & 77.6\% \\ \hline
\end{array}
$$

というように、2年で同等以上の精度でも料金は入力トークン換算で300分の1になりました。これによって高性能なモデルも本番環境に大変組み込みやすくなったのではないかと思います。

こちらは我々が作っているサービスへの影響も非常に大きくて、

  • Gemini 2.0 Flashクラスの軽量なモデルであればLLMのコストがほぼ気にならなくなった

  • サービスの中であまりLLMの処理が上手くいっていない箇所が、特に工夫をすることもなくモデルの性能向上により問題が解消された

  • 推論が高速になったことで、サービスの初期版では気になっていたレイテンシーが気にならなくなった

などの恩恵がありました。これからもモデルの軽量化と精度向上は進み続けると思うので期待して待ちたいです。

1位 長考モデルの発見

1位はこれしかないと思うので、これにしました。時は2024年9月、テキストオンリーのモデルについては軽量化はされていくもののモデルの賢さについては頭打ち感が見えてきていた時代。自分もこんな呟きをしていました。

そんな停滞感が見えていた中、突如として現れたのが最初の長考モデル、OpenAIのo1でした。複雑な問題を解く際、LLMに思考の連鎖(Chain-of-thought)をさせるのは有効であるということはChatGPTが出た直後くらいから既に知られていたと思うのですが、このモデルはLLMが思考の連鎖を上手くできるように強化学習することで、LLMが考えれば考えるほど良い答えを出せるようにすることに成功しています。

o1の思考時間と精度の関係。思考時間が増えるほど精度が向上している
(OpenAIウェブサイトより引用)

このアプローチは解決に高度な複雑な推論が必要になる一部ドメインで非常に有効で、実際にLMSYSの数学のリーダーボードでは性能が爆上がりしました。

o1のLMSYS Math Arenaでのスコア(LMSYSのXアカウントより引用)

この図を見ると、頭打ちになりつつあったLLMの性能が長考モデルによってその壁を突き破ったことが分かりますね。この後、モデルの性能は更に向上し、今では数学オリンピックで金メダルが取れるくらいに成長しています。

ちなみに1位にはしたものの、自分がやってることの多くはPhDレベルの賢さを必要としていないので実はそんなにちゃんと使いこなせてはいないのですが、LLMの賢さのフロンティアはここだと思うので、次なるブレークスルーもこの長考モデルから生まれるんじゃないかと思っています(…とは言え、最近はちょっとモデルの進歩が見えづらくなってきてる?)

最後に

IVRyでは「イベントや最新ニュース、募集ポジションの情報を受け取りたい」「会社について詳しく話を聞いてみたい」といった方に向けて、キャリア登録やカジュアル面談の機会をご用意しています。ご興味をお持ちいただけた方は、ぜひ以下のページよりご登録・お申し込みください。


いいなと思ったら応援しよう!