チャンキング入門:RAGの精度は「文章の切り方」で半分決まる
RAGで精度が出ないとき、多くの人はモデルを変えたり、プロンプトをこねくり回したりする。だが本当の問題は、その手前にある。文章の「切り方」だ。チャンキング(文書を小分けにする処理)は地味で、多くの記事でさらっと流される。しかし実際には、検索精度に占める割合が非常に大きい。RAGは関連資料を検索してAIに渡す仕組みなので、検索が外せば、生成側でいくら工夫しても立ち直らない。文章が長いと、複数の話題が1つのベクトルに平均化されて、検索の特異性が失われる。たとえば「返品ポリシー」「送料」「営業時間」が全部入った長い文書では、検索して「返品について聞かれた」ときにピンポイントで当たりにくくなる。だから切る。しかし切り方が機械的すぎると別の問題が起きる。「ただしセール品は対象外です」という文が単独で切られると、何が対象外なのかが消える。これがチャンク単体で検索されてAIに渡ると、AIは文脈なしで答えを作ってしまう。正解は「元の文書の構造に沿って切る」ことだ。Markdown の見出しごと、FAQ なら質問と回答で1チャンク、表は割らない、こういう単位。人間が「この節を読めば答えが分かる」と思う粒度が、だいたい最適なチャンクになる。さらにメタデータを持たせる。元のファイル名、見出しの階層、更新日。こうすることで、回答に出典を添えられるし、古い情報は除外できる。最後に、切り方を変えたら必ず比べること。実装側で調整するのはその後だ。質問リスト10〜20問で、検索結果の上位に正解が入っているかを数える。生成の良し悪しより先に、検索が当たっているかを確認するのが、無駄な作業を減らす鍵だ。チャンキングはハイテクな話ではなく、むしろ「元の文書を尊重する」という基本に立ち戻ることだ。
※ 上記は配信元記事をもとにAIの鬼編集部が要約・再構成したものです。正確な内容は出典元をご確認ください。
このニュースの全文は、配信元でお読みいただけます。 Zenn AIで元記事を読む →


