Difyを活用したチャットボットの作り方|RAG設定から公開まで

この記事の結論
・ノンコーディングでRAG対応のAIチャットボットを簡単に構築可能

・基本作成から独自データ連携、Web公開までの手順をステップ解説

・回答精度を高めるにはナレッジ設定とプロンプトの調整が重要

Difyを使って、自社データ(ナレッジ)に基づいた回答ができるチャットボットをどのように作成するのか、具体的な手順を解説します。

Difyは高機能である反面、設定項目が多く、どの手順で進めれば最短で動くものが作れるのか迷うことも少なくありません。

本記事では、ノンコーディングで「独自データ(RAG)」を活用したAIチャットボットを構築し、Webサイト等で動かすまでの手順をステップバイステップで紹介します。

「基本作成 → 独自データ連携(RAG) → 機能拡張 → 公開」という、最も標準的かつ需要の高い構築フローに沿って進めますので、記事を見ながら操作を行ってください。

AIエージェント・AIシステム開発ならKAGEMUSHA!

株式会社KAGEMUSHAが提供する自律型AIエージェントは、定型業務の自動化から複雑なタスク進行まで、一連の業務フローをAIが主体的に遂行します。

社内データを統合した高い業務理解度と、現場オペレーションに合わせた柔軟なカスタマイズが強みです。

導入直後から成果が見える運用設計も特徴で、「何から自動化できるのか」を資料で詳しく解説しています。こちらのバナーから無料でダウンロードしてください。

株式会社KAGEMUSHA_AIエージェント資料CTA
目次

Difyチャットボットの仕組みと作成前の準備

Difyでチャットボットを作成する前に、ツールの基本的な仕組みと、作業を開始するために必要な準備について解説します。

Difyチャットボットの特徴(RAG・マルチLLM対応)

Difyは、オープンソースのLLMアプリ開発プラットフォームです。

最大の特徴は、プログラミングコードを書くことなく、GUI操作のみで高度なAIチャットボットを構築できる点にあります。

特に以下の2点が強力な機能として挙げられます。

  • RAG(検索拡張生成)への標準対応
    自社のマニュアルやPDF、テキストデータをアップロードするだけで、その内容に基づいた回答を生成させることができます。これを「ナレッジ」機能と呼びます。
  • マルチLLM対応
    OpenAI社のGPT-4やAnthropic社のClaudeなど、複数のAIモデルから用途や予算に合わせて選択・切り替えが可能です。

アカウント作成とAPIキーの準備

Difyを利用するには、以下の2つの準備が必要です。

  1. Dify環境の用意
    Difyには、ブラウザですぐに利用できる「クラウド版」と、自社サーバー等にインストールする「ローカル版(Docker使用)」があります。手軽に始める場合はクラウド版のアカウントを作成してください。
  2. LLMプロバイダーのAPIキー
    Dify自体は「枠組み」を提供するツールであり、実際に文章を生成するAIモデル(LLM)を利用するには、各プロバイダーのAPIキーが必要です。

OpenAI(GPTシリーズ)を使用する場合はOpenAIのAPIキー、Anthropic(Claudeシリーズ)を使用する場合はAnthropicのAPIキーを用意しましょう。

Difyの管理画面右上のアイコンから「設定」→「モデルプロバイダー」へ進み、取得したAPIキーを入力して連携を完了させてください。

【基本編】Difyでチャットボットを新規作成する手順

まずは独自データを使わず、基本的な会話ができるチャットボットを作成し、動作確認を行うまでの手順を解説します。

「最初から作成」でのアプリ立ち上げとタイプ選択

Difyのダッシュボード(スタジオ)にログインし、以下の手順でアプリを新規作成します。

  1. 画面上の「最初から作成」ボタンをクリックします。
  2. 作成画面のポップアップが表示されるので、以下の通り設定します。
    ・アプリのタイプ: 「チャットボット(Chatbot)」を選択
    ・チャットボットのオーケストレーション方法: 「基本(Basic)」を選択
    ・アプリのアイコンと名前: 任意の名前を入力(例:社内ヘルプデスク用ボット)
  3. 「作成する」ボタンをクリックします。

これでアプリの編集画面(オーケストレーションスタジオ)が表示されます。

使用モデルの選択とプロンプト(人設)の設定

編集画面の左側にある設定パネルで、ボットの頭脳となるモデルと役割を設定します。

  1. モデルの選択
    画面右上のモデル選択プルダウン(例:gpt-3.5-turboなど)をクリックし、連携済みのモデルから使用したいものを選択します。必要に応じてパラメータ設定を開き、Temperature(創造性)などを調整します。
  2. プロンプト(PRE-PROMPT)の記述
    「手順」または「プロンプト」と書かれた入力エリアに、このボットの役割や振る舞いを記述します。

記述例:「あなたは社内規定に詳しいアシスタントです。ユーザーの質問に対して、丁寧な日本語で回答してください。」

デバッグプレビューでの動作確認方法

設定が反映されているか確認します。

  1. 画面右側にある「プレビュー」エリアを確認します。
  2. 入力欄に「こんにちは」などのメッセージを入力し、送信ボタンを押します。
  3. 設定したモデルから回答が返ってくることを確認します。

この段階ではまだ独自データを持っていませんが、一般的な会話が可能であれば基本設定は完了です。

【実践編】独自データを学習させる(RAG)設定手順

次に、自社のマニュアルやドキュメントを読み込ませ、その内容に基づいて回答させる「RAG(Retrieval-Augmented Generation)」の設定を行います。

「ナレッジ」の作成とドキュメントのアップロード

Difyでは、学習データを「ナレッジ」という単位で管理します。

  1. 画面上部のメニューから「ナレッジ」タブをクリックして移動します。
  2. 「ナレッジを作成」ボタンをクリックします。
  3. 「テキストファイルからインポート」を選択し、アップロードエリアに学習させたいファイル(PDF、Word、Markdown、TXTなど)をドラッグ&ドロップします。
  4. 「次へ」をクリックします。

インデックスモード(高品質・経済的)の選び方

アップロードしたデータをAIが検索できるように処理(インデックス化)する設定を行います。ここでは2つのモードから選択します。

  • 高品質(High Quality)
    Embeddingモデル(埋め込みモデル)を使用してベクトル化します。意味的な検索が可能で、精度が高いのが特徴です。
    推奨: 基本的にはこちらを選択します。
  • 経済的(Economical)
    キーワードマッチングなどを使用します。トークン消費を抑えられますが、表記ゆれや文脈理解に弱い場合があります。

モードを選択したら「保存して処理」をクリックします。処理が完了し、ステータスが「利用可能」になるまで待ちます。

チャットボットへのナレッジ紐付けとコンテキスト設定

作成したナレッジを、先ほどのチャットボットアプリに紐付けます。

  1. 上部メニューの「スタジオ」に戻り、作成中のチャットボットアプリを開きます。
  2. 左側設定パネルの「コンテキスト(Context)」にある「追加」ボタンをクリックします。
  3. 先ほど作成したナレッジを選択し、「追加」をクリックします。
  4. プロンプト入力欄に、ナレッジを参照するよう指示を追記します。

「回答の際は、提供されたコンテキスト(ナレッジ)の情報を優先して参照してください」とプロンプトに追記するのがポイントです。

これで、ボットはアップロードされたデータを参照して回答するようになります。プレビュー画面でナレッジに含まれる固有の情報を質問し、正しく回答できるかテストしてください。

ユーザー体験を高める機能追加と公開方法

チャットボットをより使いやすくするための機能追加と、実際にユーザーが利用できるように公開する手順を解説します。

会話のきっかけを作る「オープナー」と「入力候補」設定

ユーザーがチャットを開いた瞬間に表示される挨拶文や、質問の例を設定します。

  • オープナー(会話の開始)
    設定パネルの「機能を追加」をクリックし、「会話の開始(Conversation Opener)」をONにします。初期メッセージを入力します(例:「こんにちは。社内規定について何でも聞いてください。」)。
  • 入力候補(次の質問の提案)
    同じく「機能を追加」から「次の質問を提案」などをONにすると、AIが会話の流れに合わせて次の質問候補を自動表示します。

音声読み上げ(TTS)などの機能追加

必要に応じて、アクセシビリティや利便性を高める機能を追加します。

  1. 設定パネルの「機能を追加」をクリックします。
  2. 「テキスト読み上げ(Text to Speech)」を探し、スイッチをONにします。
  3. 使用する音声モデルと言語(日本語など)を選択します。

これにより、チャット画面にスピーカーアイコンが表示され、回答を音声で読み上げることが可能になります。

Webサイトへの埋め込みコード発行と公開手順

完成したチャットボットを公開し、Webサイト等で利用できるようにします。

  1. 画面右上の「公開する」ボタンをクリックし、「更新」を押して最新の状態を保存します。
  2. 「アプリを実行」ボタンの横にあるメニュー、またはサイドメニューの「概要」から「埋め込み」を選択します。
  3. 以下のいずれかの方法を選びます。
    iframe埋め込み: Webページの一部として表示させるためのHTMLコードをコピーします。
    スクリプトタグ: 画面右下にフローティングボタンとして表示させるためのスクリプトをコピーします。
  4. コピーしたコードを、自社のWebサイトや社内ポータルのHTMLに貼り付けます。

うまく動かない時の対処法と注意点

最後に、回答精度が低い場合の調整方法や、運用上の注意点について解説します。

回答精度が低い場合の調整ポイント

ナレッジを設定したのに期待通りの回答が得られない場合は、以下の設定を見直します。

  • 検索設定(Retrieval Setting)の調整
    コンテキスト設定内の「N選(Top K)」や「スコア閾値」を調整します。参照するドキュメントの断片数(Top K)を増やすと情報量が増えますが、ノイズが混じる可能性もあります。
  • プロンプトの具体化
    「コンテキストに情報がない場合は『分かりません』と答えてください」と指示することで、ハルシネーション(嘘の回答)を抑制できます。

会話が噛み合わない時の「記憶(Memory)」設定

連続した会話で文脈が通じない場合、会話履歴の保持設定を確認します。

設定パネルで「会話の履歴(Conversation History)」や「メモリ」の設定が有効になっているか確認してください。

Difyはデフォルトで過去の会話内容を一定量LLMに送信しますが、この「ウィンドウサイズ」が小さすぎると直前の会話を忘れてしまうことがあります。

API利用料とトークン制限の管理

運用にあたってはコスト管理が重要です。

  • トークン消費: 高品質モードでのインデックス作成や、長い会話履歴の送信はトークンを消費します。
  • API制限: OpenAIなどのAPIには利用枠(クォータ)があります。突然停止しないよう、各プロバイダーの管理画面で利用状況を確認してください。
  • 無料版の制限: Difyのクラウド版(無料プラン)には、作成できるアプリ数やナレッジの容量に制限があります。

本格運用の際は有料プランまたはローカル版への移行を検討してください。

まとめ

Difyチャットボットの作成手順を解説しました。

  1. 基本作成: アプリを立ち上げ、モデルとプロンプトを設定する
  2. RAG設定: ナレッジを作成し、コンテキストとして紐付ける
  3. 機能拡張: オープナーや音声読み上げを追加し、UXを向上させる
  4. 公開: 埋め込みコードを発行し、Webサイトに実装する

まずは手元のドキュメントを1つアップロードし、プレビュー画面で回答精度を確認することから始めてみてください。

設定項目を一つずつ調整することで、自社の業務に特化した高精度なチャットボットを実現できます。

AIエージェント・AIシステム開発ならKAGEMUSHA!

株式会社KAGEMUSHAが提供する自律型AIエージェントは、定型業務の自動化から複雑なタスク進行まで、一連の業務フローをAIが主体的に遂行します。

社内データを統合した高い業務理解度と、現場オペレーションに合わせた柔軟なカスタマイズが強みです。

導入直後から成果が見える運用設計も特徴で、「何から自動化できるのか」を資料で詳しく解説しています。こちらのバナーから無料でダウンロードしてください。

株式会社KAGEMUSHA_AIエージェント資料CTA

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事の監修者

株式会社BuzzConnection/株式会社KAGEMUSHA 代表取締役CEO

2021年に独立し、株式会社BuzzConnectionを設立。複数の事業を運営し、現在はAIを活用したWebアプリケーションの開発、運用や生成AIの普及を目的としたセミナー研修の開催など多角的に活躍している。
2023年4月に株式会社KAGEMUSHAを創業。AI事業に大きく事業を展開。
AIアバターやデジタルヒューマン、AIチャットボット、AI研修など幅広い視点からAIの業務効率化を支援。

目次