30秒でわかるこの記事のポイント
- RAGの精度は「チャンキング戦略」で大きく変わる ─ 親子分割が精度重視の推奨設定
- 検索モードは「ハイブリッド検索+Rerank」が最も精度を高める組み合わせ
- メタデータフィルタリングで、必要な情報だけを検索対象にできる
前回の記事では、DifyのChatflow機能について、会話の記憶と文脈を設計する方法を解説しました。
しかし、AIに業務を任せる際、こんな疑問が浮かびませんか?
「AIは社内のマニュアルや過去の議事録を知らない。どうすれば自社の情報をもとに回答させられるのか?」
その答えが RAG(検索拡張生成) です。この記事では、DifyのRAG機能を使って、社内ドキュメントをAIの「知識」として活用する方法を解説します。
Data Insightでは、AIを単なる効率化ツールではなく、社内の知見を活かして人間の判断を支援するパートナーとして位置づけています。RAGは、そのパートナーシップを実現するための中核技術です。
§ 1. RAGとは ─ 一言で理解するために
§ 「チャンキングの方法で、AIの回答が劇的に変わる」
まず、この事実を押さえておいてください。RAGの精度を決める最大の要因は、データをどう分割(チャンキング)するかです。同じドキュメントでも、分割方法を変えるだけで、AIの回答品質が大きく向上することがあります。
§ RAG = 検索拡張生成(Retrieval-Augmented Generation)
RAGの仕組みは、次の3ステップで理解できます。
- 検索(Retrieval): ユーザーの質問に関連する情報を、事前に用意したデータベースから探す
- 拡張(Augmented): 見つけた情報をAIへの指示に追加する
- 生成(Generation): AIが追加情報を参考にして回答を生成する
§ なぜRAGが必要なのか
GPT-5やClaude 4.5などのLLM(大規模言語モデル)は、学習時点の知識しか持っていません。つまり、以下の情報は「知らない」状態です。
- 御社の製品マニュアル
- 社内の業務規定
- 過去の議事録や提案書
- 顧客対応の履歴
RAGを使えば、これらの社内データをAIの「一時的な知識」として注入できます。AIは検索された情報を参照しながら回答するため、御社固有の文脈に即した回答が可能になります。
§ 2. ナレッジパイプライン ─ データが「検索可能な知識」になるまで
Difyでは、アップロードしたドキュメントが「検索可能な知識」になるまでの処理をナレッジパイプラインと呼びます。工場の生産ラインのように、データが順番に加工されていくイメージです。
§ パイプラインの5つのステップ
1. データソース → 2. Extractor → 3. Chunker → 4. Embedding → 5. ナレッジベース
§ ステップ1: データソース(入力)
Difyは多様なデータソースに対応しています。
| ソース種類 | 対応形式・サービス |
|---|---|
| ローカルファイル | PDF、Word、Excel、PowerPoint、テキストファイル、Markdown |
| クラウド連携 | Notion、Google Drive、OneDrive |
| Web | URLからのスクレイピング |
| 外部ナレッジベース | AWS Bedrock、LlamaCloud等との接続 |
§ ステップ2: Extractor(テキスト抽出)
アップロードされたファイルから、テキストを抽出します。PDFの場合はOCR処理も行われ、画像内の文字も読み取られます。
§ ステップ3: Chunker(分割)
抽出されたテキストを、検索しやすい単位に分割します。この「チャンキング」がRAGの精度を大きく左右します(詳細は次のセクション)。
§ ステップ4: Embedding(ベクトル化)
分割されたテキストを**ベクトル(数値の配列)**に変換します。これにより、意味的な類似度を計算できるようになります。
「売上が前年比で増加した」
↓ Embedding
[0.23, -0.15, 0.87, ..., 0.42] (数百次元の数値配列)
§ ステップ5: ナレッジベース(保存・インデックス化)
ベクトル化されたデータがデータベースに保存され、高速に検索できる状態になります。
§ 3. チャンキング戦略の選び方 ─ 最も重要な設定
チャンキング(分割)の方法は、RAGの精度を決める最も重要な設定です。Difyでは3つの方式から選択できます。
§ 汎用分割(General)
最もシンプルな方式です。固定の文字数でテキストを機械的に分割します。
| 設定項目 | 説明 | 推奨値 |
|---|---|---|
| チャンクサイズ | 1つのチャンクの最大文字数 | 500〜1000文字 |
| オーバーラップ | 隣接チャンク間で重複させる文字数 | 50〜100文字 |
適したケース: 構造が単純なテキストファイル、均一な形式のドキュメント
注意点: 文章の途中で分割されると、文脈が失われることがあります。オーバーラップ設定で緩和できますが、完全ではありません。
§ 親子分割(Parent-Child)─ 推奨
検索精度と回答品質を両立する方式です。「親チャンク」と「子チャンク」の2層構造でデータを管理します。
親チャンク(大きい)
├── 子チャンク1(小さい)← 検索対象
├── 子チャンク2(小さい)← 検索対象
└── 子チャンク3(小さい)← 検索対象
| 役割 | サイズ | 目的 |
|---|---|---|
| 子チャンク | 小さい(100〜300文字) | 検索用: ピンポイントでヒットさせる |
| 親チャンク | 大きい(1000〜2000文字) | LLMに渡す用: 周辺の文脈を保つ |
動作の流れ:
- ユーザーの質問に対して、子チャンクで検索
- ヒットした子チャンクの親チャンク全体をLLMに渡す
- LLMは十分な文脈を持った状態で回答を生成
適したケース: マニュアル、技術文書、FAQなど、構造化されたドキュメント全般
§ Q&Aモード
質問と回答のペアとして処理する方式です。
質問,回答
返品は可能ですか?,購入から30日以内であれば返品可能です。
送料はいくらですか?,全国一律500円です。
適したケース: FAQ形式のドキュメント、CSV・Excelで管理された質問回答集
§ 4. インデックス方式と検索モード
チャンキングの次に重要なのが、インデックス方式と検索モードの選択です。
§ インデックス方式の選択
| 方式 | 特徴 | コスト |
|---|---|---|
| 高品質モード | Embeddingを使用した意味検索が可能 | Embedding APIの利用料金が発生 |
| エコノミーモード | キーワード検索のみ | 無料 |
推奨: 高品質モードを選択してください。コストはかかりますが、検索精度が大幅に向上します。
§ 検索モードの3種類
§ ベクトル検索(Semantic Search)
質問文と保存されたチャンクの意味的な類似度で検索します。
質問: 「商品を返したい」
↓ 類似度で検索
ヒット: 「返品は購入から30日以内であれば受け付けています」
「返品」という言葉が質問になくても、意味が近ければヒットします。
§ 全文検索(Keyword Search)
従来型のキーワード一致による検索です。
質問: 「返品 期限」
↓ キーワードで検索
ヒット: 「返品」「期限」を含むチャンク
専門用語や固有名詞の検索に強みがあります。
§ ハイブリッド検索 ─ 推奨
ベクトル検索と全文検索を同時に実行し、両方の結果を統合します。
質問: 「型番ABC-123の返品について」
↓
ベクトル検索: 「返品」の意味的類似でヒット
全文検索: 「ABC-123」のキーワード一致でヒット
↓
両方の結果を統合して最適な回答を選出
推奨: ほとんどのケースでハイブリッド検索を選択してください。意味的な検索とキーワード検索の両方の強みを活かせます。
§ 5. Rerank ─ 精度の最後の一手
§ Rerankとは何か
検索で取得した複数の候補を、専用のAIモデルで再評価し、順位を付け直す処理です。
検索結果(Top 10)
├── チャンクA(スコア 0.82)
├── チャンクB(スコア 0.79)
├── チャンクC(スコア 0.75)
...
↓ Rerank処理
├── チャンクC(再スコア 0.95)← 実は最も関連性が高かった
├── チャンクA(再スコア 0.88)
├── チャンクB(再スコア 0.71)
§ なぜRerankが必要か
ベクトル検索は高速ですが、表面的な類似度しか測定できません。Rerankモデルは、質問と候補の深い意味的関連性を評価するため、より正確な順位付けが可能です。
§ 対応モデル
Difyでは以下のRerankモデルを利用できます。
| プロバイダー | モデル名 | 特徴 |
|---|---|---|
| Cohere | rerank-v3 | 業界標準、高精度 |
| Jina AI | jina-reranker | コストパフォーマンスに優れる |
§ 設定項目
| 項目 | 説明 | 推奨値 |
|---|---|---|
| Top K | LLMに渡すチャンク数 | 3〜5 |
| スコア閾値 | この値以下のチャンクは除外 | 0.5〜0.7 |
§ ハイブリッド検索の重み付け
ハイブリッド検索を使用する場合、ベクトル検索と全文検索の結果をどの比率で統合するかを設定できます。
| 設定 | ベクトル : キーワード | 適したケース |
|---|---|---|
| セマンティック優先 | 8 : 2 | 一般的な質問応答 |
| キーワード優先 | 2 : 8 | 専門用語・型番検索 |
| カスタム比率 | 任意 | 検証しながら調整 |
§ 6. メタデータフィルタリング ─ 検索範囲の絞り込み
§ メタデータとは
ドキュメント本文とは別に付与する属性情報です。
部門: 営業部
カテゴリ: 製品マニュアル
更新日: 2026-01-15
機密レベル: 社外秘
§ フィルタリングの活用
知識検索ノードで、AND/OR条件を使ってメタデータでフィルタリングできます。
検索条件:
部門 = 営業部 AND カテゴリ = 製品マニュアル
§ 2つのメリット
§ メリット1: 精度向上
検索対象を絞り込むことで、ノイズを減らし、関連性の高い情報だけを取得できます。
質問: 「新製品Aの価格は?」
↓ フィルタリングなし
製品A、製品B、製品Cの情報が混在してヒット
↓ フィルタリングあり(製品 = A)
製品Aの情報だけがヒット → 正確な回答
§ メリット2: アクセス制御
部門間の情報壁としても機能します。
営業部のユーザー → 営業部のドキュメントのみ検索可能
技術部のユーザー → 技術部のドキュメントのみ検索可能
機密情報の漏洩リスクを軽減しながら、部門ごとに最適化されたRAGを構築できます。
§ よくある質問(FAQ)
§ Q. RAGを使えば、AIは100%正確に回答できますか?
A. いいえ、100%の精度は保証されません。RAGは「関連する情報をAIに渡す」仕組みであり、AIがその情報をどう解釈するかは別の問題です。ただし、適切なチャンキングとRerank設定により、精度は大幅に向上します。回答には必ず情報ソースを明示し、重要な判断は人間が確認する運用をおすすめします。
§ Q. どのくらいのドキュメント量まで対応できますか?
A. Difyのナレッジベースは、数万件のドキュメントにも対応できます。ただし、ドキュメント量が増えるほど、メタデータフィルタリングによる絞り込みが重要になります。「すべてを検索対象にする」のではなく、「必要な情報だけを検索する」設計を心がけてください。
§ Q. チャンキングの設定は後から変更できますか?
A. はい、変更可能です。ただし、設定を変更すると、既存のドキュメントは再処理(再チャンキング・再ベクトル化)が必要になります。本番運用前にテスト環境で最適な設定を見つけることをおすすめします。
§ Q. Embeddingモデルはどれを選べばいいですか?
A. 日本語のドキュメントを扱う場合は、多言語対応のモデル(OpenAIの text-embedding-3-large など)を推奨します。専門用語が多い場合は、ドメイン特化型のEmbeddingモデルを検討することもできます。
§ Q. RAGのコストはどのくらいかかりますか?
A. 主なコストは (1) Embedding処理(ドキュメント登録時)、(2) 検索時のAPI呼び出し、(3) Rerankモデルの利用 の3つです。ドキュメント量と検索頻度によって変動しますが、中規模の社内ナレッジベースであれば、月額数千円〜数万円程度が目安です。
§ まとめ
この記事では、DifyのRAG機能について、以下のポイントを解説しました。
-
RAGの精度は「チャンキング戦略」で大きく変わる
- 親子分割が精度重視の推奨設定。「検索の精度」と「回答の文脈」を両立できる
-
検索モードは「ハイブリッド検索+Rerank」が最強の組み合わせ
- ベクトル検索とキーワード検索の強みを活かし、Rerankで精度を底上げ
-
メタデータフィルタリングで、必要な情報だけを検索対象に
- 精度向上とアクセス制御の両方に機能する
RAGは、AIを「一般的な知識を持つアシスタント」から「御社の情報を熟知したパートナー」へと進化させる技術です。社内のマニュアルやFAQから始めて、徐々にナレッジベースを拡充していくことをおすすめします。
Data Insightでは、「どのドキュメントをRAGに組み込むべきか」「どのチャンキング設定が最適か」という問いへの答えを、お客様との対話を通じて一緒に見つけていくアプローチを大切にしています。
社内データの活用方法は理解した。では、作成したAIアプリを実際に公開するには?
次の記事では、Difyで作成したアプリをWebサイトに公開する方法を解説します。埋め込みウィジェットからカスタムUIまで、フロントエンド連携の実践ガイドです。
Data Insightでは、Difyの導入から社内データの連携、ナレッジベースの設計までを一貫して支援しています。「どのドキュメントから始めるべきか」「チャンキング設定の最適化」など、具体的なご相談も承っています。
無料相談で課題を整理する