> For the complete documentation index, see [llms.txt](https://docs.digitalhumans.jp/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.digitalhumans.jp/dify-guide/knowledge-base/dify-docs-chunking-and-index-settings.md).

# チャンク分割とインデックス設定

ナレッジベースに登録した文書は、そのままでは検索に使えません。検索しやすい大きさに切り分け（チャンク分割）、索引を作る（インデックス化）ことで、質問に対して正確な情報を返せるようになります。

ドキュメントをナレッジベースにアップロードした後、ドキュメントを検索可能な単位（チャンク）に分割し、インデックス化を行います。 適切な設定を行うことで、RAGの回答精度を大きく向上させることができます。

{% hint style="info" %}
**チャンクとは**

**チャンク**は、ドキュメントを検索可能な小さな単位に分割したものです。\
LLMには入力長の制限があるので、適切な単位で分割することで検索精度が向上します。\
単位が大きすぎるとノイズが混じり、小さすぎると文脈が消失するおそれがあります。
{% endhint %}

## 1. チャンク設定

ドキュメントの特性に合わせて、以下の3つのモードから分割方法を選択します。

### 汎用（汎用テキスト分割モード）

![](/files/k0ItQPaKuPNPZc2aSjUU)

一般的なほとんどのドキュメントで使用できる分割方法です。

**Automatic**: Difyが推奨するルールで自動的に分割およびクリーニングを行います。

**Custom**: チャンクの最大長（文字数）、区切り文字（デフォルトは \n（改行）で段落ごとに分割）、オーバーラップ（重複部分）の長さを手動で設定できます。正規表現を使い、分割ルールを変更できます。

例: マニュアル、議事録、記事など

### 親子（親子分割モード / 階層分割モード）

![](/files/M4QVMSNT0yt2RwuPHo07)

ドキュメントを「親（大きな文脈）」と「子（小さな断片）」の関係で管理するモードです。文脈を保持しつつ細かく検索できます。

検索時は「子チャンク」で、マッチングを行います。LLMへの入力（コンテキスト提供）は「親チャンク」を使います。「検索のヒット率を高めつつ、回答に必要な前後の文脈も失わない」という両立が可能です。

例: 構造化データ、CSVファイル、FAQ、商品データベースなど

### Q\&A（質問と回答モード）

テキストデータから「質問（Q）」と「回答（A）」のペアを抽出してチャンク化します。 テキストファイルから自動的にQ\&A形式を学習・分割するほか、CSVファイル等の構造化データを取り込む際にも有効です。

例: FAQ、カスタマーサポートの履歴、規約集など

### チャンク設定項目

**チャンク長（Chunk Size）**

| 設定値             | 用途             |
| --------------- | -------------- |
| **300〜500文字**   | FAQ、短い情報       |
| **500〜1000文字**  | 一般的な文書（**推奨**） |
| **1000〜2000文字** | 詳細な説明文書        |

**オーバーラップ（Chunk Overlap）** チャンク間で重複させる文字数

| 設定値        | 効果                |
| ---------- | ----------------- |
| **0%**     | 完全に分離、コスト削減       |
| **10〜20%** | 文脈の継続性を確保（**推奨**） |
| **30%以上**  | 重複が多すぎ、非効率        |

## 2. インデックス方法

![](/files/fXhMZfSxrGYgLsVjbfkq)

データの保存と検索のベースとなる仕組みを選択します。

* **高品質（推奨）**
  * Embeddingモデル（OpenAI text-embedding-3など）を使用してテキストをベクトル化します。
  * 文脈や意味内容に基づいた検索が可能になります。
  * トークン消費によるコストが発生します。
* **経済的**
  * 従来のキーワード検索（転置インデックス）のみを使用します。
  * オフラインで動作し、トークンコストがかかりません。
  * 意味検索（同義語や類似表現などで検索）はできません。

**選択基準**

| 用途             | 推奨インデックス                  |
| -------------- | ------------------------- |
| 本番環境・デジタルヒューマン | High-Quality              |
| 開発・テスト環境       | Economical（コスト節約）         |
| 専門用語が多い技術文書    | High-Quality + 適切な埋め込みモデル |

## 3. 検索設定

![](/files/YdX1KmFzHjv9SCvY1t5S)

「High Quality」インデックスを選択した場合、検索時にどの技術を使用するかを設定します。

* **Vector Search（ベクトル検索）**
  * クエリとドキュメントの意味的な類似度（Cosine Similarityなど）で検索します。
  * キーワードが完全に一致しなくても、意味が近い情報をヒットさせることができます。
* **Full-text Search（全文検索）**
  * ドキュメント内のキーワードがクエリに含まれているかどうかで検索します。
  * 固有名詞、型番、エラーコードなどの完全一致が必要な場合に有効です。
* **Hybrid Search（ハイブリッド検索）**
  * **推奨設定**: ベクトル検索と全文検索を同時に行い、結果を統合します。
  * **Rerank（再ランク付け）モデルの活用**: Hybrid検索を使用する場合、Rerankモデルの設定が強く推奨されます。検索結果の候補に対して、質問との関連度を再評価して並べ替えることで、精度の高い情報をトップに持ってきます。

## 4. デジタルヒューマン・対話AI向け推奨設定

自然な対話を実現するための推奨設定です。

1. **インデックス**: 必ず **High Quality** を使用する。
2. **チャンク**: 文脈切れを防ぐため、親子分割モードの利用を検討するか、汎用モードで十分な **オーバーラップ**を設定する。
3. **検索方法**: **Hybrid Search + Rerankモデル** を採用し、意味理解と固有名詞の正確さを両立させる。
4. **クリーニング**: ヘッダー、フッター、無意味な記号などはアップロード前に可能な限り除去する。

## 参考情報

* Dify 公式ドキュメント: <https://docs.dify.ai/versions/3-0-x/en/user-guide/knowledge-base/create-knowledge-and-upload-documents/chunking-and-cleaning-text#2-choose-a-chunk-mode>
