Difyの「チャットフロー」でRAG+αのチャットボットを実現!アプリの作り方・ブロック早見表・設定方法を一挙解説
「Dify」はプログラミング不要で、ChatGPT搭載モデルからローカルモデルまで、多彩な生成AIを使ったアプリが作れるノーコードプラットフォーム。
リコーやサイバーエージェント等、国内有名企業でも導入・活用が進む、現在注目を集めている生成AI系ソリューションです。
そんなDifyでは、フロー形式で複雑なチャットボットを構築できるひな形「チャットフロー」が選べます。
今回はこのチャットフローについて、アプリの作成・公開方法から機能の早見表、活用シーンまでを一挙に紹介します。
本noteは「RAG+αを備えた高度なチャットボットを内製化したい方」におすすめです。完読いただくと、以下のことがわかるようになるでしょう!
1️⃣ Difyのチャットフローでのアプリ作成・公開方法
基本の作り方からWebサイトへの実装方法まで、実際の手順とともに解説します。
2️⃣ Difyのチャットフローを使いこなすコツ
ブロックの早見表やその他設定方法についてもわかりやすくお伝えします。
3️⃣ Difyのチャットフローの具体的な活用シーン
おすすめの使い所・構築例も余すところなくご紹介します。
📌 Noteをご覧になっている方へ
WEELでは、生成AIを業務や事業に取り入れたい方向けの各種セミナーを開催しています。
「どんな活用ができるのか知りたい」「自社でどう始めればいい?」という方に向けて、現場視点のノウハウや最新事例をご紹介しています。
✅ セミナーに参加する
Difyの「チャットフロー」とは?
プログラミング不要で各社の生成AIモデルを搭載したアプリが作れるプラットフォーム「Dify」では、5種類のアプリタイプ(ひな形)が選択可能です。
「チャットフロー」はそんなDifyのアプリタイプの一つで、条件分岐による複雑な処理・双方向の会話機能・会話記憶機能を備えたチャットボットが作れます。このチャットフローではより具体的に、以下のようなことが可能です。
・双方向の会話・会話記憶に対応したチャットUIの使用
・ナレッジに基づく回答生成(RAG)
・ユーザー入力に応じた処理・シナリオの選択
・名前や電話番号等の特定要素の抽出・記憶 等
Difyのチャットフローを活用することで、実務レベルの高度なチャットボットがラクラク開発できちゃいます。場合によっては、チャットボットの完全内製化も夢じゃありません!
相談いただいた企業に「これだったらDifyを社内に展開しちゃいましょう」ってなるケース多い。Dify知らない人まだまだ多いから、適切に役に立つ企業にはもっと広めたい
— 田村 WEEL代表取締役 | 生成AI×新規サービス開発 (@tamtam_weel) April 21, 2025
なお、Difyでのチャットボット全般の作成方法について詳しく知りたい方は、下記の記事も併せてご確認ください。
Difyでのチャットフローの作り方・使い方
ここからは、Difyのアプリタイプ「チャットフロー」でのアプリの作り方・使い方を、実際の画面のようすとともにご紹介していきます。
※今回はローカル版Difyを活用しますが、Web版でも同じ手順でアプリを作成可能です。
基本の作り方・使い方
まずは、Difyのチャットフロー入門ということで、「分岐なしのシンプルなキャラクターボット」を作りながら操作方法をご紹介します。
では早速、Difyの「スタジオ」画面から「最初から作成」を選択して、アプリ作成画面を開きましょう。

「最初から作成」をクリックすると、以下の画面に移れます。ここではアプリタイプの選択とアプリの基本設定が可能です。今回は「チャットフロー」を選んで、アプリの名前・アイコン・説明も設定しましょう。

なお、アプリのアイコンは当該箇所をクリックすることで設定可。ここでは「Dify側で用意されている絵文字」または「自分でアップロードした画像」をアイコンに設定できます。

ここまでの基本設定を済ませたのち「作成する」をクリックすると、ユーザー入力から回答までブロックが並ぶチャットフロー作成画面(下図)に移れます。

このチャットフロー作成画面では、以下の操作が可能です。

それではここから、実際にチャットフロー形式のアプリを作っていきましょう。
まずは、一連の処理のスタート地点にあたるブロック「ユーザー入力」をクリックしてみてください。ブロックをクリックすると、以下のとおり画面右側に設定パネルが表示されます。
ユーザー入力の場合は、ここから「+」で入力フィールド(変数)の追加が、その下から既存の入力フィールドの確認が可能です。
※今回はユーザー入力の追加・変更を行いません。

次に、ブロック「LLM」をクリックして、設定パネルからチャットフローに搭載するAIモデル(LLM)を選びます。「AIモデル」欄のモデル名をクリックして、モデル欄から任意のものを選びましょう。
※今回はGoogleの軽量LLM「Gemini 2.5 Flash-Lite」を選択しました。

続いては、同じくLLMのプロンプト周りの設定です。「SYSTEM」欄へはLLMにとらせたい役割・振る舞いを、「USER」欄へはユーザー入力の変数をそれぞれ入力しましょう。
※「USER」欄では、デフォルトの状態でユーザー入力の変数が設定されています。

また、今回はブロック「LLM」の設定パネル下部にも変更を加えてみます。会話の記憶機能「メモリ」と画像の入力機能「ビジョン」をそれぞれ有効にしましょう。

最後は、処理結果をユーザーに返すブロック「回答」の設定です。今回は「応答」欄にLLMのテキスト回答(LLM {x}text)を記入します。これで、フロー自体の設定は完了です。

さて、今度はDifyのチャットフロー作成画面の右上にある「機能」をクリックしてみてください。すると以下のように、チャット画面のUI・機能を設定する画面が表示されるはずです。今回はこちらも一工夫してみましょう。

それではまず、会話前にメッセージとユーザー入力例を表示させる「会話の開始」を有効にします。続けて、「オープナーを書く」もクリックしましょう。

すると以下のとおり、会話前のあいさつ・メッセージと最大10件までのユーザー入力例を設定できます。設定後は「保存」をクリックしてください。

次に、「ファイルアップロード」も有効にします。今回は画像も入力できるようにしたいので、設定パネルから「画像」を選択しましょう。

続いては、ここまで作成・設定してきたチャットフローの動作テストに移ります。画面右上の「プレビュー」をクリックして、テスト用の会話画面を開きましょう。

それではまず、先ほど設定したユーザー入力例をクリックしてみます。気になる結果は以下のとおり、完璧です。

次に、クリップアイコンを選択して画像ファイルをローカルアップロードし、画像入力も試してみましょう。
こちらの結果も以下のとおり問題ありません。最後に、作成したチャットフローの保存へと移りましょう。

チャットフローを保存するには画面右上の「公開する」を選択したのち、「更新を公開」もクリックします。これで正真正銘、チャットフローは完成です!

なお、Difyで作成したチャットフローは、アプリとして本番稼働が可能です。アプリとして使いたい場合は、作成画面の右上「公開する」から「アプリを実行」を選びましょう。

高度な作り方・使い方
ここからは、Difyのチャットフロー上級編。条件分岐・コード実行ありの高度なアプリを作っていきます。
今回チャットフローで制作するのは、「ユーザーからの質問にナレッジまたはWeb検索を活用して回答するチャットボット」です。
仕様は下記のとおりで、ナレッジに該当する知識がない場合だけWeb検索を行うしくみになっています。
【仕様】
①ユーザー入力:短文のみを受け付け
②コード実行:入力が70文字を超える否かを判別
③IF/ELSE:入力文字数の判別結果で分岐
・(処理なし)
・LLM:入力に関係するテキストを生成
④コード実行:入力と生成テキストを統合
⑤知識検索:入力&生成テキストに関係するナレッジを検索
⑥LLM:ナレッジの有無を判別
⑦IF/ELSE:ナレッジの有無の判別結果で分岐
・LLM→回答:ナレッジをもとに回答生成
・Tavily Search→LLM→回答:Web検索結果をもとに回答生成

それでは以下、各ブロックの設定を駆け足で紹介していきます。
最初に「ユーザー入力」は、デフォルトの短文とファイル入力の変数のみがある状態をキープ。後続の各ブロックで設定を行い、短文の入力のみを受け付ける形としました。

次に、ナレッジを確実に見つけるため、ユーザー入力の長さを担保するしくみを設けます。
まず、ブロック「コード実行」にて、文字数をカウントするPythonコードを記入。ユーザー入力が70文字を超えるか否かで出力が変わるようにしました。

続いて、条件分岐のブロック「IF/ELSE」では、先ほどのコード実行の結果で後続の処理が変わるようにしています。

最後に、ユーザー入力が70文字以下となった場合にのみ、ブロック「LLM」での処理を実行。ユーザー入力に関係する用語を生成して、ナレッジが見つかりやすいように工夫(MultiQueryRetriever)しました。

以上の工程で得られたユーザー入力とLLM回答については、「コード実行」で一つのテキストにまとめています。

そして続くブロック「知識検索」では、コード実行でまとめたユーザー入力&LLM回答をクエリに、WEELの生成AIずかん全記事からなるナレッジベースを検索。ユーザーの悩みを解決できる生成AI・AIツールを探します。

また、その後のブロック「LLM」では、クエリに関連するナレッジが見つかったか否かをLLMに判別させています。

さらに、「IF/ELSE」ではLLMによる判別結果を受けて、後続の処理が変わるようにしました。

さて、条件分岐後は回答生成が始まります。
まず、ナレッジが見つかった場合についてはそのまま「LLM」でユーザー入力(短文のみ)とナレッジに基づく回答生成を、「回答」でユーザーへの回答提示をそれぞれ行います。


次に、ナレッジが見つからなかった場合は、ブロック「Tavily Search」の出番です。こちらではナレッジ検索に使ったクエリ(ユーザー入力&LLM回答)で、Web上の情報を検索させています。

その後は「LLM」でユーザー入力とWeb検索結果に基づく回答生成を、「回答」でユーザーへの回答提示をそれぞれ実施。これにてチャットフローでの全処理は完了です。


さて、今回制作したチャットフローについても、プレビュー機能でのテストを行います。
まず、ナレッジに関連する質問を70文字未満で投げかけてみると、以下のとおり入力に関係する用語の生成とナレッジに基づく回答生成が正常に作動。
WEELの生成AIずかんで過去に扱ったAIモデル「Qwen3-VL」を含む回答が返ってきました。
※チャットフローのプレビューでは、回答生成時に辿ったフローが強調されます。

次に、ナレッジにない質問を70文字以上で入力した場合の回答は以下のとおり。Web検索の結果に基づく内容が含まれています。

あとは、このチャットフローを「公開する」から保存すれば作成完了です。
外部Webサイトでの公開方法
Difyでは、作成したチャットフローを外部Webサイトで公開することもできます。以下、その手順もみていきましょう!
チャットフローを公開するにはまず、作成画面右上の「公開する」から「サイトに埋め込む」を選択します。

続けて、埋め込み時のUIを選んでその下にある埋め込み用のHTMLコードをコピーしてください。埋め込み時のUI&コードは、<iframe>タグ1種類と<script>タグ2種類の計3種類から選べます。

次に、DifyでコピーしたチャットフローのHTMLコードをWebサイトに埋め込んでいきます。
子ページ・個別の記事に埋め込む場合は<iframe>タグの埋め込み用HTMLコードを選択し、記事中の任意の箇所にペーストしましょう。
なお、WordPressではブロック「カスタムHTML」から<iframe>タグの埋め込み用HTMLコードが挿入可能です。

その後、記事を公開orプレビューを表示すると、以下のとおり外部WebサイトからDifyで作ったチャットフローが使えるようになります。

また、親ページ・Webサイト全体にDify製チャットフローを埋め込みたい場合は、<script>タグの埋め込み用HTMLコードをコピーします。

コピーしたコードは、WebサイトのHTMLファイル末尾(</body>直前)にペーストしてください。

あとは、WebサイトorHTMLファイルを開くと以下のとおり、チャットフローが画面右下に表示されます。

Difyのチャットフローのブロック早見表
以下、Difyのチャットフローで使えるブロックについて、名称と機能を表にまとめました。アプリ作成時にお役立てください!



Difyのチャットフローに関するその他設定の方法
ここからは、Difyのチャットフローに関係するその他設定についても、操作方法・手順をご紹介します。
APIモデルの導入方法
DifyではGPTやGemini等の大手APIモデルからHugging Faceのローカルモデルまで、好きな生成AIモデル(LLM)を導入してアプリに組み込めます。
今回はそれらのうち、導入が簡単なAPIモデル(Gemini)について、導入の流れをみていきましょう!
Difyに生成AIモデルを導入するにはまず、画面右上のアカウントアイコンをクリック。そこから「設定」を選択します。

次に、遷移先の設定画面で左側サイドバーの「モデルプロバイダー」を選択し、以下の画面を開いてください。続けて、任意のモデルプロバイダー(今回はGemini)にカーソルを合わせて「インストール」をクリックします。

クリック後は確認画面が表示されますので、そちらでも再度「インストール」を選択し、インストール完了までしばらく待ちましょう。
インストール完了後は再度、設定画面から「モデルプロバイダー」の画面を開きます。すると以下のとおり、インストールしたモデルプロバイダーについて「セットアップ」の欄が表示されるはずです。
今度はこちらをクリックしましょう。

「セットアップ」をクリックすると、以下のAPIキー認証設定画面が表示されます。
あとはAPI Keyの欄にGoogle AI StudioのAPIキー発行画面で取得したAPIキーを入力して「保存」をクリックすれば準備完了!
これでようやく、チャットフローの作成画面からインストールした生成AIモデルが使えるようになります。

ナレッジ作成の方法
Difyはテキストファイル・Notion・Webサイトの独自情報を生成AIの回答に反映させる「ナレッジ」機能も備えています。こちらはプログラミング不要で、データベースの作成からRAGの実装までが可能です。
以下、そんなナレッジ機能の要である、ナレッジ(ナレッジベース)の作成手順をみていきましょう!
ナレッジを作成するにはまず、Difyの画面上部から「ナレッジ」を選択。続けて「ナレッジベースを作成」をクリックします。

次に、ナレッジに使用するデータソースをテキストファイル・Notion・Webサイトの3種類から1つ選びます。
今回はテキストファイルを選択して、その下にドラッグ&ドロップでナレッジ化したいファイルをアップロードしてみましょう。ここでデータソースの準備ができたら「次へ」をクリックします。

さて最後はナレッジの作成方法の設定です。今回、ここではチャンクとインデックスについての設定のみを行います。設定後は「保存して処理」をクリックして、しばらく待ちましょう。

しばらく待って、画面が以下のようになればナレッジは完成。これで、アプリ作成画面からナレッジを実装できるようになります。

ちなみに、チャットフローでナレッジを実装したい場合は、ブロック「知識検索」を追加します。その後は、設定パネルのナレッジベース欄から「+」をクリックしてナレッジを選択・追加すれば実装完了です。

Difyのチャットフローの活用シーン
ここでは、Difyのチャットフローに最適な活用シーンを4例ご紹介します。
社内でのナレッジ共有
Difyのチャットフローはナレッジ機能や会話記憶機能を完備。これらは社内でのナレッジ共有用チャットボットの作成におすすめです。
Difyのチャットフローで構築されたナレッジ共有用チャットボットであれば、以下のようなことが実現可能です。
・過去に他の人から受けた質問の共有
・過去の製品仕様・案件・取引先等の共有
(テキスト抽出が便利)
・新人研修のサポーターとしての活用
・社内ナレッジに基づく文書案の生成
顧客対応
Difyのチャットフローは顧客対応用チャットボットの構築にも最適です。
こちらは社内文書やマニュアル等のナレッジと連携させたり、質問分類器&条件分岐で質問からクレームまでシナリオを変えて対応したりといったことが可能。
さらには、自社WebサイトやSaaSでの公開にも対応しており、24時間体制できめ細やかな顧客対応が提供できます。
診断フォーム・営業代行
営業の領域でもDifyのチャットフローは大活躍!条件分岐とテキスト抽出を組み合わせて診断・ヒアリングを実施したのち、ナレッジをもとに最適な製品を提案するといったことが可能です。
ツール連携
Difyのチャットフローでは、エージェントやHTTPリクエストを介して、社内システム・自社SaaS等との相互のやり取りが可能です。
こちらをフローに組み込んだチャットボットなら、ユーザー情報・在庫・スケジュール等の管理を効率化できるでしょう。
Difyのチャットフローに関するよくある質問・FAQ
最後に、Difyのチャットフローでのよくある質問にお答えしていきます。
Q.チャットフローとワークフローの違い
A.チャットフローは「人との会話」に、ワークフローは「タスクの自動化」にそれぞれ特化しています。両者の具体的な違いについては、下表をご覧ください。

Q.Difyの料金は?無料で使える?
A.DifyはWeb版・ローカル版ともに無料で利用可能です。うち、ローカル版については基本無料となっていて、Web版は無料プラン1種と有料プラン2種(下図)に分かれています。
どのプランでもチャットフローは作成・利用できますが、使用頻度が高い場合はやり取りの制限が緩いWeb版有料プランまたは無制限のローカル版がおすすめです。

Q.音声入力やファイルアップロードには対応していますか?
A.Difyのチャットフローでは、「音声の入出力」と「PDFや画像等のファイルアップロード」が可能です。
Q.どの生成AIモデルが使えますか?
A.Difyでは、下記を筆頭にAPIモデル・ローカルモデルを問わず多種多様な生成AIモデルが使えます。特に、チャットフローの場合は、行いたい処理別に最適な生成AIモデルが選べて便利です。
OpenAI
Anthropic
Gemini
Llama
Ollamaモデル
Hugging Faceモデル 等
Q.コスト(トークン消費)を抑える方法は?
A.Difyのチャットフローで運用時のコスト(トークン消費)を抑える方法としては下記が挙げられます。精度をそこまで求めない処理では廉価モデルを選び、処理を簡略化することがコストカットのコツです。
軽量モデルやローカルモデルを選択
出力の長さを設定で制限
ナレッジ検索の回数を条件分岐で制限 等
Difyのチャットフローで柔軟な自動対応を実現しよう!
本noteでは、Difyのアプリタイプ「チャットフロー」について機能や使い方をご紹介しました。
Difyのチャットフローでは、会話の記憶や条件分岐、ナレッジ機能をフル装備したチャットボットが構築可。単なる自動会話で終わらない、実務で通用するレベルのチャットボットを内製化できます。
Difyのチャットフローで、社内ナレッジ共有から顧客対応まで、より柔軟な自動化を実現しちゃいましょう!
なお、ノーコードツールのn8nの事を知りたい場合は以下の記事をご覧ください。
WEELでは、生成AIを業務や事業に取り入れたい方向けの各種セミナーを開催しています。
「どんな活用ができるのか知りたい」「自社でどう始めればいい?」という方に向けて、現場視点のノウハウや最新事例をご紹介しています。
✅ セミナーに参加する
生成AIの最新ニュース・事例・イベント情報をいち早く知りたい方は、ぜひWEELの無料メルマガをご購読ください!
✉️ メルマガに登録する
💡 AI活用、どこから始めればいいかお悩みの方へ
「AIエージェントって実際にどう使うの?」
「チャットボット作ってみたいけど何から始めれば…?」
そんな方向けに、無料の個別相談をやってます!
現場での事例も交えて、わかりやすくお話しします。
✨今すぐAIの専門家と話す✨
