RAGとは何ですか?
ナレッジベ-スの一連の技術は、学術界でRAG (Retrieval-Augmented Generation) という専門用語で知られています。これは情報検索メカニズムとAIモデルを組み合わせた革新的な手法です。
RAGには「外付けナレッジベ-ス」という一般的な呼び方もあります。「外付け」とは、AIの大規模モデルとは分離されているという意味です。分離されていない場合は、モデルの微調整となり、それは別の話になります。
RAGの原理
RAGの原理は実にシンプルです。モデルが回答を生成する際、直接生成するのではなく、まず知識ベースを参照してから生成します。簡単に言えば、持ち込み可の試験(RAG)と持ち込み不可の試験(直接生成する)の違いです。
プロセス的には、ほとんどのRAGは以下の3ステップに分けられます:
- ナレッジベ-スの作成
- データ入力(ファイルのアップロード)
- データ処理(分割+ベクトル化)
- データ保存(ベクトルデータベースに保存)
- ナレッジベ-スの照会
- データ検索(ベクトル検索)
- データ処理(再ランク付け)
- データ出力(関連性の高いものを選択)
- AIが生成した回答
簡単に言えば、巨大なデータを多くの小さな断片に分割し、AIが質問応答を行う際に、関連性の高い断片を検索し、それらの断片の内容に基づいて回答を生成します。これにより、AIは大量のデータを処理する必要がなく、少量のデータだけで済むため、速度が向上し、コストが削減されます。
しかし、明らかな欠点もあります。それは文脈を無視した解釈です。AIは部分的なデータしか得られず、全体像を把握できないため、これはRAGの本質的な弱点です。
RAGの鍵
RAGの本質は文脈を無視した解釈なので、どのように分割し、どのように選択するかが回答の質を決定します。このプロセス全体において、AIの役割は実際には非常に小さいです。重要なのは第1ステップと第2ステップ、つまりデータ処理とデータ検索です。
データ処理の鍵はスライスの方法にあります。302.AIは非常に豊富なスライス設定を提供しており、詳細はこの記事をご覧ください。
データ検索の鍵は関連性の高い内容をいかに見つけるかです。302.AIは二重検索メカニズムを採用しており、まずベクトル検索で粗い検索を行い、次に再ランク付けアルゴリズム(rerank)で精密な検索を行い、最後に大規模モデルに出力することで、精度を大幅に向上させています。
GraphRAG
GraphRAGは、マイクロソフトが提案した新しいRAG技術です。その原理は、データ入力段階でデータ処理段階にAIによるグラフ化処理を行い、AIにデータを理解させ、データの意味的な関連性を確立することで、検索精度を大幅に向上させることです。
GraphRAGの本質は、既存のデータを基にAIが新しいデータを生成することです。この新しいデータは知識グラフの構築によって実現され、情報のより良い組織化と保存だけでなく、AI検索時により智能的にデータ間の関係を識別し推論することを可能にします。この方法は情報検索の正確性と効率を効果的に向上させ、複雑なクエリを処理する際のシステムのパフォーマンスを向上させます。さらに、GraphRAGのグラフ化処理は、データ内の隠れたパターンやトレンドを発見するのに役立ち、ユーザーにより深い洞察と意思決定支援を提供します。
GraphRAGにも欠点がないわけではありません。第一に、データ入力プロセスでAI処理が必要なため、コストがかかります。第二に、従来のRAGよりも遅くなります。なぜなら、グラフ検索のプロセスがより複雑になるからです。
302.AIは現在、GraphRAGのナレッジベ-ス接続とAPI接続を独占的に提供しており、コードはNano-GraphRAGをベースに開発され、よりライトウェイトになっています。
まとめ
ナレッジベ-スの原理は、AIが先に照会してから回答することです。そのため、関連性の高い断片をいかに検索するかがナレッジベ-スの最も核心的な部分となります。302.AIは従来のRAGとGraphRAGの2つのモードを提供しており、ニーズに応じて選択することができます。