RAGのドキュメント検索の精度を高めるチャンク分割とは
RAG(Retrieval-Augmented Generation)やAIエージェントなど、企業が持つデータを生成AIで有効的に活用する手法に注目が集まっています。これらの仕組みにおいて、必要な情報を探し出すために重要な役割を担うのが「ベクトル検索」です。
ベクトル検索の精度は、データの検索単位である「チャンク」に大きく左右されます。
本記事では、ベクトル検索の精度向上のためのチャンクの分割手法と、有効なチャンクを継続的に作成するためのデータ統合方法を解説します。
Shinnosuke Yamamoto -読み終わるまで6分

チャンク分割の概要
チャンク分割とは、ベクトル検索において大規模な非構造化データ(ドキュメントや画像、音声など)を、より小さなデータのかたまりである「チャンク」に分割するデータの前処理です。チャンクは、ベクトル検索を行うためのベクトルデータベースに格納される情報の単位を定義し、検索時の精度を左右する重要な要素です。
まずはチャンク分割が必要となる理由と、チャンク分割時に考慮すべき基本要素について解説します。
なぜチャンク分割が必要か
生成AIには、モデルごとに「コンテキストウィンドウ」と呼ばれる一回の生成において入出力で取り扱うことができるデータ量の上限が定められています。そのため、数十~数百ページに及ぶような膨大なテキストデータをそのまま取り扱うことは現実的ではありません。生成AIがデータを取り扱ううえでは、コンテキストウィンドウの大きさに応じて、必要な情報を選別してデータ量を限定することが求められます。
また、データの全量ではなく関連性の高い情報だけに限定することは、ハルシネーションを抑制するうえでも重要な役割を果たします。
例えば、ユーザーが生成AIに対してある質問を行い、PDF形式のビジネスレポートに基づいて回答をさせるとします。ビジネスレポートは、第1章から第5章までで構成され、それぞれ異なる著者が異なるテーマで執筆しています。ユーザーが求めている情報は第3章の情報であるとき、もしレポートの全量を生成AIに与えると、全く関係のない第3章以外の章もノイズとして回答に含まれます。
期待する回答を導くためにも、適切なまとまりに情報を分割し、ノイズを最小限に抑えることが重要です。
-
▼生成AIについてもっと詳しく知りたい
⇒ 生成AI(Generative AI)|用語集
サイズとオーバーラップ
チャンク分割を設計するうえで重要な基本要素が「サイズ」と「オーバーラップ」です。これらのパラメーターの設定が、検索の精度や最終的な回答の品質に影響を与えます。
サイズ
サイズとは、一つのチャンクを構成する情報の文字数やトークン数の最大値です。最適なチャンクのサイズは、ユースケースやLLMのコンテキストウィンドウによっても変動します。
サイズを小さく設定すればデータは細かく分割されます。小さなチャンクは、固有名詞やキーワードなど特定の単語をピンポイントで特定するようなユースケースで役立ちます。その反面情報が限定的になるため、データ全体の文脈や全体的な理解が必要なユースケースには向きません。
一方、サイズを大きくすれば検索時に得られる情報量が広範囲になるため、データ全体の文脈や全体的な理解が必要なユースケースに対応することができます。しかし全く文脈が異なる情報や、期待しないノイズとなる情報が含まれてしまう可能性があります。また、LLMのコンテキストウィンドウが限定的である場合には、検索結果として取得するチャンクの数(Top-k)を抑える必要があります。
-
▼LLMについてもっと詳しく知りたい
⇒ 大規模言語モデル(LLM:Large Language Model)|用語集
オーバーラップ
オーバーラップとは、チャンク同士でどの程度の情報の重なりを許容するかを示す値です。データが細かいチャンクに分かれることにより、チャンクごとに情報が分断され、本来存在する文脈が消失するおそれがあります。適切なオーバーラップの設定により、チャンク間の文脈の連続性を保つことが重要です。適切なオーバーラップの範囲もユースケースにより様々です。
例えば、FAQなどのピンポイントで情報を抽出するようなタスクでは、必要な情報が記述された箇所が抜き出せればよいため広範なオーバーラップは求められません。
他方、物語性のある内容や技術的な論理構造がある内容の検索など、データの全体の文脈の維持が求められる場合には、チャンク間で一定の情報の重なりを設けることによって情報の連続性を持たせる必要があります。
主要なチャンク分割アプローチ
チャンク分割には、そのアプローチに基づいていくつかの主要な手法が存在します。それぞれの手法には、得意なデータ構造やメリット・デメリットがあり、その特性に応じた戦略的な手法の選択が重要です。
固定長チャンキング
固定長チャンキングは、データを指定された文字数やトークン数で分割する最もシンプルな分割アプローチです。
チャンクサイズは一定であり、機械的に分割するため計算コストが低く、シンプルに実装することができます。一方、固定サイズで機械的に分割するために情報の文脈や意味が無視されるため、チャンク内で情報が途切れるおそれがあります。
再帰的チャンキング
再帰的チャンキングは、段落や単語などの階層的な区切り文字であるセパレーターによってデータを分割するアプローチです。
このアプローチは、データ内に適切な単位でのセパレーターが存在していることが前提になります。セパレーターが存在する場合、段落等の一定のまとまりでチャンクを分割できるため、文脈を可能な限り維持することが可能です。とはいえ、明確なセパレーターやー階層構造がない場合には十分な効果を発揮することが難しくなります。
構造認識チャンキング
構造認識チャンキングは、文書などのデータの論理的な構造(見出しやリストなど)を利用してチャンクを分割するアプローチです。マークダウン記法等で表現される構造的なデータで特に効果を発揮します。
構造認識チャンキングでは分割時にデータの構造を理解したうえで分割を行うため、文脈を論理的に保持することが可能です。そのため、明確な構造を持たないデータには適用することができません。
セマンティックチャンキング
セマンティックチャンキングは、データの意味的(セマンティック)なまとまりに基づいてデータを分割するアプローチです。再帰的チャンキングや構造認識チャンキングは区切りや段落等のデータ構造に基づいて分割することで意味あるまとまりとしてのチャンクを作成しますが、セマンティックチャンキングではより高度に意味的なまとまりを導きます。
具体的には、データをベクトルに変換して類似度の計算を行うことによって、明確な類似度の境界をチャンクの分割箇所として特定します。ベクトルにおける類似度の計算により、文章の意味を考慮してのチャンクの作成を実現することが可能です。しかしデータ全体のベクトル化と計算が必要となるため、相応の処理コストが求められます。
精度向上のためのデータ統合
これまで、ベクトル検索において検索精度を高めるためのチャンク分割の概念とアプローチについて解説してきました。チャンク分割時のパラメーター(サイズやオーバーラップなど)や分割アプローチ(固定長チャンキングなど)は、データをどのように生成AIで扱いたいかというユースケースや、データの構造によって戦略的に選択することが重要です。
一方、チャンキング戦略は、チャンク分割の設計だけに留まりません。そもそも分割すべきデータをどのように収集するのか、検索精度や回答精度を高めるためにはどのような前処理を行う必要があるのか、データ処理の設計も重要な要素となります。
データの収集
一般にビジネスにおいて活用したいと考えるデータは、それぞれ管理されている場所があります。例えば社内規約や手順書などのドキュメントは、企業のファイルサーバーやクラウドストレージで管理されていることが一般的です。提案書や設計書、レポートなど扱うべきデータを広範にするほど、個々に収集して個別にチャンク分割を行っていくことは現実的ではありません。
例えば、Amazon Bedrock for Knowledge BaseやAzure AI Search、Vertex AI Searchなどのクラウドで提供されるベクトル検索サービスを用いる場合、どのようにしてデータをベクトル検索側のクラウドにまで運び出すかを考える必要があります。
データを収集する方法は、使いたいデータがどのシステム環境に置かれているかによって様々な選択肢があります。例えば、ファイルであればFTPやSFTP、HULFTによる連携が考えられます。データベースであればODBCやJDBC、専用のAPIが提供されていればAPIでの連携が考えられるでしょう。
メタデータの付与
データを収集した後は、収集したデータに対して副次的な情報をメタデータ(データに関するデータ)を付加します。メタデータはベクトル検索の精度を高めるほか、最終的なLLMの回答生成時に特定の情報を考慮させることができます。
検索精度を高めるうえでは、タグ情報をメタデータに付与することが有効です。タグ情報とは、データが「財務」関連か「人事」関連か、「提案書」か「手順書」か、「製造業界」関連か「金融業界」関連か、など、ある特定の基準に基づいてデータを端的に分類する情報です。これらの情報は事前に整理されていなくともLLMと連携して動的にタグ付けを行うことができます。
回答時に考慮させるべき情報としては、更新日やデータの所在を示すパスやURLが挙げられます。更新日はデータがいつ時点の情報なのかを示します。LLMが更新日を把握することで、情報が新しいのか古いのかを認識し、情報の鮮度を考慮した回答を導くことができるようになります。パスやURLは、回答時に提示することで、ユーザーが参照元のデータを辿ることができるようになります。LLMの回答のみならず元のデータを見たいと言うニーズがある場合に有効です。
データの構造化
メタデータに加えて、データそのものに対するアプローチも重要です。先に挙げたような再帰的チャンキングや構造認識チャンキングを行うためには、文章内に明確な構造を持つことが求められます。しかし、大抵のデータは、LLMにとって認識が容易な構造やセパレーターを持っていません。
データの構造化は、データをOCR及びLLMと連携することにより実現することができます。例えば、Azure Document Intelligenceと連携することで、PDFドキュメントをマークダウン記法に変換することができます。
マークダウン記法に変換することができれば、見出しを示す「#」をセパレーターとして再帰的チャンキングを行ったり、マークダウン構造そのものを利用して構造認識チャンキングを行うことができるようになります。
データを統合するならiPaaS
チャンキング戦略を考えるうえでは、データを管理元から収集して必要な前処理やメタデータの付与を行い、ベクトル検索サービスに渡していくまでのデータ処理を設計することが重要です。
これらのデータ処理では、データの管理元であるファイルサーバーやクラウドストレージ、データを処理するためのLLMやOCR、そしてベクトル検索サービスなど、様々なシステムやサービスと連携することが求められます。
データ統合プラットフォーム「iPaaS (Integration Platform as a Service)」 は、様々なシステムやサービスを統合し、データ処理を一元的なパイプラインとして実現することが可能です。
iPaaS型データ連携基盤 HULFT Square(ハルフトスクエア)
HULFT Squareは、「データ活用するためのデータ準備」や「業務システムをつなぐデータ連携」を支援する日本発のiPaaS(クラウド型データ連携プラットフォーム)です。各種クラウドサービス、オンプレミスなど、多種多様なシステム間のスムーズなデータ連携を実現します。
-
▼iPaaSについてもっと詳しく知りたい
⇒ iPaaS|用語集
さいごに
今回は、生成AIで社内・社外のデータをビジネス活用するうえで重要なベクトル検索の精度を高めるチャンク分割に焦点を当て、チャンク分割の基本要素とアプローチ、データ統合のポイントを紹介しました。
RAGやAIエージェントの活用では、業務ユースケースやアウトプットに注目されがちですが、安定的な運用のためには精度向上における継続的な取り組みが不可欠です。戦略的なチャンク分割とデータ統合は、こうした生成AI活用の持続的発展において重要な役割を担うでしょう。
執筆者プロフィール

山本 進之介
- ・所 属:データインテグレーションコンサルティング部 Data & AI エバンジェリスト
- 入社後、データエンジニアとして大手製造業のお客様を中心にデータ基盤の設計・開発に従事。その後、データ連携の標準化や生成AI環境の導入に関する事業企画に携わる。2023年4月からはプリセールスとして、データ基盤に関わる提案およびサービス企画を行いながら、セミナーでの講演など、「データ×生成AI」領域のエバンジェリストとして活動。趣味は離島旅行と露天風呂巡り。
- (所属は掲載時のものです)
おすすめコンテンツ
データ活用コラム 一覧
- データ連携にiPaaSをオススメする理由|iPaaSを徹底解説
- システム連携とは?自社に最適な連携方法の選び方をご紹介
- 自治体DXにおけるデータ連携の重要性と推進方法
- 生成 AI が切り開く「データの民主化」 全社員のデータ活用を阻む「2つの壁」の突破法
- RAG(検索拡張生成)とは?| 生成AIの新しいアプローチを解説
- Snowflakeで実現するデータ基盤構築のステップアップガイド
- SAP 2027年問題とは? SAP S/4HANAへの移行策と注意点を徹底解説
- Salesforceと外部システムを連携するには?連携方法とその特徴を解説
- DX推進の重要ポイント! データインテグレーションの価値
- データクレンジングとは何か?|ビジネス上の意味と必要性・重要性を解説
- データレイクハウスとは?データウェアハウスやデータレイクとの違い
- データ基盤とは?社内外のデータを統合し活用を牽引
- データ連携を成功させるには標準化が鍵
- VMware問題とは?問題解決のアプローチ方法も解説
- kintone活用をより加速するデータ連携とは
- MotionBoardの可能性を最大限に引き出すデータ連携方法とは?
- データクレンジングの進め方 | 具体的な進め方や注意点を解説
- データ活用を支えるデータ基盤の重要性 データパイプライン選定の9つの基準
- 生成AIを企業活動の実態に適合させていくには
- Boxとのシステム連携を成功させるためのベストプラクティス ~APIとiPaaSの併用で効率化と柔軟性を両立~
- RAGに求められるデータ基盤の要件とは
- HULFTで実現するレガシーシステムとSaaS連携
- データ分析とは?初心者向けに基本から活用法までわかりやすく解説
- 今すぐ取り組むべき経理業務の効率化とは?~売上データ分析による迅速な経営判断を実現するデータ連携とは~
- Amazon S3データ連携のすべて – メリットと活用法
- ITとOTの融合で実現する製造業の競争力強化 – 散在する情報を統合せよ!
- データ分析手法28選!|ビジネスに活きるデータ分析手法を網羅的に解説
- Amazon Auroraを活用した最適なデータ連携戦略
- 生成AIで実現するデータ分析の民主化
- データ活用とは?ビジネス価値を高める基礎知識
- iPaaSで進化!マルチRAGで社内データ価値を最大化
- Microsoft Entra ID連携を徹底解説
- iPaaSで実現するRAGのデータガバナンス
- 銀行DXを加速!顧客データとオープンデータで描く金融データ活用の未来
- データ統合とは?目的・メリット・実践方法を徹底解説
- 貴社は大丈夫?データ活用がうまくいかない理由TOP 5
- 連携事例あり|クラウド会計で実現する経理業務の自動化徹底解説!
- 顧客データを統合してインサイトを導く手法とは
- SX時代におけるサステナビリティ経営と非財務データ活用の重要性
- メタデータとは?基礎から最新動向までFAQ形式で解説
- データは分散管理の時代?データメッシュを実現する次世代データ基盤とは
- API連携で業務を加速!電子契約を使いこなす方法とは
- BIツール vs. 生成AI?両立して実現するAI時代のデータ活用とは
- 脱PoC!RAGの本番運用を支える「データパイプライン」とは
- モダンデータスタックとは?全体像と構成要素から学ぶ最新データ基盤
- データ分析の結果をわかりやすく可視化!〜 ダッシュボードの基本と活用徹底ガイド 〜
- Boxをもっと便利に!メタデータで始めるファイル管理効率化
- メタデータで精度向上!生成AI時代に必要なメタデータと整備手法を解説
- HULFTユーザーに朗報!基幹システムとSalesforceを最短1時間でつなぐ方法
- 脱炭素経営に向けて!データ連携基盤でGHG排出量をクイックに可視化
- データが拓く未来のウェルスマネジメント
- iPaaSが必要な理由とは?クラウド時代に求められる統合プラットフォーム
- 顧客データがつながると、ビジネスは変わる。HubSpot連携で始める統合データ活用
- AI時代のデータ探索:ベクトル検索の手法とデータ連携方法を解説
- RAGのドキュメント検索の精度を高めるチャンク分割とは