GPT-4oのメモリ革新 ― 針の山の中の針
(nian.llmonpy.ai)- needle-in-a-needlestack は、GPT-4o、Llama、Jamba、Sonnet、Gemini に関する実験記事とコードを1か所に集めた公開ページ
- プロジェクトの コードリポジトリ も提供されており、Needle in a Needlestack の実験資料を直接確認できる
- モデル別の記事では、長いコンテキスト処理 と拡張性の違いを中心に、Llama 3.1 8B、Jamba 1.5 などの結果を比較している
- GPT-4o-mini は GPT-4 Turbo に近い性能を持ちながら価格が 98.5% 低い事例として、Sonnet 3.5 は NIAN で Sonnet 3.0 より優れた事例として紹介されている
- ページ自体が オープンソース で、GitHub の "Improve this page" リンクからドキュメント修正に参加できる
Needle in a Needlestack 関連リンク
- Needle in a Needlestack Code: Needle in a Needlestack のコードリポジトリ
- GPT-4o’s Memory Breakthrough!: GPT-4o のメモリ革新を扱う記事
- GPT4o-mini comparable to GPT-4 Turbo, for 98.5% lower price: GPT-4o-mini は GPT-4 Turbo に近く、価格は 98.5% 低いという記事
モデル別比較記事
- Llama 3.1 8B: Excels in 8K Contexts, Challenged by Expansion: Llama 3.1 8B は 8K コンテキストでは優れるが、拡張には課題があるという内容
- Jamba 1.5: New model with new architecture crushes Needle-in-a-Needlestack: Jamba 1.5 は新しいアーキテクチャで Needle-in-a-Needlestack を大きく上回るという内容
- Sonnet 3.5 Does Much Better at NIAN Than 3.0: Sonnet 3.5 は NIAN で Sonnet 3.0 よりはるかに優れるという内容
- Gemini 1.5 Flash Outperforms Much More Expensive Models: Gemini 1.5 Flash ははるかに高価なモデルを上回るという内容
オープンソース文書
- このサイトは オープンソース
- Improve this page リンクから GitHub 上でページを修正できる
2件のコメント
技術の進歩は本当にものすごいです..(泣)
Hacker News のコメント
このテストは、2021年に公開されたリメリック・データセットに基づくもの: https://zenodo.org/records/5722527
GPT-4o がこのデータで学習されていた可能性は非常に高いと思う。あえて入れない理由がないから。NIAN チームがなぜ複数のモデルでリメリックを生成し、その結果がデータセットに含まれていないか確認しないのか気になる。そうすれば、モデルがそのリメリックで学習されていた可能性を排除できる
小さな法律文書2つを比較してみたところ、一方にはあり、もう一方にはない条項があると完全に幻覚した。契約書の異なる3か所でそうだった
ctrl-fで確認すると、両方に同じように入っていた。サンプル1つにすぎないが、90%という数字はもっともらしく見えない。全体はおよそ8万トークン程度だった固定数のアテンションヘッドでは難しい作業だと思っていたので正解は期待していなかったが、Claude Opus や GPT-4 よりずっと悪く見えた
LLM は2つの文書をより小さな区間に分け、区間ごとに反復処理すると、この作業をよりうまくこなす。推論能力や記憶がないため、比較的小さな断片を超える2つのテキスト塊を構造的に分析できない。その代わり、意味的に独立していて関連のある小さな断片を段階的に見ていけば、かなりうまく機能する
これらを魔法の機械だと見なすのは間違いだ。限界と能力があり、他のツールと同じように何ができて何ができないのかを理解すべきで、なぜそうなのかも知っておくほうがよい。開発者の99.9%にとっては今なおかなり新しい進歩なのに、なぜ期待値が事実上無限に高いのか分からない。以前の技術には「よし、正しく使う方法を見つけよう」というような基準のほうが合理的だった。もしかすると人間のように話すため、実際にはない能力まであるように見えるからかもしれないし、人間にあまりにも似て聞こえるので、人間ではないことを責めているのかもしれない。誇張もあれば、同時に過小評価もある。XML でさえ、かつて世界の飢餓を終わらせるかのように見なされた、似たような過熱サイクルを経験した
needle-in-a-needlestack は、異なるものの中から探す needle-in-a-haystack と違い、似たデータの中から特定のデータを探す問題だ。例えば数千個のリメリックの中から1つを探すようなもの
needle-in-a-haystack テストは、モデルの実際の長文コンテキスト処理能力を非常に限定的にしか示さない。初期のモデルがこのタスクをひどく苦手としていて、テストしやすかったため主に使われただけだ
実際、最近のモデルの多くはこの1つのタスクではかなりうまくやるが、現実には32Kトークンを超えて複雑なことをする能力は大きく低下する。RULER のほうがはるかに良いテストだ: https://github.com/hsiehjackson/RULER
Gemini Pro 1.5 でもこれを見てみたい。先週、『Moby Dick』全文を入れてみたし、一度はビョン・チョル・ハンの全著作を入れてみたが、どちらの場合も、私の質問に言及または回答している文の一部を毎回そのまま見つけ出し、ハルシネーションもなかった
先週 ICLR で発表された BooookScore(https://openreview.net/forum?id=7Ttk3RzDeu) と、最近のプレプリント FABLES(https://arxiv.org/abs/2404.01261)を参照するとよい
誰かが巨大なログファイルを分析しているのも見たが、モデルが何かを見落とす時点を特定するには、こういう needle-in-a-needlestack のようなものが本当に必要だ。少なくともモデル開発者が候補モデルを分析するのに使える
誰か、検索だけでなく、さまざまな情報の間の理解の深さ、つながり、抽象化をテストする「haystack での総合」テストを作るべきだ
人が本を読むと、その本についての「全体的な直感」が生まれる。これを定量化する方法が必要だ。needle-in-haystack テストは単純すぎて、十分に遠くまで届いていない気がする
コンテキストを理解しているなら、物語の新しい部分を書けるはずで、読者が直感的に感じ取る人物の動機を使って彼らの物語を展開できるはずだ。ただし有用にするには全体を徹底して非公開に保つ必要があるため、個人的なベンチマークに近い形でしか使えない。あるいは、方法論を公開して分野の改善に使うのではなく、結論の信頼性そのもので評価される権威ある賞のようなものにすることもできる
GPT-4o も、学習セットにない2つの異なるアイデアの交差点をまだ扱えない。さらには、異なる2つのアイデアの交差点に対するランダムな変形すら作れない。まして、モデルがこうしたことをするはずだと期待すべきではない。モデルと実際の有用性、そして理解なしに成し遂げる驚くべきことに対して公平ではない。モデルが理解していると信じるのは、自分を欺くことだ
これで GPT を使い、生の動的データをその場で見栄えのよい HTML レイアウトに変換できる。トラフィックの少ない変更ログや監査ログのようなページで開発時間を大きく削減し、データ構造が変わっても HTML を最新の状態に保てる
以前の試みでは、GPT-4-Turbo が時々コンテキストと指示をほぼ完全に無視したため、一貫して動作しなかった
この記事は、GPT-4o が入力ウィンドウ全体にわたって注意を払う能力で、GPT-4 Turbo と Claude-3 Sonnetよりどれほど向上したかを示している
しばらく前から needle-in-a-haystack のアップグレードが必要だったが、この「Needle In A Needlestack」はよい次の段階だ。NIAN は数千個のリメリックを含むプロンプトを作り、特定位置のリメリックについて質問する
他のすべての面は悪くなく、雰囲気も気に入っていたので余計に腹立たしかった。昨夜 4o を使ってみたところ、20問前に貼り付けた C++ クラスをまだ完璧に認識していた。賢いかどうかはどうでもよく、有用かどうかが重要で、これは有用性に本当に大きく貢献する
公開インターネット上でまともな LLM 評価ができる人は誰もいないのではないか、という確信がますます強まっている
このテストに意味を持たせるには、テストセットのデータが学習データに含まれていなかったことを知る必要がある
いい話だ。GPT-4.0 で最大の問題は、会話が長くなるほど品質が落ちることで、特にコーディングプロジェクトでは重要だった
これで改善されたのか気になる。今日テストしてみるつもりだ