技術トピック · RAG 02 · Chunking資料はどこで切ればいい?
店員に見えるもの
query:饮料洒了一半,这杯能退款吗?(Q02-zh) (ドリンクが半分こぼれていました。この 1 杯は返金できますか?)
evidence_sections:refund.spillage.severe
| strategy | 索引 | complete | retrieved tokens | signal |
|---|---|---|---|---|
whole-document | 7 個(1 ファイル = 1 個) | true | 3309 | 3% |
structure-aware | 60 個 | true | 283 | 41% |
whole-document の top-3 は、ファイル全体 3 件です:refund-policy.md(1308 トークン)、store-operations.md(1025 トークン)、allergens.md(976 トークン)。どちらも証拠は取れています。違いは、この 1 問のためにどれだけの文字を持ち帰ったかだけです。
全 11 問の平均:whole-document complete 11/11 · 平均 2991 トークン · signal 8%;structure-aware complete 6/11 · 平均 396 トークン · signal 42%。
制限が 2 つあります。索引には 7 個の単位しかなく、top-3 は知識ベース全体の 43% にあたります。また 7 件のファイルはすべてモデルの 512 トークンの窓より長く、ベクトルは各ファイルの冒頭(39%–64%)しか表していません。ファイル全体を 1 つにするのは「どのくらいの大きさで切るか」を一番粗い端に寄せることで、シナリオ 2 のレバーが扱うのはまさにそこです。
概念を開くと、中国語・日本語・English の対応と説明を確認できます。
文書を検索単位に分けること。主語や条件が離れると、断片だけでは回答を支えられない場合があります。
隣接するチャンクに共通部分を意図的に残し、切れ目付近の文がどちらのチャンクにも含まれるようにします。知識そのものは増えず、同じ文が索引に重複して入るため、重複が大きいほど検索単位が増え、上位 K 件に近似重複が並びやすくなります。
チャンクの境界を固定長ではなく、見出し・段落・一問一答・表とその注記といった文書自身の構造から決める方法。検索精度を保証するものではなく、語彙が一致しない場合は整った分割でも取得できません。
資料集合から質問に関連する候補を見つけること。証拠が十分かは別途判断します。
意味の関連性で検索する方法。表現の違いに対応できますが、類似性は事実の一致ではありません。第8ステージの候補は手作りです。
関連資料を検索し、質問と資料をモデルに渡して回答を生成する方法。検索できても正答は保証されません。