RAG(検索拡張生成)
RAG(検索拡張生成) とは何ですか?
RAG(検索拡張生成)Retrieval-Augmented Generation:推論時に知識ストアから関連ドキュメントを取得し、プロンプトに差し込むことで LLM の応答に裏付けを与えるパターン。
RAG は外部検索ステップを組み合わせることで大規模言語モデルを補強します。推論時、ユーザーの問い合わせを埋め込みに変換し、ベクトルまたはキーワードインデックスから関連性の高いドキュメントを取得して、それらをプロンプトに連結します。これにより LLM はその内容を根拠に推論したり引用したりできます。RAG は幻覚(ハルシネーション)を抑え、再学習なしにプライベートデータや最新情報を活用できますが、新たな攻撃面も生みます。文書を介した間接プロンプトインジェクション、コーパスやベクトルストアへのデータポイズニング、モデル出力経由の情報漏洩、マルチテナント共有時のアクセス制御ミス、エンベディング反転攻撃などです。堅牢な RAG パイプラインでは、信頼できないコンテンツを隔離し、ドキュメント単位のアクセス制御を適用し、入力をサニタイズし、検索結果のスニペットを監視し、出力にもガードレールを設けます。
● 例
- 01
企業向けチャットボットがベクトルストアからポリシー PDF を取得して人事系の質問に回答する。
- 02
悪意ある wiki ページの隠し命令が、間接プロンプトインジェクションで RAG アシスタントを乗っ取る。
● よくある質問
RAG(検索拡張生成) とは何ですか?
Retrieval-Augmented Generation:推論時に知識ストアから関連ドキュメントを取得し、プロンプトに差し込むことで LLM の応答に裏付けを与えるパターン。 サイバーセキュリティの AI / ML セキュリティ カテゴリに属します。
RAG(検索拡張生成) とはどういう意味ですか?
Retrieval-Augmented Generation:推論時に知識ストアから関連ドキュメントを取得し、プロンプトに差し込むことで LLM の応答に裏付けを与えるパターン。
RAG(検索拡張生成) はどのように機能しますか?
RAG は外部検索ステップを組み合わせることで大規模言語モデルを補強します。推論時、ユーザーの問い合わせを埋め込みに変換し、ベクトルまたはキーワードインデックスから関連性の高いドキュメントを取得して、それらをプロンプトに連結します。これにより LLM はその内容を根拠に推論したり引用したりできます。RAG は幻覚(ハルシネーション)を抑え、再学習なしにプライベートデータや最新情報を活用できますが、新たな攻撃面も生みます。文書を介した間接プロンプトインジェクション、コーパスやベクトルストアへのデータポイズニング、モデル出力経由の情報漏洩、マルチテナント共有時のアクセス制御ミス、エンベディング反転攻撃などです。堅牢な RAG パイプラインでは、信頼できないコンテンツを隔離し、ドキュメント単位のアクセス制御を適用し、入力をサニタイズし、検索結果のスニペットを監視し、出力にもガードレールを設けます。
RAG(検索拡張生成) からどのように防御しますか?
RAG(検索拡張生成) に対する防御は通常、上記の定義で述べたとおり、技術的統制と運用上の実践を組み合わせます。
RAG(検索拡張生成) の別名は何ですか?
一般的な別名: 検索拡張生成, Grounded generation。
● 関連用語
- ai-security№ 1198
ベクトルデータベースのセキュリティ
AI システムが利用するベクトルデータベースを、データ漏洩、ポイズニング、テナント間混入、運用・サプライチェーン侵害から守るためのコントロール群。
- ai-security№ 376
エンベディング攻撃
AI の埋め込みベクトルを対象に、元の入力やその意味を復元・改ざん・悪用する攻撃の総称。エンベディング反転や類似度ポイズニングなどを含む。
- ai-security№ 866
プロンプトインジェクション
プロンプトに敵対的なテキストを紛れ込ませて LLM の元の指示を上書きし、安全策を無視させたり攻撃者が望む動作を実行させたりする攻撃。
- ai-security№ 031
AI モデルカード
2018 年に Margaret Mitchell らが提案した、機械学習モデルの想定用途、訓練データ、性能、限界、倫理的考察を記述する標準的なドキュメント。
- ai-security№ 281
データポイズニング
敵対者が学習データを注入・改ざん・再ラベル付けし、得られるモデルが誤動作したり隠れたバックドアを含んだりするように仕向ける機械学習システムへの攻撃。