チャンキングとは
チャンキングとは、長い文書をAIに扱わせるため、意味のまとまりごとに小さな塊(チャンク)へ分割する前処理のことです。RAG(検索拡張生成)で社内文書を検索・参照させるとき、欠かせない下ごしらえになります。
大きすぎても小さすぎても困る
チャンクの大きさには、ちょうどよい加減が大切です。大きすぎる塊は、いくつもの話題が混ざってAIが要点を取りこぼしやすくなります。逆に小さすぎる塊は、前後の文脈が切れて意味が通らなくなってしまうのです。そこで実務では、塊どうしを1〜2割ほど重ねて(オーバーラップ)、境目で文脈が断ち切られないよう工夫します。
分け方にもいくつかあり、文字数で機械的に区切る方法、段落や文の区切りで分ける方法、意味の切れ目を見つけて分ける方法などが使い分けられます。文書の性質に合わせて選ぶのが定石です。
「分け方」が回答品質を左右する
地味な前処理に見えますが、分け方の良し悪しがRAGの回答品質をそのまま左右します。高性能なAIを導入したのに答えが的外れになるとき、原因がモデルではなく、この分割の設定にあることは珍しくありません。
TopicAIも「文章の真ん中」を見落としやすい
2023年の研究で、AIは長い文章を渡されると冒頭と末尾の情報はよく拾うのに、真ん中に置かれた大事な情報を見落としやすい傾向が報告されました。「Lost in the Middle(真ん中で迷子になる)」と名づけられたこの現象は、長文を扱えるはずのモデルでも起きます。人が分厚い資料の中ほどを読み飛ばしてしまうのに少し似ており、文書を適切な大きさに分けておくことが効いてくる理由の一つです。
関連用語
チャンキングに関するよくある質問
- なぜ文書を分割する必要があるのですか?
- 長い文書をAIに丸ごと渡すと扱いにくいため、RAG(検索拡張生成)で社内文書を検索・参照させるとき、意味のまとまりごとに小さな塊(チャンク)へ分ける下ごしらえが要ります。チャンクは大きすぎると話題が混ざって要点を取りこぼし、小さすぎると前後の文脈が切れて意味が通らなくなります。
- チャンクの分け方にコツはありますか?
- 塊どうしを1〜2割ほど重ねて(オーバーラップ)、境目で文脈が断ち切られないようにするのが定石です。分け方も、文字数で機械的に区切る、段落や文の区切りで分ける、意味の切れ目で分けるなどがあり、文書の性質に合わせて選びます。
- チャンキングは回答品質にどれくらい影響しますか?
- 地味な前処理に見えて、分け方の良し悪しがRAGの回答品質をそのまま左右します。高性能なAIを導入したのに答えが的外れになるとき、原因がモデルではなくこの分割設定にあることは珍しくありません。2023年の研究では、AIが長文の冒頭と末尾はよく拾うのに真ん中の情報を見落としやすい「Lost in the Middle」も報告されています。