プライベートRAGの回答で引用が繰り返される原因とは?

エヴァ・ウォン は テクニカルライター であり ZimaSpaceの常駐ティンカーでもあります。 生涯のオタクであり、 ホームラボとオープンソースソフトウェアに情熱を持っています。彼女は複雑な技術的概念をわかりやすく、 実践的なガイドに翻訳することを専門としています。エヴァはセルフホスティングは楽しくあるべきで、怖がるものではないと信じています。彼女のチュートリアルを通じて、コミュニティが ハードウェアのセットアップを解明する手助けをしています。初めてのNAS構築からDockerコンテナの習得まで。

RAGの引用が繰り返される原因は、通常、重複した証拠単位、または同じソースを共有する複数の主張を引用フォーマッターが統合できないことにあります。

プライベートナレッジベースでは、同じマニュアルから重複する3つのチャンク、1つのPDFの同期されたコピー2つ、または定型文を共有する別々のページが取得されることがあります。生成器が各コンテキスト項目を個別に引用し、レンダラーがソースが現れるたびに新しい引用番号を割り当てる場合もあります。そのため、回答文自体が正しくても、重複は取り込み、検索、主張の対応付け、表示のいずれの段階でも始まる可能性があります。

重複およびオーバーラップするチャンクが証拠の繰り返しを生む

チャンクのオーバーラップは、文がコンテキストから切り離されないよう、境界部分のテキストを意図的に繰り返します。類似したファイル、OCRの違い、エクスポート、古いバージョンによって、異なるレコードIDを持つ、ほぼ同一の証拠がさらに増えることもあります。

チャンクレベルの重複排除に関する研究では、検索前に完全に重複するチャンクを測定し、バイト単位の繰り返しが通常のインデックス作成をすり抜ける理由を示しています。その兆候は、同じコンテンツハッシュを持つ、または大きく重複する範囲を持つ複数の取得レコードです。この違いは、後の家庭内テストでも確認できます。

ファイル名だけを基準に重複排除すると、コピーされたコンテンツを見逃します。一方、完全一致のハッシュでは、OCRや書式の違いを検出できません。プライベートシステムには、1つの大まかな重複フラグではなく、文書の系譜、チャンクの識別情報、ほぼ重複するグループを別々に管理する仕組みが必要です。自動化を進める前に、中間結果を検査可能な状態に保つ必要があります。

検索と再ランキングはソースのまとまりを維持することがある

Top-kベクトル検索は、最も近い項目を個別に返します。1つの文書に類似したチャンクが多数含まれている場合、その文書が複数の枠を占有することがあります。また、関連性の再ランキングでは、ソースの多様性を確保せずにそれらのチャンクの順序だけを変更することがあります。この境界は、現実的な運用条件の下で別々に測定する必要があります。

引用を考慮した検索の実用的な設計では、チャンク分割、検索、統合の各段階で位置アンカーとソースアンカーを引き継ぎます。これは、複数の単位が1つの文書に解決される場合でも、引用の識別情報を各取得単位に関連付けたままにする必要がある理由を示しています。

識別のポイントは、生成前のコンテキストです。重複するソースIDがすでに存在する場合は、検索の多様性が原因の系統です。コンテキストが一意なのに引用が繰り返される場合は、生成とフォーマットを調査します。この違いは、限られたコンテキストを複数のソースが奪い合う状況で実際に現れます。

主張の対応付けと表示が1つのソースを重複させることがある

生成器が、裏付けとなる各文の後に同じソースを引用することがあります。これは正確ですが、見た目には冗長です。さらに弱いレンダラーでは、同一の正規URL、ページアンカー、文書IDに対して、1つの参考文献項目を再利用せず、新しい脚注を作成することがあります。

引用対応の補正システムでは、引用の補正を生成後の独立した対応付け段階として扱います。この分離により、繰り返しが複数の裏付けられた主張を反映しているのか、それとも識別情報のマッピングが壊れているのかを特定しやすくなります。この依存関係は、最終的なインターフェースでも明示したままにする必要があります。

問題の境界は、繰り返される引用をすべてエラーだと決めつけることです。隣接していない主張が同じ証拠に依存している場合、繰り返しは必要になることがあります。欠陥は、参考文献項目の冗長化、根拠のない対応付け、またはソースの多様性の喪失であり、裏付け自体の繰り返しではありません。

チャンクから表示された番号まで引用の識別情報を追跡する

繰り返しが発生した1つの回答について、取得したチャンクID、コンテンツハッシュ、文書ID、バージョンID、類似度と再ランキングのスコア、プロンプト内の位置、主張とチャンクの対応関係、正規化されたソースキー、脚注番号、表示されたリンクをエクスポートします。その結果は、元の証拠と照合する必要があります。

引用のバージョン識別情報とバージョンの扱いを比較します。クエリと生成設定を一定に保ちながら、完全なコピー、オーバーラップするチャンク、1つのファイル内の2つのページ、隣接していない主張を1つのソースが支えるケースをテストします。この違いは、後の家庭内テストでも確認できます。

同一の参考文献識別情報が1つの参考文献一覧項目に統合され、主張レベルのマーカーが失われなければ合格です。1つのソースが他のソースを押しのける場合は検索の多様性を追加し、生成後に一意のコンテキストが重複した参考文献へ変わる場合にのみ表示を修正します。自動化を進める前に、中間結果を検査可能な状態に保つ必要があります。

テック&AIハブ

もっと読む

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.