タグ・7本
RAG
RAGの検索精度を上げる方法—取りこぼしと順位から改善箇所を決める
RAGの検索精度が上がらないとき、原因が取りこぼし(候補に入っていない)か順位(下に沈んでいる)かを質問ごとに数えて見分けます。分割・検索・並べ替えのどこから改善するかを5本の日本語RAG実験から判断する手順と、手元で動く診断コードを掲載します。
RAGは外部文書を検索し、その内容をLLMへ渡して回答を作る仕組みです。文書の分割から検索、並べ替え、回答生成までの流れと、精度が落ちたときに確認する場所を整理します。
日本語RAGのHyDE・マルチクエリを実測—正解順位はむしろ下がった
日本語RAGへHyDEとマルチクエリを足し、JSQuAD 500問で比較しました。どちらもdense単体よりnDCG@10・MRR@10が低下し、生成には数秒から数十秒かかりました。悪化した実例と、手元で動くHyDE実装を掲載します。
RAGのハイブリッド検索を実測比較—BM25・dense・RRFの選び方
BM25・dense・RRF融合を日本語500問で比較しました。単体同士の検索精度は区別できませんでしたが、RRF融合はnDCG@10・MRR@10を改善。個別クエリ、速度、手元で動く実装例まで掲載します。
日本語RAGリランカー5種を実測—取りこぼしの改善は確認できず、正解順位は上がった
日本語RAGのリランカー5種を500問で比較しました。Recall@5は改善を確認できませんでしたが、4種でnDCG@10・MRR@10が上昇。精度と追加レイテンシの実測、手元で動く実装例を掲載します。
RAGのチャンク分割は段落で切るか文字数で切るか—100文字・重なりなしでは正解が境界で消えた
日本語RAGでチャンクの区切り方を8構成で比べたところ、元の段落境界を使う構成の順位品質が最も高く、100文字・オーバーラップなしでは500問中20問の正解が境界で分断されていました。段落構造を使えない文書での起点は200〜400文字・オーバーラップ20%。100〜800文字の実測と、手元で動く実装例を掲載します。
日本語RAGの埋め込みモデル9種比較—大きいほど検索精度が上がるとは限らない
ruri-v3・multilingual-e5・static-embedding-japaneseなど日本語の埋め込みモデル9種をApple M1で比較しました。検索3指標の測定値はruri-v3-130mが最も高く、310mへ大きくしても上がりませんでした。JSTS・JSQuADによる精度・速度・サイズの実測から、用途別の選び方と注意点を整理します。