オープンな LLM コミュニティは百花が咲き競う時代です。Llama-3-70B-Instruct、QWen2-72B-Instruct、Nemotron-4-340B-Instruct、Mixtral-8x22BInstruct-v0.1 などが見られます。他にも素晴らしいパフォーマンスのモデルが多数あります。しかし、GPT-4-Turbo に代表される独自の大型モデルと比較すると、オープンモデルには依然として多くの点で大きなギャップがあります。
一般的なモデルに加えて、プログラミングと数学用の DeepSeek-Coder-V2、視覚言語タスク用の InternVL 1.5 (一部の分野で使用されている GPT に匹敵する) など、主要な領域に特化したいくつかのオープン モデルが開発されています。 4-ターボ-2024-04-09)。
「AIゴールドラッシュ時代のショベルキング」として、NVIDIA自身も開発したChatQAシリーズのモデルなど、オープンモデルの分野にも貢献していますので、本サイトのレポートをご参照ください」 NVIDIA の新しい対話 QA モデルは GPT-4 よりも正確ですが、私は批判されました: 重み付けされていないコードにはほとんど意味がありません。》。今年の初めに ChatQA 1.5 がリリースされました。これは検索拡張生成 (RAG) テクノロジーを統合し、会話型質問応答において GPT-4 を上回る性能を発揮します。
さて、ChatQA はバージョン 2.0 に進化しました。今回の主な改善の方向性はコンテキスト ウィンドウを拡張することです。
「無限の長さに直接拡張することで、Google Infini-Transformer がコンテキスト長の議論に終止符を打つ」 と報告しました。
主要な独自の LLM はすべて、非常に大きなコンテキスト ウィンドウをサポートしています。単一のプロンプトで数百ページのテキストをフィードできます。たとえば、GPT-4 Turbo と Claude 3.5 Sonnet のコンテキスト ウィンドウ サイズは、それぞれ 128K と 200K です。 Gemini 1.5 Pro は 10M の長さのコンテキストをサポートできます。これは驚くべきことです。 しかし、オープンソースの大規模モデルも追いつきつつあります。たとえば、QWen2-72B-Instruct と Yi-34B はそれぞれ 128K と 200K のコンテキスト ウィンドウをサポートします。ただし、これらのモデルのトレーニング データと技術的な詳細は公開されていないため、再現することが困難です。さらに、これらのモデルの評価はほとんどが合成タスクに基づいており、実際の下流タスクのパフォーマンスを正確に表すことはできません。たとえば、現実世界の長いコンテキストを理解するタスクに関して、オープン LLM と主要な独自モデルとの間には依然として大きなギャップがあることが複数の研究で示されています。 そして、NVIDIA チームは、現実世界の長いコンテキスト理解タスクにおいて、オープン Llama-3 のパフォーマンスが独自の GPT-4 Turbo に追いつくことに成功しました。 LLM コミュニティでは、ロング コンテキスト機能が RAG と競合するテクノロジーであるとみなされることがあります。しかし現実的に言えば、これらのテクノロジーは相互に強化し合うことができます。 コンテキスト ウィンドウが長い LLM の場合、下流のタスクと精度と効率のトレードオフに応じて、プロンプトに大量のテキストを添付することを検討したり、取得メソッドを使用してプロンプトから関連情報を効率的に抽出したりすることができます。大量のテキスト。 RAG には明らかな効率上の利点があり、クエリベースのタスクのために数十億のトークンから関連情報を簡単に取得できます。これは、ロングコンテキストモデルでは得られない利点です。一方、ロング コンテキスト モデルは、RAG が苦手とする文書の要約などのタスクに非常に優れています。 したがって、高度な LLM の場合は、下流のタスクと精度と効率の要件に基づいてどちらかを検討できるように、両方の機能が必要です。 以前、NVIDIA のオープンソース ChatQA 1.5 モデルは、RAG タスクで GPT-4-Turbo を上回るパフォーマンスを発揮できました。しかし、彼らはそこで止まらず、ChatQA 2 をオープンソース化しました。これには、GPT-4-Turbo に匹敵する長いコンテキスト理解機能も統合されています。 具体的には、Llama-3 モデルに基づいており、コンテキスト ウィンドウを 128K (GPT-4-Turbo と同等) まで拡張すると同時に、現在利用可能な最高のロング コンテキスト リトリーバーも備えています。コンテキスト ウィンドウを 128K に拡張しました
では、NVIDIA はどのようにして Llama-3 のコンテキスト ウィンドウを 8K から 128K に拡張したのでしょうか?まず、Fu et al. (2024) の論文「言語モデルを 128k コンテキストにスケーリングするためのデータ エンジニアリング」の方法を使用して、Slimpajama に基づいた長いコンテキストの事前トレーニング コーパスを作成しました。 彼らはトレーニング プロセス中に興味深い発見もしました。元の開始トークンと終了トークン と および
命令の微調整に長いコンテキスト データを使用する
チームは、モデルの長いコンテキストの理解能力と RAG パフォーマンスを同時に改善できる命令の微調整方法も設計しました。具体的には、この命令微調整方法は3つの段階に分かれています。最初の 2 つのステージは ChatQA 1.5 と同じです。つまり、最初に 128K の高品質な指示コンプライアンス データセットでモデルをトレーニングし、次に会話型 Q&A データと提供されたコンテキストの混合物でトレーニングします。ただし、両方のステージに含まれるコンテキストは比較的短く、最大シーケンス長は 4K トークン以下です。モデルのコンテキスト ウィンドウ サイズを 128K トークンに増やすために、チームは長期教師あり微調整 (SFT) データセットを収集しました。
2 つの収集方法を採用しています:
1. 32k より短い SFT データ シーケンスの場合: LongAlpaca12k、Open Orca の GPT-4 サンプル、および Long Data Collection に基づく既存の長いコンテキスト データ セットを使用します。
2. シーケンス長が 32k から 128k のデータの場合: このような SFT サンプルを収集するのが難しいため、合成データセットを選択しました。彼らは、グラウンド トゥルースと意味的に関連する段落の両方を含む NarrativeQA を使用しました。彼らは、関連するすべての段落をまとめ、実際の要約をランダムに挿入して、質問と回答のペアに関する実際の長い文書をシミュレートしました。
次に、最初の 2 つの段階で取得された全長 SFT データ セットと短い SFT データ セットが結合されてトレーニングされます。ここでは、学習率が 3e-5 に設定され、バッチ サイズが 32 に設定されています。
長いコンテキストの取得と長いコンテキスト LLM の出会い
LLM で現在使用されている RAG プロセスにはいくつかの問題があります:
1 正確な答えを生成するために、上位 k ブロックごとの取得では非無視できるコンテキストの断片。たとえば、以前の最先端の高密度埋め込みベースのリトリーバーは 512 個のトークンしかサポートしていませんでした。
2. トップ K (5 や 10 など) が小さいと再現率が比較的低くなりますが、トップ K (100 など) が大きいと、以前の LLM が適切に使用できないため、生成結果が低下します。チャンク化されたコンテキスト。
この問題を解決するために、チームは数千のトークンをサポートする最新の長いコンテキスト取得機能を使用することを提案しています。具体的には、E5-mistral 埋め込みモデルをレトリーバーとして使用することを選択しました。
表 1 は、さまざまなブロック サイズでの上位 K の取得とコンテキスト ウィンドウ内のトークンの総数を比較しています。
3000 から 12000 までのトークン数の変化を比較すると、チームはトークンが多いほど結果が良くなることを発見し、新しいモデルのロングコンテキスト機能が確かに優れていることを確認しました。また、トークンの総数が 6000 であれば、コストとパフォーマンスの間のトレードオフがより適切になることもわかりました。トークンの合計数を 6000 に設定した場合、テキスト ブロックが大きいほど結果が向上することがわかりました。したがって、実験では、ブロック サイズ 1200 と上位 5 個のテキスト ブロックをデフォルト設定として選択しました。
実験
評価ベンチマーク
包括的な評価を実施し、さまざまなコンテキスト長を分析するために、チームは 3 種類の評価ベンチマークを使用しました。
1. 100K トークンを超える。 2. 中程度の長いコンテキストのベンチマーク、32K トークン未満
3. 短いコンテキストのベンチマーク、4K トークン未満。
下流タスクが RAG を使用できる場合は、RAG を使用します。
結果チームは最初に合成データに基づいて Haystack テストで Needle を実施し、次にモデルの実世界の長いコンテキストの理解と RAG 機能をテストしました。
1. 干し草の山の中の針テスト
Llama3-ChatQA-2-70B テキストの海の中で目的の針を見つけることができますか?これは、LLM のロングコンテキスト能力をテストするために一般的に使用される合成タスクであり、LLM のしきい値レベルを評価するものとみなすことができます。図 1 は、128K トークンにおける新しいモデルのパフォーマンスを示しています。新しいモデルの精度が 100% に達していることがわかります。このテストにより、新しいモデルには完全な長いコンテキストの取得機能があることが確認されました。
2. 100,000 トークンを超える長いコンテキストの評価
InfiniteBench からの実際のタスクで、チームはコンテキストの長さが 100,000 トークンを超えたときのモデルのパフォーマンスを評価しました。結果を表2に示す。
新しいモデルは、GPT4-Turbo-2024-04-09 (33.16)、GPT4-1106 プレビュー (28.23)、Llama-3-70B- などの多くの現在の最高のモデルよりも優れたパフォーマンスを示していることがわかります。 -Gradient-262k (32.57) と Claude 2 (33.96) を指示します。さらに、新しいモデルのスコアは、Qwen2-72B-Instruct によって得られた最高スコア 34.88 に非常に近いです。全体として、Nvidia の新しいモデルは非常に競争力があります。
3. トークン数が 32K 以内の中長コンテキストの評価
表 3 は、コンテキスト内のトークン数が 32K 以内の場合の各モデルのパフォーマンスを示しています。
ご覧のとおり、GPT-4-Turbo-2024-04-09 のスコアは 51.93 で最高です。新しいモデルのスコアは 47.37 で、Llama-3-70B-Instruct-Gradient-262k よりは高くなりますが、Qwen2-72B-Instruct よりは低くなります。その理由は、Qwen2-72B-Instruct の事前トレーニングでは 32,000 トークンが大量に使用されるのに対し、チームが使用する継続的な事前トレーニング コーパスははるかに小さいためである可能性があります。さらに、すべての RAG ソリューションのパフォーマンスがロング コンテキスト ソリューションよりも悪いことがわかり、これらすべての最先端のロング コンテキスト LLM がコンテキスト ウィンドウ内で 32K トークンを処理できることが示されました。
4. ChatRAG ベンチ: トークン数が 4K 未満の短いコンテキストの評価
ChatRAG ベンチでは、コンテキストの長さが 4K トークン未満の場合のモデルのパフォーマンスを評価しました (表 4 を参照)。
新しいモデルの平均スコアは 54.81 です。この結果は Llama3-ChatQA-1.5-70B ほど良くはありませんが、GPT-4-Turbo-2024-04-09 や Qwen2-72B-Instruct よりは優れています。これは要点を証明しています。短いコンテキスト モデルを長いコンテキスト モデルに拡張するにはコストがかかります。これは、探求する価値のある研究の方向性にもつながります。それは、短いコンテキスト タスクのパフォーマンスに影響を与えずに、コンテキスト ウィンドウをさらに拡張する方法です。
5. RAG とロング コンテキストの比較
表 5 と 6 は、異なるコンテキスト長を使用した場合の RAG のパフォーマンスとロング コンテキスト ソリューションを比較しています。シーケンスの長さが 100K を超える場合、RAG 設定は En.Sum および En.Dia に対して直接使用できないため、En.QA および En.MC の平均スコアのみがレポートされます。
下流タスクのシーケンス長が 32K 未満の場合、新しく提案されたロングコンテキスト ソリューションが RAG よりも優れていることがわかります。つまり、RAG を使用するとコストは削減されますが、精度は犠牲になります。
一方、コンテキストの長さが 100K を超えると、RAG (Llama3-ChatQA-2-70B でトップ 5、Qwen2-72B-Instruct でトップ 20) は長いコンテキスト ソリューションよりも優れたパフォーマンスを発揮します。これは、トークンの数が 128K を超えると、現在最高のロングコンテキスト LLM であっても、効果的な理解と推論を達成することが困難になる可能性があることを意味します。この場合、チームは、より高い精度とより低い推論コストを実現できるため、可能な限り RAG を使用することを推奨しています。
以上がNVIDIA 対話モデル ChatQA はバージョン 2.0 に進化し、コンテキストの長さは 128K と記載されていますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。