見出し画像

OpenAI ストロベリーの内部構造 - その仕組みとOpenAIの次なる展開

7,938 文字

OpenAIのストロベリーについて、かなりの大騒ぎというか、まあ議論が巻き起こっとるわけやけど、これが昨日リリースされて、一部のユーザーには既に提供されとるんや。
普通のチャットGPTユーザーやったら、まだストロベリーにアクセスできへんかもしれんけど、幸いなことに昨日のライブ配信を見てくれた人は分かると思うんやけど、私はAPIを通じて使うことができたんや。APIの方が制限が緩くて、もっと自由に使えるし、タイムアウトも遅いんや。
さて、ごく簡単に言うと、ストロベリーはどういう仕組みなんやろか。実は、私が数週間前に「ストロベリーの仕組み」について動画で説明したときよりも、シンプルなんや。基本的には思考の連鎖(Chain of Thought)やねん。
これが革新的やと言われる理由は、思考の連鎖をモデルに微調整(ファインチューン)したからなんや。これから、GPT-5やGPT-6、あるいは次のモデルのトレーニングに、どうやって一つのモデルから次のモデルへとブートストラップしていくかについて話すつもりや。
まずは、実際にどういう動きをするか見せたいと思うわ。OpenAIが公開した例では、ROT13かな、それとも何かの暗号みたいなものを与えて、上の例を使ってこれをデコードしてくれって言うてんねん。「順を追って考えてください」って指示して、こんな感じになるんや。
そやから、どないしてデコードするんかを順番に考えていくわけや。要するに、私がTwitterで書いたことやけど(他の人も同じこと言うとるみたいやけど)、OpenAIがやったことは、単発の推論からセルフプロンプティングというか、メタプロンプティングに切り替えたんや。
一気に全部話すんやけど、今までのチャットGPTや言語モデルみたいに質問と回答だけやなくて、もうちょっと時間かけて物事を考えるようになったんや。
Claude 3.5 Opusを見たことがある人なら分かると思うけど、既に少しはこういうことをしとるんや。問題をこういう風に考えていくんやね。ちょっと前にSubstackで論争を呼んだ投稿をしたし、たぶん動画でも言及したと思うんやけど、Claudeにはある程度システマチックな思考があるみたいなんや。
これ自体は別に新しいもんやないで。Microsoftもしばらく前から、こういう循環的というか反復的な自己プロンプトを実演しとったしな。今回の場合、かなり長時間話し続けるのが見られるけど、これは今までよりもずっと長い出力やね。そういう意味では革新的やと言えるかもしれん。
こういうモデルをファインチューンするのはそんなに難しくないんや。実際、オープンソースのデータセットがいくつかあって、思考の連鎖、思考のグラフ、思考の木のデータセットがあるんや。
つまり、これは別に新しいもんやないってことや。OpenAIは基本的に、最初に市場に出したか、少なくとも大手として最初に市場に出しただけやね。実際、ライブ配信中に、小さなスタートアップから既にこういうものを市場に出してるって反応があったくらいや。
OpenAIはファーストムーバーアドバンテージを持っとるわけや。それはそれでええんやけどな。
今朝、Substackに記事を書いたんやけど、「ストロベリーの果汁は絞る価値がない」って言うたんや。基本的には思考の連鎖やって話をしたんやけど、最初の思考の連鎖の論文が出たのは2022年1月やから、もう2年半以上前のことやねん。
これは非常にシンプルな認知アーキテクチャを近似したもので、まだ単純なタスクでも失敗することがあるんや。昨日はいろいろテストして楽しんだわ。
ちなみに、GPT-4 0-miniっていう現行モデルは100万トークンあたり15セントやけど、0-1プレビューは100万トークンあたり15ドルなんや。つまり、性能が若干向上しただけで、文字通り100倍高くなったってことやね。
他のモデルでもできるテストはまだまだたくさんあるからな。とはいえ、ベンチマークでの性能はおそらく向上しとるやろうし、それは見てみんとわからんけどな。
ビジネスの観点から見てみよう。技術的には非常に興味深いけど、ビジネス的にはあんまり面白くないんや。OpenAIはまだプロダクト・マーケット・フィットを達成してへんし、価格と市場のフィットもまだやね。まだ赤字やし。
で、このモデルは100倍高くなってるけど、いくつかのタスクで10〜20%くらい性能が良くなっただけやねん。確かに新しい機能を解禁したのは面白いけど、100倍のコストに見合うかって言うたら、たぶんそうやないと思うわ。
じゃあ、これからどうなるんやろか。私なら、マルチエージェントフレームワークにもっと賭けるわ。基本的に、ここでやってることは、マルチエージェントフレームワークが既に安くて速いモデルでできることやからな。
待ってみるけど、マルチエージェントフレームワークの方が同等かそれ以上の性能を出せて、しかも安くて速いんちゃうかなって思うわ。見てみんとわからんけどな。
実はこの動画を作るつもりはなかったんやけど、Twitterでちょっと意地悪なコメントを書いてから思い立ったんや。「新しいビジネスモデルが登場した。ストロベリーをマルチエージェントフレームワークでやる。モデルルーティングを使って、より速く安く結果を出す。全部LangChainでやる。」って書いたんや。
ちなみに、本当にLangChainでできるで。「顧客にAPIを提供すれば、ストロベリーと変わらへん」ってな。
Carlosは面白い奴で、「LangChainさえあれば、ストロベリーを再現できる」って言うてくれたんや。「その通りや。でもそのフレームワークは好きやないわ」って返したら、「僕も好きやないわ。だからストロベリーが面白いんや」って。
「システム2がシステム1のファインチューニングに影響を与えるっていう観点では、ちょっと面白いとこあるかもな」って言うてくれたんや。「そやな、同意やわ。でもファンボーイたちが言うてるほどの大発見やないで」って返したんや。
「普通のGPT-3で指示調整モデルをブートストラップして、その指示調整モデルでチャットボットをブートストラップして、今度はチャットボットで推論をブートストラップしとるだけやからな」って。
これについて話したいと思うたんや。他の人もこれを理解してるんやなって気づくまで、この動画を作るつもりはなかったんや。他の人も推測したり暗示したりしてるかもしれんけど、CarlosとFiのように明確に言うた人はおらんかったと思うわ。
もし他の誰かがどこかで言うとったら、ごめんな。最初に気づいたって言うてるわけやないから。
大きく一歩引いて見てみると、OpenAIがやったことは、システム2思考の最初の兆しを得たってことやと、みんな大体同意してるみたいやね。
循環的でもないし、監督層もないから、ただの自己対話やと言えるかもしれん。それが良いか悪いかは、まあ見てみんとわからんけどな。
でも、多くの人がこれを使えば使うほど、データが増えていくんや。テクノロジーの世界では「データフライホイール」って概念があってな、ここで言うとるのはそれなんや。
ずっと昔に普通のGPT-3を使うとったら、ほんまにアホな自動補完エンジンやったんや。ほとんど使い物にならんくらい難しかったわ。
実際、当時のプロンプトを見てみると、めっちゃ狭く制約されとったんや。でも、GPT-3を使ううちに、「これらの指示に従って、与えられた入力に基づいてこのタスクを実行してください。ここにプレースホルダー値があります」みたいな感じで指示を作るようになったんや。
OpenAIはこれを見て、「明らかにこれが一番ええ使い方やな」って思うて、指示に従うようにファインチューンしたんや。そうしたら使いやすくなって、text-davinci-001とか002シリーズのモデルができたんや。
これらのモデルは、元々のGPT-3の使い方からブートストラップしたデータに基づいて、簡単な指示に従えるようになったんや。
昔のGPT-3のプロンプトを見せたろか。こんな感じやったんや。「私はRavenとAGIです。以下は私が注意すべき重要なトピックとシナリオです」って感じで、全部のコンテキストを与えなあかんかったんや。
これは安全性のためのプロンプトの一つで、認知アーキテクチャの一部やったんや。ここでは、シナリオと評価の例を与えて、パターンを認識させて、「シナリオ1、評価、シナリオ2、評価、シナリオ3」って感じで自動補完させてたんや。
シナリオを与えると評価を生成して、最後に手動でエンドトークンを入れなあかんかったんや。これが出発点やったんや。
今のチャットGPTでこんなプロンプトを書かなあかんかったら使えへんよな。それに、当時はトークンウィンドウが2000くらいしかなかったから、これだけで半分くらい使うてしもうてたんや。今は10万とか100万トークンのウィンドウがあるけどな。
これから始まって、指示調整シリーズをブートストラップしたんや。指示調整シリーズのプロンプトを見つけてみるわ。
これはたぶん指示調整に基づいとると思うわ。プロンプトがめっちゃ短くなっとるのが分かるやろ。これもまだGPT-3の時代やけど、指示調整されたモデルやったんや。
もう普通の何でもありじゃなくて、「これが最近の会話で、これが思考や。返事をください」って感じで簡単になったんや。チャットGPTほど直感的やないけど、ずっと使いやすくなったんや。
ちなみに、その頃私が取り組んでたものを見せたろか。チャットGPTの6ヶ月くらい前に、チャットGPTみたいなものに取り組んでたんや。
「情報コンパニオンチャットボット」って呼んでたんやけど、これ2022年5月8日のやつや。つまり、チャットGPTがローンチする6ヶ月くらい前やね。
私がやったのは、指示調整されたモデルを使って、偽のチャットデータを合成することやったんや。これでチャットボットを訓練できたんや。
OpenAIもチャットGPTに同じアプローチを取ったんや。たくさんのチャットデータを合成して、チャットボットをローンチして、実際のユーザーから本物のチャットデータを得て、それを使って基礎となるモデルを改善するんや。
これがGPT-3から3.5、4、そして最終的に4 turboに至る道筋や。4 turboは、量子化とか、たぶん蒸留とかの他の基礎的な改善にも基づいとるけどな。
ともかく、これがフライホイールなんや。普通のモデルから指示調整モデル、チャットモデル、そして今は推論モデルになったわけや。
もちろん、既にオープンソースのデータセットもあるし、他のものも見えてきとるわ。
Carlosが言うてるように、これはずっと当てはまってたことやね。オープンソースコミュニティは、OpenAIがやることを数ヶ月以内にリバースエンジニアリングできるんや。そのタイムウィンドウはどんどん短くなっとるしな。
次に何が起こるかって言うたら、まず、みんなが「OpenAIがチャットボットモデルで推論をブートストラップできることを証明した」って気づくんや。チャットボットモデルは誰でも持っとるし、オープンソースのチャットボットモデルもあるからな。
そやから、次にやることは、ここでやったのと同じことや。つまり、推論データセットを合成するんや。たくさんの推論データセットを合成して、オープンソースにするか、クローズドソースにするか、まあどっちでもええんやけど、とにかくみんながデータセットの合成方法を理解するんや。
ちなみに、既に思考の木、思考の連鎖、思考のグラフのデータセットがあるんやけどな。あとは商業化するだけやね。
これが次の段階になると思うわ。この技術を改善していく中でな。
「これはめっちゃすごいやん」って思うかもしれんけど、私の個人的な反応としては、そんなにすごくないんや。何年も前からこれに取り組んできたし、これは文字通り小さな一歩に過ぎんのや。
期待してたほど洗練されてへんから、今のところAGIはないって断言できるんや。基本的には、メタプロンプトや自己プロンプトをするようにファインチューンされただけのモデルやねん。
それでも「やっぱりすごいやん」って言うかもしれんし、確かにすごいんやけどな。でも、これは予想できたことやし、もっと洗練されたものになり得たはずなんや。
Carlosが正確に言うてるように、これはフライホイールなんや。ここで彼が言及してるのは、ダニエル・カーネマンのシステム1とシステム2の思考に関する研究やね。
システム1の思考は、直感的で即座の、よく考えずに出す答えのことや。質問されたらすぐに答えを出すみたいな。
システム2の思考は、人間が少し時間をかけて考えるときのことや。小さな認知ループを回して、「これはどうかな、あれはどうかな」って考えて、それから答えを出すんや。
カーネマンらが指摘したのは、システム2の思考を繰り返すうちに、脳がその行動を近似して学習して、だんだん自動的になっていくってことなんや。
例えば、プログラマーの場合、最初はプログラミングにめっちゃシステム2の思考を使うから、認知的にめっちゃ大変で疲れるし、遅いんや。でも、経験を積んだプログラマーになると...
ちなみに、これは文字通り全ての職業に当てはまるで。全ての職業がこういう風に働くんや。
カメラの前で話すのも同じやね。今私がやっとることや。何を言うか考える必要はなくて、ただ話しとるだけや。今カメラに向かって話してるのは、ゼロショット推論みたいなもんや。何も計画せんかったんや。
だから、今私が話してる内容は、システム1の思考に統合されとるんや。文字通り何千時間もやってきたからな。
Carlosが暗示してるのは、今このデータはめっちゃ高価やけど、ほとんどの人にとってはその価値がないかもしれんってことや。私もそう指摘したんやけどな。
でも、OpenAIがこれをローンチしたのは、まだ製品として欲しいわけやないと思うんや。もっとデータが必要なんや。もっと良いデータが欲しいんや。
だから、みんながこのモデルを使うようになるわけや。無料版でも有料版でも、設定によってはOpenAIがそのデータの一部を消費することになるんや。
成功した場合は全部「これは良いサンプルや」ってマークされるし、失敗した場合は「これは悪いサンプルや」ってマークされるんや。たぶん他にもデータセットをフィルタリングする方法があるんやろうけどな。
思考の連鎖や思考のグラフ、思考の木の推論をどんどん蓄積していくにつれて、基礎となるモデルはどんどん良くなっていくんや。トレーニングするためのデータがどんどん増えていくからな。
これがOpenAIにとってファーストムーバーアドバンテージがそんなに強力な理由なんや。一番大きなユーザーベースを持っとるから、一番多くのデータを持っとるんや。今のところ、データの量が全てなんや。
これが、より良い推論モデルをブートストラップするのに役立つんや。そして最終的には、次に来るものをブートストラップするのにも役立つんや。今のところ、次に何が来るかはよく分からんけどな。
私があんまり感心せんのは、繰り返すけど、これは別に新しいもんやないからや。LangChainと自己プロンプト、マルチエージェントフレームワークを使えば、同じデータを合成できるんや。
それはそれで面白いけど、これは普通のGPT-3で指示調整モデルをブートストラップしたり、それでチャットボットをブートストラップしたりしてきたことの延長線上にある小さな一歩に過ぎんのや。一つのものが次のものの上に積み重なっていくだけやね。
最後に言うておきたいのは、私のパトロンや支援者の何人かが「デイブ、これって知能爆発や知能の急激な進歩の兆候やないか?」って言うてきたんやけど、そうやないってことや。
私が見とるパラダイムシフトは、基礎となるトランスフォーマー技術やね。それが一つ。トランスフォーマーが大きくなって、コンテキストウィンドウが広くなって、注意メカニズムが良くなったんや。これはアルゴリズムの改善やね。
残りは全部データの改善なんや。これらのモデルには、基本的に二つの根本的な要素があるんや。アルゴリズムと、それを訓練するデータや。
アルゴリズムっていうのは、層や重みなんかを持つモデルを初期化することや。それが一つ。そして、それを訓練するデータと、ファインチューンする技術や。技術的には三つのステップがあるんやけど、基本的にはモデルとデータやね。
GPT-2からGPT-3へのパラダイムシフトを見ると、それはほとんどモデルの改善やった。どっちも最初はオートコンプリートエンジンやったんや。GPT-2にもファインチューニング機能はあったけど、今日と比べるとかなり原始的やったな。
GPT-3からGPT-4への基礎技術は、基本的に同じやね。唯一の新しいパラダイムは、ファインチューニングや。初期データもたぶん多かれ少なかれ同じやろう。
みんなが指摘してるように、データは使い果たしてしまったんや。だから今は全部合成データやねん。ここに表示してるのは、昔GPTで生成した合成データの一部や。合成データが来ることは分かっとったんや。
そういう意味では、ストロベリーがチャットGPT APIやOpenAIプラットフォームAPIと統合されると、さらに多くのデータが得られるんや。あとは良いデータと悪いデータを選別するだけで、新しい機能をブートストラップするためのより良いデータセットができるんや。
ごめん、同じこと繰り返してもうた。分かってくれたかな?十分説明できたと思うんやけど。
そやけど、これがそのプロセスなんや。最後に言うておきたいのは、この新しいブートストラップのプロセスの間隔がどんどん広がっとるってことや。
GPT-3から指示調整までは3〜6ヶ月、長くても9〜12ヶ月くらいやったんや。指示調整からチャットまでも1年以内やったけど、チャットからこれまでは2年以上かかってるんや。
新しい技術をブートストラップするのがどんどん難しくなっとるんや。これからもそうなり続けると思うわ。
だから、投資は続いとるけど、AIの進歩は依然として減速しとるって言い続けるつもりや。UXは良くなっとるし、使いやすさも向上しとるけど、基礎となる科学は加速してへんのや。基礎科学が加速してる証拠は見当たらへんわ。
とはいえ、基礎科学が加速せんでも、展開が加速する可能性はあるんや。これから数年で見られるのは、展開の加速やと思うわ。
機能的には関係ないって言うかもしれんけど、AIが減速してるって言うときは、通常、基礎となる科学のことを指しとるんや。実際の商業的な展開のことやないんや。
商業的な展開は、絶対に加速してる可能性が高いって認めるわ。改善されたUXとしてのストロベリーは、指示調整されたGPT-3とチャットGPTの違いくらい大きいかもしれんな。
チャットGPTは大きな目覚めの瞬間やったけど、今回はそこまで大きなジャンプにはならんと思うわ。チャットインターフェースはめっちゃ直感的やったからな。これはチャットインターフェースの段階的な改善になるやろうね。
ごめん、また同じこと言うてもうた。分かってくれたと思うわ。見てくれてありがとう。じゃあな!

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