Difyのナレッジ精度が上がらないときは、プロンプトを書き直す前に「そもそも検索で正しいチャンクが拾えているか」を確認するのが先です。原因はチャンク分割・インデックス方法・検索方式・Top Kとスコア閾値・元資料の5か所にほぼ集約されます。この記事では2026年7月時点の公式仕様にもとづき、症状からどの設定を触ればよいかを順番に整理しました。
Difyのナレッジ精度が上がらないときの切り分け方
「ナレッジを登録したのに関係ない答えが返る」という症状は、原因が検索側にある場合と生成側にある場合で対処がまったく変わります。最初にこの2つを分けてください。
「拾えていない」のか「拾えているが答えない」のか
ナレッジベースの管理画面には検索テスト(Retrieval Test)があり、任意のクエリで実際に返るチャンクとスコアを確認できます。ここで期待した文章が上位に出ていなければ検索側の問題、出ているのに回答に反映されないならプロンプト側の問題です。プロンプトをいじる前に必ずこのテストを通してください。
チャンクの中身を目視で確認する
次に、ドキュメント詳細から実際に分割されたチャンクを開きます。表が途中で切れている、見出しと本文が別チャンクに分かれている、といった分割ミスはここで一目でわかります。精度が上がらない相談の多くは、この時点で原因が見えます。
症状別の原因早見表
| 症状 | 疑うべき箇所 |
|---|---|
| 検索テストで関連チャンクが出てこない | チャンク分割・インデックス方法 |
| 関連チャンクは出るが順位が低い | 検索方式・リランク |
| チャンクは正しいが回答が薄い | Top K・親子チャンク |
| チャンクが空・文字化けしている | 元資料(スキャンPDF等) |
| 検索結果は正しいのに無視される | プロンプト・変数の受け渡し |
原因1:チャンク分割が資料の構造に合っていない
最も効果が大きく、最初に見直すべきなのがチャンク設定です。Difyには一般モードと親子(Parent-child)モードがあります。
一般モードの区切り文字と最大チャンク長
一般モードでは、区切り文字(Delimiter)・最大チャンク長・チャンクオーバーラップの3つを指定します。区切り文字は段落単位なら
、行単位なら が基本です。社内規程やFAQのように1問1答の構造がある資料は、見出し記号を区切り文字に指定すると意味のまとまりが保たれます。オーバーラップは隣接チャンク間で文脈をつなぐための重複文字数で、文が途中で切れて意味が失われる資料では少し増やすと改善します。
親子チャンクに切り替える判断基準
親子モードは、検索には小さい子チャンクを使い、LLMに渡すときは大きい親チャンクを渡す方式です。「検索は当たるのに回答の情報量が足りない」ときに効きます。親チャンクは段落単位のほか、ドキュメント全体を1つの親にする Full Doc も選べますが、Full Docでは先頭10,000トークンまでしか処理されない点に注意が必要です(出典: Dify公式ドキュメント(チャンク設定))。長い資料をFull Docで入れて後半が答えられない、というのは典型的な落とし穴です。
前処理ルールでノイズを削る
チャンク化の前に、連続する改行の圧縮・連続スペースやタブの正規化・URLとメールアドレスの削除といった前処理を有効にできます。Webページから取り込んだ資料はナビゲーションやリンクがノイズになりやすいため、URL削除だけでも検索の当たり方が変わります。
原因2:インデックス方法と検索方式の選択ミス
チャンクが適切でも、インデックスと検索方式が合っていなければ拾えません。
経済的インデックスのままになっていないか
Difyのインデックス方法には高品質(High Quality)と経済的(Economical)があります。経済的はチャンクごとに10個のキーワードで検索する方式で、埋め込みモデルのトークンを消費しない代わりに検索精度は明確に落ちます。さらに、高品質で作成したナレッジベースは後から経済的へ切り替えられません。コスト優先で経済的を選んだまま精度に悩んでいるケースは珍しくないので、まず現在の設定を確認してください。
ベクトル検索・全文検索・ハイブリッド検索の使い分け
高品質インデックスでは3つの検索方式が選べます。用途の目安は次のとおりです。
- ベクトル検索:言い換えや曖昧な質問に強い。用語がゆれる問い合わせ対応向き
- 全文検索:型番・法令名・固有名詞など、文字列一致が重要な資料向き
- ハイブリッド検索:両方を同時に実行して並べ替える。迷ったらここから
「製品コードで聞いても出てこない」という症状はベクトル検索単独のときに起こりやすく、ハイブリッドに変えるだけで解決することがあります。
ハイブリッド検索の重み設定
ハイブリッド検索では、リランクモデルを使わずに意味重視とキーワード重視の重みを自分で調整できます。リランクのトークン費用をかけずに傾向だけ変えたいときは、まず重み設定を動かすほうが手軽です(出典: Dify公式ドキュメント(インデックス方法と検索設定))。
原因3:Top Kとスコア閾値で答えが削られている
設定画面で見落とされがちなのが、この2つの数値です。デフォルトのまま運用している例が非常に多い箇所です。
Top Kが3のままでは足りないケース
Top Kは、クエリに最も近いチャンクを何件取得するかの設定で、既定値は3です。複数の資料をまたいで根拠を集める必要がある質問では、3件では材料が足りません。まず5〜8件に増やして回答の変化を見るのが手早い検証です。ただし増やすほど無関係なチャンクも混ざり、トークン消費も増えます。
スコア閾値0.5で切り捨てられている
スコア閾値は、取得対象とする最低類似度で既定値は0.5です。専門用語が多い資料や短い質問では、正しいチャンクでもスコアが0.5に届かず、検索結果が0件になることがあります。「何を聞いても知りませんと返る」ときは、まず閾値を下げて0件になっていないかを確認してください。
リランクモデルを入れるべきタイミング
リランクモデルは、検索で返ってきたチャンクを 別のモデルで並べ替える機能で、追加のトークンを消費します。Top Kを広めに取ったうえで上位の並びだけを良くしたい、という段階になってから入れるのが費用対効果の良い順番です。最初からリランクを入れても、そもそも検索で拾えていなければ効果はありません。
原因4・5:資料側とプロンプト側に問題がある
原因4:元の資料からテキストが抽出できていない
スキャンした画像だけのPDF、図版に文字が埋め込まれた資料、複雑な結合セルを含む表は、取り込めてもチャンクの中身が空に近くなります。チャンクを目視して内容が入っていなければ、先にテキスト化してから登録し直すのが確実です。同種のつまずきは他のAIツールでも起きるため、NotebookLMでソースを追加できないときの原因と対処の切り分けも考え方の参考になります。
また、無料のSandboxプランはナレッジ文書50件・保存容量50MBが上限です。業務資料を入れていくとすぐに到達し、「入れたつもりの資料が入っていない」状態になります。2026年7月時点の上限は次のとおりです。
| プラン | 年額(1ワークスペース) | ナレッジ文書 | 保存容量 | アプリ数 |
|---|---|---|---|---|
| Sandbox | 無料 | 50件 | 50MB | 5 |
| Professional | $590 | 500件 | 5GB | 50 |
| Team | $1,590 | 1,000件 | 20GB | 200 |
出典: Dify公式料金ページ
原因5:プロンプトが検索結果を活かしていない
検索テストでは正しいチャンクが出るのに回答が的外れなら、原因は生成側です。ワークフローで知識取得ノードの出力変数がLLMノードのプロンプトに正しく渡っているか、システムプロンプトに「提供された文脈のみを根拠に答え、根拠がなければ不明と答える」といった指示があるかを確認します。ノードのつなぎ方そのものに不安がある場合は、Difyワークフローの使い方(LLMを組み合わせる手順)で構成を確認しておくと切り分けが早くなります。
改善の優先順位【効果×手間の採点表】
設定項目が多いため、闇雲に触ると何が効いたかわからなくなります。編集部で切り分け手順を組み立てるにあたり、改善効果と作業の手間を5点満点で整理しました(数値は実務での体感を指標化したもので、公式の指標ではありません)。
| 順番 | やること | 効果 | 手間 | 再構築の要否 |
|---|---|---|---|---|
| 1 | スコア閾値を下げて0件を解消 | 5 | 1 | 不要 |
| 2 | Top Kを3→5〜8に増やす | 4 | 1 | 不要 |
| 3 | ハイブリッド検索に切り替える | 4 | 1 | 不要 |
| 4 | チャンクの区切り文字・長さを調整 | 5 | 3 | 必要 |
| 5 | 親子チャンクに変更 | 4 | 3 | 必要 |
| 6 | リランクモデルを追加 | 3 | 2 | 不要 |
| 7 | 元資料をテキスト化して入れ直す | 5 | 5 | 必要 |
ポイントは、再構築が不要な1〜3を先に試すことです。ここは数分で戻せるため、効果の有無をすぐ判定できます。
実際にやりがちな失敗例3つ
- 設定を一度に3つ変える:どれが効いたか判別できず、次の資料で再現できません。1つずつ変えて検索テストで比較します。
- チャンクを小さくしすぎる:ヒット率は上がっても文脈が切れ、回答が断片的になります。小さくするなら親子モードとセットで考えます。
- 資料を全部まとめて1つのナレッジに入れる:用途の違う資料が混ざると無関係チャンクが上位に来ます。ナレッジは用途単位で分けるほうが精度は安定します。
逆説的アドバイス:ナレッジで解かないほうが早い場合
参照する資料が数ページで固定なら、ナレッジベースを使わずプロンプトに直接貼るほうが速く、精度も安定します。RAGは「資料が多い・更新される・全文は入りきらない」ときに価値が出る仕組みです。件数が少ないうちからチューニングに時間をかけるより、まず直貼りで運用し、資料が増えてからナレッジへ移すほうが合理的です。作った仕組みを業務に流し込む段階になったら、Difyとn8nを連携する手順もあわせて検討してください。
まとめ:検索テストを起点に、戻せる設定から試す
Difyのナレッジ精度が上がらないときは、検索テストで「拾えているか」を先に判定し、スコア閾値・Top K・検索方式という戻しやすい設定から順に触るのが最短です。それでも改善しなければ、チャンク分割と元資料の品質という再構築が必要な領域に踏み込みます。設定を1つずつ変えて比較する習慣をつければ、別の資料でも同じ手順で立て直せるようになります。Difyそのものの基本操作を確認したい場合は、Difyの使い方入門(ノーコードでAIアプリを作る方法)もあわせてご覧ください。

