Moshe_Wasserblat
所属: インテル
2025年4月29日
インテルラボのリサーチャー Moshe Wasserblat、Daniel Fleischer、Moshe Berchansky が RAG-FiT と fastRAG を共同開発。SetFit については、インテルラボのリサーチャー Daniel Korat、Oren Pereg、Moshe Wasserblat が Hugging Face と UKP Lab の研究パートナーと共同で取り組みました。
https://community.intel.com/t5/user/viewprofilepage/user-id/234722
https://www.intel.co.jp/content/www/jp/ja/research/overview.html
<注目ポイント>
•インテルラボは、生成 AI モデル内の検索拡張生成 (RAG) を最適化する RAG-FiT や fastRAG ライブラリー、限られたラベル数でテキスト分類を実行する SetFit ツールなど、オープンソースの AI フレームワークを提供することで、AI 開発者コミュニティーを支援。
•この 3 タイプのフレームワークはすべて、Apache 2.0 ライセンスのもとで利用可能。コードと関数のほか、包括的なサンプルや簡単にインストールできる命令セットなどのリソースを提供します。
•3 つのライブラリーは、インテル® ハードウェアへの効率的な実装を目的に設計。オープンソース・ライブラリー Optimum Intel はさらに、モデルを高速化する複数の手法を提供します。
https://github.com/IntelLabs/RAG-FiT
https://github.com/IntelLabs/fastRAG
https://github.com/huggingface/setfit
生成 AI は今、企業のビジネス運営方法を変えつつあります。数々の進歩によって、組織の生産性向上、新製品の開発、運用の効率化が推進されてきました。インテルラボはこの 3 年の間に、生成 AI モデル内の検索拡張生成 (RAG) を最適化する RAG-FiT や fastRAG ライブラリー、限られたラベル数でテキスト分類を実行する SetFit ツールなど、オープンソースの AI フレームワークをリリースし、AI 開発者コミュニティーをサポートしてきました。この 3 タイプのフレームワークはすべて、Apache 2.0 ライセンスのもとで利用可能です。コードと関数のほか、AI アプリケーションを効率的に構築 / 実装できるリソースを提供します。
https://github.com/IntelLabs/RAG-FiT
https://github.com/IntelLabs/fastRAG
https://github.com/huggingface/setfit
2024年にリリースした RAG-FiT は、データの作成、学習、推論、検証を 1 つのワークフローに統合し、大規模言語モデル (LLM) のトレーニングと評価に用いるデータ拡張データセットの作成をアシストする RAG 実行環境です。2023年に登場した fastRAG は、リサーチャーや開発者を対象とし、RAG パイプラインを効率化してデータ検索からインデックス作成までのレイテンシー低減とスループット拡大を図る、包括的なツールキットとして設計されました。そして最後の SetFit は、パートナーの Hugging Face と UKP Lab と共同開発され、2022年の公開以来、開発者コミュニティーから広く支持を得ており、ほぼラベル不要で高精度のテキスト分類を可能にする、実証済みのソリューションを提供します。AI 開発者コミュニティーから広く採用され、Hugging Face でのダウンロード数は 1 カ月に 25 万にも上るほどです。このハブには約 2,000 ほどの SetFit モデルがありますが、1 日に平均 4 モデル増えている状況を受けて、この数字は伸び続けてます。
https://huggingface.co/
https://www.informatik.tu-darmstadt.de/ukp/ukp_home/index.en.jsp
<モデル精度の向上と業界固有データの取得に RAG を活用>
その強力な特性にもかかわらず、LLM には特有の限界があり、もっともらしく聞こえるけれども不正確で無意味な回答を出力したり、事実精度の不足、トレーニング後に最新情報へ更新できない、長文コンテキストの中で関連性を見落とすといった課題が残されています。また、企業や業界に固有のデータを取り込まなければ、ビジネスニーズに最適な価値を提供できないことも少なくありません。
検索拡張生成 (RAG) は、AI の出力を対象の市場に合わせて、ビジネスインサイトを安全に生成できるカスタマイズの LLM を作成することで、このギャップを解消します。RAG が LLM のパフォーマンスを拡大できるのは、検索メカニズムによって外部の情報を取り込むからです。ユーザーがクエリーを入力すると、RAG はカスタムビルドされた複数のナレッジベースからコンテキストに合った情報を検索することができ、このナレッジベースは多くの場合、医療記録、事業計画、社内の API ドキュメント、顧客履歴といった、企業の機密データをもとに構築されます。ユーザーのクエリー入力、検索、コンテキストの考慮までの一貫したフローによって、RAG パイプラインが成り立ちます。
このプロセスでは、モデル外部のナレッジベースから特定のデータを取り込むことで、知識の限界の問題を解消しています。その結果、ハルシネーションを抑制し、生成されたコンテンツの関連性を高め、根拠に基づく情報を提供したうえで、コスト効率の向上につなげることが可能です。また最近の研究では、RAG に特化して LLM をファインチューニングすることで、大規模な独自モデルを越える最先端のパフォーマンスを達成できるとの成果が示されました。まとめると、RAG はテキストや動画の検索精度を向上させ、ダイナミックかつインタラクティブなドキュメント検索を可能にし、さらにはチャットボットが詳細なドキュメントを参照できるようにする手法と言えます。
<RAG-FiT: 迅速なプロトタイプ作成と試行>
RAG-FiT はエンドツーエンドの試行環境として機能する Python ベースのフレームワークです。リサーチャーや開発者は短期間で異なる RAG 構成のプロトタイプを作成してテストを重ねることができます。このフレームワークを活用すれば、データの選択から、集約、フィルタリング、検索、テスト処理、ドキュメント・ランキング、few-shot (少数サンプル) 生成、テンプレートでのプロンプト設計、ファインチューニング、推論、評価まで、簡単に試行できます。
図 1 .RAG-FiT フレームワークではデータ拡張モジュールが RAG インタラクションを専用データセットに格納し、このデータセットを学習 / 推論 / 評価に使用。
このライブラリーは、データ作成、学習、推論、評価の 4 つのモジュールを軸に構成されています。RAG-Fit ではこれらのモジュールが 1 つのワークフローに統合されているため、企業や専用のナレッジベースを使用して、データセットの生成と RAG モデルの学習処理を簡単に実行できます。このライブラリーは、パラメーター効率ファインチューニング (PEFT) によって、モデル学習のためのデータ作成を補助します。PEFT を適用すればモデル内のパラメーターの一部のみをファインチューニングでき、モデルの重みとバイアスすべてを再トレーニングする必要はありません。
RAG-FiT ライブラリーは、検索精度と生成品質を評価する RAG 固有のさまざまな指標によって、LLM パフォーマンスが向上しているか測定可能です。インテルラボのリサーチチームは、RAG-FiT フレームワークの有効性 (以前は RAG Foundry と呼ばれていた指標) を実証するため、RAG 構成を変えて Llama 3.0 モデルと Phi-3 モデルの拡張とファインチューニングを行いました。その結果、TriviaQA、ASQA、PubmedQA のナレッジ集約型 QA データセットすべてで一貫した改善が見られています。
<fastRAG: RAG パイプラインの最適化>
fastRAG は、効率的な最適化 RAG パイプラインを構築する、最先端の LLM と情報検索が組み込まれたリサーチ・フレームワークです。Haystack と完全互換性があり、インテル® ハードウェアへの効率的な実装を目的に設計された、斬新で効率的な RAG モジュールが含まれ、同等の精度を維持しながらレイテンシー低減を実現します。fastRAG GitHub リポジトリーでは、フレームワークで使用できる各コンポーネントに関する豊富なドキュメント、包括的なサンプル集、最適化済みバックエンドのインストール手順などが提供されています。このフレームワークは PyTorch のような広く利用されているディープラーニング・フレームワークに最適化された拡張機能も使用可能です。このような拡張機能の 1 つに Optimum Intel オープンソース・ライブラリーがあり、Hugging Face Transformers ライブラリーを拡張します。
fastRAG ライブラリーは Q&A、要約、対話型システム、コンテンツ制作などの生成タスクに活用できると同時に、企業や専用のナレッジベースを使用して情報検索コンポーネントで LLM 出力にアンカーを付けることも可能です。1 つのアプリケーションは、多くの場合、ナレッジベース、検索、ランク付け、読み取り (クエリーと検索したドキュメントを読み取って、出力を生成する LLM) で構成される、1 つのパイプラインで表現されます。リサーチャーは複数の異なるアーキテクチャーとモデルを試し、結果をベンチマーク測定してパフォーマンスやレイテンシーを評価できます。
また fastRAG は、テキストや画像のような非構造化データの処理に有効なベクトル型データベースに対応しています。自然言語処理とマシンラーニングの進歩とともに、RAG の情報検索は埋め込みによる密度の高い表現に移行してきました。埋め込みモデルは、検索、リランク、クラスター化、分類などの幅広いアプリケーションに適応します。ナレッジベースの構築には、データの取り込み→ブロック内に処理→埋め込みモデルを経由してセマンティックな関連性を捉えるベクトル表現のデータブロックへの変換、というプロセスが必要です。その結果ベクトル化されたデータは拡張可能なベクトル型データベースに格納され、効率的な検索が可能になります。スパース性から密度の高い表現へ移行したことで、検索システムのパフォーマンスと精度は大幅に向上しました。
<SetFit: プロンプト不要の効率的な few-shot 学習>
事前トレーニング済み言語モデル (PLM) を使用する few-shot (少数サンプル) 学習は、ラベル数が限られた、またはラベルの付いていないデータを処理する期待のソリューションとして登場しました。十分なラベル付けのないデータセットでモデルをトレーニングした場合、オーバーフィッティング (過学習) につながりかねず、モデルがパターンを識別する代わりにトレーニング・データを記憶してしまう可能性があります。これでは初見データの正則化がうまくいかず、実環境のアプリケーションに適応するにはモデルの信頼性が足りません。
プロンプト不要の効率的な SetFit フレームワークは、Sentence Transformers (ST) モデルを few-shot (少数サンプル) でファインチューニングする、限られたラベル数でのテキスト分類に最適です。対照シャム法 (2 つの同一ネットワークがセンテンスのペア間のセマンティックな類似性 / 相違点を比較) によって、テキスト形式サンプルの少数ペアで事前トレーニングした ST モデルを最初にファインチューニングすることで SetFit は機能します。その結果、モデルはリッチテキストの埋め込みを生成し、この埋め込みをテキスト分類ヘッドのトレーニングに使用して、モデルの出力を分類タスクに適したフォーマットに変換します。
このシンプルなフレームワークには、プロンプトもバーバライザーも必要ありません。大規模 PLM がなくても高い精度を実現します。few-shot ファインチューニングを行う現行の手法には、根本にある言語モデルに適したフォーマットへサンプルを変換するために手動で作成したプロンプトやバーバライザーが必要ですが、SetFit ではリッチな埋め込みを少数のラベル付きテキストサンプルから直接生成することで一切のプロンプトを排除しました。例えば SentEval ベンチマークの Customer Reviews (CR) センチメント・データセットの場合、SetFit はラベル付きの 8 サンプルだけで、合計 3,000 サンプルの学習セットと同等のファインチューニング精度を達成しています。比較対象は 3 倍も規模の大きいファインチューニング済みモデルであるにもかかわらずです。
さらに、SetFit は大規模モデルではなくても精度が高く、そのため多くの場合、学習と推論の実行速度は 1 桁 (あるいはそれ以上) 高速になります。多言語対応フレームワークのため、多言語チェックポイントをファインチューニングするだけで、複数の言語ごとのテキスト分類が可能です。
Optimum Intel で SetFit モデルを最適化すれば、インテル® Xeon® CPU 上で実行する SetFit の推論処理を 7.8 倍高速化できます。Optimum Intel オープンソース・ライブラリーには、低ビット量子化、モデルの重みプルーニング、蒸留、ランタイム最適化など、モデルを高速化するいくつもの手法が用意されています。SetFit モデルにトレーニング後のシンプルな量子化ステップを実行すれば、大幅なスループット拡大が可能になります。
関連情報:
インテル® Gaudi® 3 アクセラレーター
https://www.intel.co.jp/content/www/jp/ja/products/details/processors/ai-accelerators/gaudi.html
インテル® Xeon® プロセッサーとは?
https://www.intel.co.jp/content/www/jp/ja/data-center/what-is-xeon-processor.html
インテル エンタープライズ AI
https://www.intel.co.jp/content/www/jp/ja/products/docs/accelerator-engines/enterprise-ai.html
インテル® デベロッパー・ゾーン
https://www.intel.co.jp/content/www/jp/ja/developer/topic-technology/artificial-intelligence/overview.html