RAG と生成 AI の成功を加速する
チャットボットなどの大規模言語モデル (LLM) アプリケーションは、業界全体に多大な利点をもたらしています。企業は LLM を使用して、運用コストの削減、従業員の生産性の向上、よりパーソナライズされた顧客体験を実現しています。
皆様のような企業は、この革新的なテクノロジーを競争上の優位性に変えようと競い合っていますが、その大きな部分としてビジネスに特化した結果を AI モデルが提供できるように、既製の LLM を組織のデータに合わせてカスタマイズする必要があります。しかし、モデルの微調整に必要とされるコスト面および時間的な投資は、多くのイノベーターにとって、導入をためらわせる大きな障害となる可能性があります。
こういった障害を克服するため、検索拡張生成 (RAG) では、LLM のカスタマイズに対して、よりコスト効率の高いアプローチを提供しています。RAG では、微調整することなく独自データをモデルに学習させて補強できるようにすることで、ビジネスや顧客に合わせた LLM アプリケーションを迅速に立ち上げることができます。RAG アプローチでは、再トレーニングや微調整を必要とする代わりに、企業固有の独自データに基づいて構築された、キュレーション済みの外部ナレッジベースに既製の LLM を接続することが可能です。このナレッジベースは、組織固有のコンテキストと情報を、モデルの出力に反映させます。
この記事では、ハードウェアとソフトウェアの基盤の選択から、ナレッジベースの構築、本番環境におけるアプリケーションの最適化まで、RAG 実装の主要コンポーネントを設定する方法について説明します。また、パイプラインの各フェーズで最大限の処理能力と効率を実現できるよう役立つツールとリソースも共有します。
RAG は、どのような場面で適切なアプローチなのか
パイプラインのビルディング・ブロックの評価を始める前に、RAG または微調整が自社の LLM アプリケーションに最適かどうかを検討することが重要です。
どちらのアプローチも、基礎 LLM から開始し、モデルをゼロからトレーニングするより、カスタム LLM 実現までの道のりを短縮します。基礎モデルはトレーニング済みであるため、大規模なデータセットへのアクセス、データ・エキスパートのチーム、トレーニング用の追加のコンピューティング・パワーは必要ありません。
ただし、基礎モデルを選択した後にビジネスに合わせたカスタマイズが必要です。それにより、実際の課題とニーズに対応できる結果をモデルが生成できるようになります。微調整に投資する時間もコストもない場合、RAG は LLM アプリケーションに最適なアプローチとなるでしょう。RAG はまた、AI の幻覚リスクを軽減し、出力のソースを提供して説明可能性を高めることができるほか、非公開のデータベースに機密情報を安全に保持できるという、セキュリティー上の利点もあります。
パフォーマンスとセキュリティーを優先したハードウェアを選択する
RAG パイプラインには、多くの計算負荷の高いコンポーネントが含まれており、エンドユーザーは低レイテンシーのレスポンスを期待しています。つまり、エンドツーエンドでパイプラインをサポートするには、コンピューティング・プラットフォームの選択が最も重要な決定の 1 つになります。
インテル® Xeon® プロセッサーを使用すると、単一のプラットフォームで完全な RAG パイプラインを実行および管理できるため、開発、導入、メンテナンスが効率化します。インテル® Xeon® プロセッサーには統合 AI エンジンが組み込まれており、CPU 上でデータの取り込み、検索、AI 推論など、パイプライン全体の主要な操作を高速化できます。追加のハードウェアは不要です。
最高のスループットまたは最低のレイテンシーを必要とする RAG アプリケーションの場合、インテル® Gaudi® AI アクセラレーターを統合することで、高いパフォーマンス要求を高いコスト効率で満たすことができます。インテル® Gaudi® アクセラレーターは、推論を高速化することを目的として設計されているため、RAG 推論では CPU やその他のアクセラレーターを置き換えることさえ可能です。
企業で機密データを扱う際には RAG を使用することが多いため、開発中および本番環境でのパイプラインの保護が非常に重要です。インテル® Xeon® プロセッサーは、インテル® ソフトウェア・ガード・エクステンションズ (インテル® SGX) およびインテル® トラスト・ドメイン・エクステンションズ (インテル® TDX) という内蔵セキュリティー技術を使用して、コンフィデンシャル・コンピューティングとデータの暗号化によりパイプライン全体で安全な AI 処理を実現します。
導入すると、エンドユーザーの需要の増加に伴い、アプリケーションのレイテンシーが高くなる可能性があります。インテルのハードウェアは非常にスケーラブルであるため、使用量の増大に合わせてインフラストラクチャー・リソースをすばやく追加できます。また、最適化を統合して、データのベクトル化、ベクトル検索、LLM 推論など、パイプライン全体の主要な操作をサポートすることもできます。
RAG のパフォーマンスは、インテル® Tiber™ デベロッパー・クラウドを介してインテル® Xeon® プロセッサーおよびインテル® Gaudi® AI プロセッサー上でテストできます。
RAG フレームワークを使用して、AI ツールチェーンを容易に統合する
多くのコンポーネントを接続するために、RAG パイプラインではデータの取り込み、ベクトル・データベース、LLM など向けに複数の AI ツールチェーンを組み合わせています。
自社の RAG アプリケーションの開発を始めるにあたり、LangChain、インテルラボの fastRAG、LlamaIndex などの統合 RAG フレームワークで開発を効率化することができます。RAG フレームワークでは、パイプライン全体でシームレスに AI ツールチェーンを統合する API を提供していることが多く、実環境のユースケース向けにテンプレート・ベースのソリューションも提供しています。
インテルは、インテルのハードウェアにおけるパイプラインの全体的なパフォーマンスを最大限に高めるために、最適化を提供しています。例えば fastRAG は、インテル® Extension for PyTorch と Optimum Habana を統合し、インテル® Xeon® プロセッサーとインテル® Gaudi® AI アクセラレーターで RAG アプリケーションを最適化します。
また、インテルはインテルのハードウェアのパフォーマンスを向上させる LangChain の最適化にも貢献しています。LangChain とインテル® Gaudi® 2 AI アクセラレーターを使用して、このワークフローを簡単に設定する方法はこちら
ナレッジベースの構築
RAG により、企業はビジネスと顧客に関する重要な独自情報を、LLM に供給することができます。このデータは、自分で構築できるベクトル・データベースに保存されます。
情報ソースの特定
RAG を使用して、自社に関する従業員の質問に答えるのに役立つ AI パーソナル・アシスタントを導入する状況を想像してみてください。製品情報、会社のポリシー、顧客データ、部門固有のプロトコルなど LLM に重要なデータを供給することが可能です。従業員は RAG を採用したチャットボットに質問して組織固有の回答を得ることができるため、より迅速なタスク完了に役立つほか、戦略的思考に集中できるようになります。
もちろん、ナレッジベースは、業界やアプリケーションによって異なります。製薬会社であれば、検査結果と患者の病歴のアーカイブを使用する場合があります。製造元は、機器の仕様と過去のパフォーマンス・データを RAG ベースのロボットアームに供給することで、潜在的な機器の問題を早期に検出できるようになります。金融機関なら、チャットボットがパーソナライズされた金融アドバイスを提供できるように、LLM を独自の金融戦略やリアルタイムの市場トレンドに接続したいと考えるかもしれません。
最終的に、ナレッジベースを構築するには、LLM にアクセスさせたい重要なデータを収集する必要があります。このデータは、PDF、ビデオの文字起こし、電子メール、プレゼンテーション・スライド、さらにはウィキペディアのページやスプレッドシートといった情報源の表形式データなど、多様なテキストベースのソースから得ることができます。RAG はまた、複数の AI モデルを組み合わせて、音、画像、ビデオなど、あらゆるモダリティーのデータを処理するマルチモーダルの AI ソリューションもサポートしています。
例えば、販売店は主要なイベントの監視映像を迅速に検索できるように、マルチモーダルの RAG ソリューションを使用することがあるでしょう。これを行うために、販売店はビデオ映像のデータベースを作成し、「ポケットに何か入れている人」などのテキストプロンプトを使用して関連するクリップを特定します。何百時間ものビデオを手動で検索する必要はありません。
データの準備
効率的に処理できるようデータを準備するには、まず、重複した情報とノイズを除去するなど、データをクリーンアップしてから、管理可能なチャンクに分割する必要があります。データのクリーンアップに関するヒントは、こちらをご覧ください
次に、埋め込みモデルと呼ばれる AI フレームワークを使用し、モデルがより大きな文脈を理解できるように、データをベクトル (テキストの数式表現) に変換する必要があります。埋め込みモデルは、Hugging Face のオープンソース埋め込みモデルのリーダーボードで紹介されているように、サードパーティーからダウンロードできます。また、Hugging Face API 経由で、RAG フレームワークにシームレスに統合することも一般的に可能です。ベクトル化をしたら、データをベクトル・データベースに保存できるため、モデルにより効率的に検索できます。
自社のデータの量と複雑さに応じて、データの処理と埋め込みの作成は LLM 推論と同様に計算負荷が高くなる可能性があります。インテル® Xeon® プロセッサーは、追加のハードウェアを必要とせずに、CPU ベースのノード上ですべてのデータの取り込み、埋め込み、ベクトル化を効率的に処理できます。
さらに、インテル® Xeon® プロセッサーは、量子化埋め込みモデルと組み合わせてベクトル化プロセスを最適化できるため、非量子化モデルと比較してエンコードのスループットが最大 4 倍向上します1。
クエリーとコンテキスト検索の最適化
ユーザーが RAG ベースのモデルにクエリーを送信すると、検索メカニズムが、関連する外部データのナレッジベースを検索し、LLM の最終出力を強化します。このプロセスはベクトル検索操作に依存し、関連性が最も高い情報を検索して順位付けします。
ベクトル検索操作は、インテル® Xeon® プロセッサーで高度に最適化されています。インテル® Xeon® プロセッサーに内蔵されたインテル® アドバンスト・ベクトル・エクステンション 512 (インテル® AVX-512) は、ベクトル検索の主要な操作を強化し、命令の数を減らし、スループットとパフォーマンスを大幅に向上させます。
また、インテルラボによるスケーラブル・ベクトル検索 (SVS) ソリューションを活用すれば、ベクトル・データベースのパフォーマンスを向上できます。SVS は、インテル® Xeon® CPU のベクトル検索機能を最適化し、検索時間とパイプラインの全体的パフォーマンスを向上させます。
LLM レスポンス生成の最適化
ベクトルストアからの追加データを準備すると、LLM は、コンテキストに合った正確なレスポンスを生成できるようになります。これには、RAG パイプラインで最も計算負荷の高いフェーズである、LLM 推論が含まれます。
インテル® Xeon® プロセッサーは、内蔵の AI アクセラレーターであるインテル® アドバンスト・マトリクス・エクステンション (インテル® AMX) を使用し、より効率的なマトリクス操作とメモリー管理の改善を可能にし、推論パフォーマンスを最大限に高めることができます。中規模および大規模の LLM では、インテル® Gaudi® AI アクセラレーターを使用し、専用に開発された AI のパフォーマンスと効率性で推論を高速化します。
また、インテルは、ハードウェア・リソース上の LLM 推論を最大限に高めるために、いくつかの最適化ライブラリーを提供しています。インテル® oneAPI ライブラリーは、PyTorch や TensorFlow など人気の高い AI フレームワーク向けにローレベルの最適化を提供しており、インテルのハードウェアで最適化されている、使い慣れたオープンソース・ツールを使用することができます。さらに、インテル® Extension for PyTorch などの拡張機能を追加することで、高度な量子化推論手法を可能にし、全体的なパフォーマンスを向上させます。
アプリケーションを本番環境に移行したら、エンドユーザーの需要に対応するために、最新 LLM へのアップグレードを望まれるかもしれません。RAG には微調整がなく、ナレッジベースがモデル外に存在するため、LLM を新しいモデルに素早く置き換えて、より高速な推論をサポートすることが可能です。
インテルで RAG 導入を高速化
RAG は、カスタマイズした LLM アプリケーションを迅速かつコスト効率良く導入するのに役立ちます。微調整は不要です。適切なビルディング・ブロックを使用することで、最適化された RAG パイプラインをわずか数ステップで設定できます。
AI イニシアチブの実施に伴い、RAG パイプラインの各フェーズを強化するインテル® AI ポートフォリオを活用してください。インテルのハードウェアおよびソフトウェア・ソリューションは、お客様の成功を加速させるために開発されています。
開発者向けチュートリアル: インテル® Gaudi® 2 における RAG
インテル® Gaudi® 2 AI プロセッサーで RAG アプリケーションを導入するためのコード例を含む、ステップバイステップ・ガイドを参考にしてください。