1.RAG(Retrieval-Augmented Generation)とは
検索拡張生成(Retrieval Augmented Generation)」の略
生成AIはRAGが外部データベースなどから情報を検索し、
検索結果に基づいた回答を生成する技術
最新情報や独自の情報に基づいた、正確で信頼性の高い回答を生成する
事実に基づかない情報(ハルシネーション)を抑制する効果が期待できる
2.LLM(Large Language Models)との違い
LLM(大規模言語モデル)は内部の学習データのみに基づいて回答を生成する
対してRAGは、外部のデータソースから関連情報を検索・取得し、
それをLLMが利用して回答を生成する技術
LLMの欠点
知識の更新ができない
学習済みの情報しか知らない
最新情報や専門的な情報には対応できない
幻覚(ハルシネーション)の問題
自信満々に間違った情報を話すことがある
特に具体的な事実に関して信頼性に欠ける
情報ソースの透明性がない
どこからその情報を得たのかわからない
RAGの長所
最新の情報を使える
自分のデータを追加できる
必要な情報を都度更新できる
より正確な回答
与えられた情報源に基づいて回答する
幻覚(ハルシネーション)を減らせる
情報源の明確化
どの情報を参照したか明確になる
回答の根拠が示せる
3.RAGの仕組み
知識ベースを準備する
必要な情報(文書やデータ)を事前に準備し、
小さな単位に分けて、コンピュータが理解しやすい形に変換して保存する
「知識ベース」となる
情報を検索する
質問の内容に関連する情報を知識ベースから探し出す
コンピュータが理解しやすい形に変換して、似ている情報を見つけ出す
回答を生成する
AIが検索で見つけた関連情報を参考にし、質問に対する回答を作成する
4.RAGの欠点
知識ベースの品質に依存する(記録の質)
記録が曖昧だとAIは正確な情報を得られない
重要な情報が書き忘れられていると、その情報は永久に欠落する
矛盾する情報があるとAIは混乱する
検索精度の課題(情報の取りこぼし)
単純な言葉だけで探すと、関連する情報を見落としてしまう
単純な言葉だけで探すと、関係ない情報を拾ってしまう
文脈を正確に理解できず、的外れな情報を関連情報として抽出してしまう
コストとリソースの問題(デジタル化のコスト)
全ての情報をデジタル化する手間と時間
データを整理・更新し続けるための人的リソース
ベクトルDBの維持管理コスト
大量のデータを処理するための計算コスト
レスポンス速度(即答性)
すぐに答えが欲しい時でも、手順に沿った処理が必要
従来のAIと比べて、応答時間が長くなりがち
システムが複雑(保守性)
データベース、検索エンジン、LLMなどを管理する必要がある
各要素のバージョン管理や互換性の維持が必要
トラブル発生時の原因特定が難しい
データの更新と鮮度(情報更新)
新しい情報を追加する度に、ベクトル化やインデックス更新が必要
リアルタイムの更新が難しい
古い情報の削除や更新の判断が難しい
セキュリティとプライバシー保護(機密情報管理)
機密情報の管理が必要
他者の情報と混ざらないための注意
アクセス権限の適切な管理
カスタマイズの可否(特性への対応)
各特性に応じた情報の重み付けが難しい
地域性や季節性を適切に反映させることが難しい
例外的なケースへの対応が難しい