概要
検索拡張生成(RAG)
Retrieval-augmented generation (RAG)
意味
生成前に、関連する外部情報を取得し、モデルに提供するパターン。
使用場面
回答が、現在の、プライベート、またはドメイン固有のドキュメントに依存する必要がある場合に、使用します。
活用例
質問に関連するポリシーのテキストを取得し、それらのテキストのみを使用して回答します。生成AIエンジニアリング
信頼できるドキュメントから検証可能なAI回答を構築するために使用される、取り込み、インデックス作成、検索、ランキング、基盤化、引用、およびRAGプロンプトパターンについて学習します。
19 件
概要
Retrieval-augmented generation (RAG)
生成前に、関連する外部情報を取得し、モデルに提供するパターン。
回答が、現在の、プライベート、またはドメイン固有のドキュメントに依存する必要がある場合に、使用します。
質問に関連するポリシーのテキストを取得し、それらのテキストのみを使用して回答します。取り込み
Chunking
ドキュメントを、インデックス化および検索できる小さな単位に分割します。
意味を維持しながら、検索を絞り込むために、チャンクの境界を選択します。
ハンドブックをセクションごとに分割し、各見出しと段落を一緒に保持します。インデックス
Embedding
テキストまたはその他のコンテンツのセマンティックな特徴を表す数値ベクトル。
厳密なキーワード一致を超えて、意味的な類似性を比較するために、埋め込みを使用します。
各ドキュメントチャンクと、ユーザーのクエリに対して、埋め込みを作成します。インデックス
Vector store
埋め込みデータを保存し、最近傍探索をサポートするシステム。
セマンティックインデックスと関連するドキュメントメタデータを管理するために使用します。
各チャンクベクトルを、ソースURL、タイトル、およびアクセススコープとともに保存します。検索
Similarity search
ベクトル表現が選択された距離尺度に基づいてどれだけ近いかに基づいて検索します。
クエリに関連する意味を持つ文章を見つけるために使用します。
クエリの埋め込み値に最も近い文章をベクトルストアで検索します。検索
Retriever
クエリに対して候補となるドキュメントまたはチャンクを選択するコンポーネント。
クエリの書き換え、フィルタ、検索方法、および結果の制限を組み合わせるように設定する。
レトリバーは、現在のユーザーがアクセスできるポリシーのチャンクを返します。検索
Top-k
次の段階で選択される、上位の検索結果の数。
証拠の網羅性と、ノイズおよびコンテキストの使用のバランスを考慮して調整します。
上位8個の候補を取得し、再ランキングして、最も優れた4個を保持します。検索
Metadata filter
日付、製品、言語、または権限などの属性に基づいて検索を絞り込む制約。
スコープとアクセス制御を強制するために、セマンティックランキングの前に使用します。
ユーザーが閲覧できる、2025年以降に公開された韓国語のドキュメントのみをフィルタリングする。検索
Hybrid search
語彙キーワード信号と意味的ベクトル信号を組み合わせた検索方法。
正確な識別子と概念的な類似性の両方が重要な場合に使用します。
エラーコードAB-104について、BM25キーワードの結果と埋め込み類似性を組み合わせます。順位付け
Reranking
取得された候補を関連性の順に並べ替える、2段階のモデルまたはルール。
より広範な候補セットを収集した後に、精度を向上させるために使用します。
20個の候補チャンクを再ランキングし、その中で最も優れた5個をジェネレーターに送信します。根拠のある回答
Grounding
生成された応答を、提供された証拠または取得した証拠と関連付ける。
不正確な主張を減らし、回答を監査可能にするために使用します。
取得されたポリシーの抜粋によってサポートされている主張のみに回答します。根拠のある回答
Citation
主張をサポートするソースを特定する参照。
読者が証拠を迅速に確認できるように、主張レベルで引用を添付します。
引用は、関連性のない証拠を指している可能性もあります。実際に主張を裏付けていることを確認してください。
各ポリシーに関する主張について、ドキュメントのタイトル、セクション、および直接のソースへのリンクを含めます。RAG プロンプトパターン
Query rewriting prompt
ユーザーのリクエストを、キーワード、セマンティック、ハイブリッド、またはフィルタリングされた検索に適した1つ以上のクエリに変換する指示。
意図を維持しながら、曖昧な、会話的な、未定義の、またはドメイン不一致の質問に使用します。
ユーザーの意図を無音で変更したり、サポートされていない事実を追加したり、アクセスフィルタを弱めたりしないでください。
ハイブリッド検索用に質問を書き換えます。元の意図を維持し、関連するドキュメントの用語を追加し、元の質問と、最大3つの書き換えられたクエリを返します。RAG プロンプトパターン
Grounded-answer instruction
事実の主張が、生成ステップに提供される取得された段落によって裏付けられる必要があることを要求するプロンプトルール。
回答が監査可能であり、サポートされていないモデルの知識が証拠として提示されるべきではない場合に、使用します。
提供された段落を使用して質問に答え、事実に基づく主張ごとにサポートソースIDを添付し、明確にラベル付けされた推論を分離します。RAG プロンプトパターン
Context-only answering
提供された検索コンテキストによって明示的にサポートされている情報のみに回答を制限する、厳密な生成ルール。
ポリシー、契約書、規制対象コンテンツ、または外部モデルの知識が不足を補うべきではないタスクに使用します。
このルールは、不十分、不完全、古い、または許可されていない検索結果を補償することはできません。
<retrieved_context>のみを使用します。コンテキストに答えが含まれていない場合は、既存の知識を使用するのではなく、insufficient_evidenceを返します。RAG プロンプトパターン
No-evidence response and abstention
取得された証拠が存在しない、不十分である、矛盾している、またはサポートの閾値を下回る場合に、定義されたフォールバック応答。
確信に基づく推測を防ぎ、ケースを明確化、別の検索試行、または人間のレビューにルーティングするために使用します。
回答を直接サポートする文章がない場合は、ステータスを insufficient_evidence に設定し、何が不足しているかを説明し、明確化のための質問を提案します。RAG プロンプトパターン
Citation format instruction
生成された回答で、ソース識別子がどこにどのように表示される必要があるかを定義するプロンプト契約。
アプリケーションやレビュアーが、一貫して検証できる、クレームレベルの参照を作成するために使用します。
引用の書式設定は、引用された箇所が主張を支持していることを証明するものではありません。 引用の正確性を別途検証してください。
サポートされている各文の後、取得したIDを[S1]形式で1つ以上引用する。IDを捏造したり、文をサポートしていないソースを引用したりしないでください。RAG プロンプトパターン
Retrieved-context synthesis
複数の取得されたテキストから補完的な証拠を組み合わせ、ソースの境界線を消去せずに、一貫性のある回答を生成します。
比較、要約、または複数の段落を必要とする多肢解答の質問に使用します。
質問ごとにセクションをグループ化し、重複を削除し、日付と範囲を保持し、次に、主張レベルのソースIDを使用して回答を合成します。RAG プロンプトパターン
Conflicting-source handling
取得されたソース間の矛盾を検出し、サイレントに1つを選択するのではなく、報告するプロンプトルール。
ドキュメントが、バージョン、日付、管轄区域、権威、または解釈が異なる可能性がある場合に使用します。
最新性だけでは必ずしも権威が決定されるわけではありません。ドメインの優先順位ポリシーを、プロンプトの内側または横に記述してください。
情報源が矛盾している場合は、各主張とその情報源、バージョン、日付をリストし、矛盾を特定し、明示的な権限ルールを適用するか、レビューを依頼します。検索品質と生成指示は一緒に設計および評価する必要があります。プロンプトは、欠落しているか許可されていない証拠を修正することはできません。
| ステージ | プロンプトの責任 |
|---|---|
| 取得前 | クエリを書き換え、拡張、フィルタリング、または分解する際に、意図を維持する |
| コンテキストアセンブリ | ソースID、バージョン、日付、権限、およびテキストの境界線をラベル付けします。 |
| 回答の生成 | 主張は証拠に限定し、引用形式を定義し、拒否動作を指定する。 |
| 生成後 | クレームのサポート、引用の正確性、競合、完全性、およびアクセスコンプライアンスを検証します。 |
いいえ。許可された証拠の範囲を減らしますが、回答は依然としてテキストを誤読したり、互換性のないソースを組み合わせたり、不正確な引用を付けたり、または不適切な検索に依存したりする可能性があります。検索の再現率、主張のサポート、引用の正確性、および拒否の動作を検証してください。
必要な主張を直接サポートする信頼できる情報がない場合、または証拠が定義された閾値を下回る場合、ソースが矛盾しているが権威ルールがない場合、または質問があまりにも曖昧で安全に取得できない場合は、控えめにします。構造化された理由と、次に役立つアクションを返します。
ユーザーまたは下流システムが主張を検証する必要がある場合、またはアプリケーションが元のソース識別子を保持し、引用されたすべての箇所がその主張を裏付けていることを検証する場合に「はい」とします。モデルは決してソースIDを捏造してはいけません。
クエリの拡張、分解、書き換え、検索、再ランキング、および累積コンテキストに関する公式アーキテクチャガイド。
オーケストレーションおよび生成プロンプルトテンプレート、実行時プレースホルダー、検索されたコンテキスト、クエリ、および引用出力指示に関する公式ドキュメント。
生成された主張が提供された事実によって裏付けられているかどうかを測定し、サポートまたは矛盾する証拠を特定するための公式ガイド。
指示、制約、出力スキーマ、タスク分解、推論、および検証パターンをレビューします。
収集した証拠と会話の状態を、予算内で収集、整理、順序付け、圧縮、キャッシュし、追跡します。
groundedness(根拠の有無)、引用の質、完全性、回帰、レイテンシ、およびコストを測定します。
間接的なプロンプトインジェクション、不正なデータアクセス、および危険な出力から検索パイプラインを保護します。