Skip to content

3_商品案内チャットボット

このドキュメントは、Dify でチャットボットを作成するための演習手順書です。

1. 説明

社内向けに商品(車両)について案内するチャットボットです。このボットは、登録された車両データ(CSV)に基づき、各車両の価格や仕様、特徴を案内します。

2. 使用するナレッジ

  • 車両データドキュメント:車種名、価格、定員、ボディタイプ、仕様などが記載されたCSVデータ

3. Dify設定手順

手順①:ナレッジの構築

演習環境では事前に登録済みなのでこの作業は不要です。

  1. Dify上部メニューの「ナレッジ」をクリック ⇒ 「ナレッジベースを作成」をクリックします。
  2. ファイルまたはフォルダをドラッグアンドドロップ」の部分に「product_list_cars.csv」をアップロードして「次へ」。
  3. チャンク設定:デフォルトのまま「チャンクをプレビュー」をクリック。画面右に表示されるプレビューで、商品情報が並ぶのを確認する。
  4. インデックス方法:デフォルトのまま「高品質」を選択します。
  5. 埋め込みモデル:「text-embedding-3-small」を選択します。
  6. 検索設定: 「ハイブリッド検索」を選択。詳細の設定はデフォルトのまま。
  7. 保存して処理をクリック。
  8. 埋め込みが完了しましたと表示 されたら先に進みます。

手順②:チャットボットアプリの作成

  1. 上部メニューから「スタジオ」を選択します。
  2. 最初から作成」→「チャットボット」を選択します。
  3. アプリ名:チャットボット:担当者向け商品(車両)案内チャットボット
  4. 説明:AIチャットボットが社内向けに商品(車両)について案内します。
  5. 作成する」をクリックします。

手順③:プロンプトとモデルの設定

  1. モデル設定:モデルに「gemini-2.5-flash-Lite」を選択します。
  2. プロンプト」欄に、以下のテキストを貼り付けてください。
あなたは自動車を扱う「ミラセクト」の販売店向け営業AIです。

以下のルールを必ず守ってください。

【回答ルール】
- 回答は、登録されている車両データ(CSV)の内容のみを根拠にしてください
- CSVに存在しない車種・仕様・価格は回答しないでください
- 不明な場合は「取り扱いがない、または情報がありません」と回答してください
- 数値(価格、定員など)は正確に記載してください

【禁止事項】
- データにない内容を推測で補うこと
- 一般的な自動車知識で補足すること
- 他社製品との比較を行うこと

【回答スタイル】
- 初心者にも分かりやすい説明
- 箇条書きを基本とする
- 丁寧で落ち着いた口調

手順④:コンテキスト(ナレッジ)の設定

  1. コンテキストメニューで「追加」をクリックします。
  2. 手順①で作成したナレッジ(product_list_cars.csv)を選択します。

手順⑤:会話の開始の設定

  1. 画面右下の「管理」をクリックします。
  2. 会話の開始」をオンにする。
  3. 会話の開始部分にある「オープナーを書く」をクリックします。
  4. 初期メッセージとして、以下を入力します。

    ミラセクトの販売店向け営業AIです 。社内データに基づき、各車両の価格や仕様、特徴をご案内します 。「Orion(オリオン)の価格を教えて」や「EVのラインナップは?」など、営業活動のサポートとしてお気軽にご質問ください。知りたい情報を入力してください。
    

  5. 設定後、「保存」をクリックします。

手順⑥:保存と公開

  1. 画面右上の「公開する」→「更新を公開」をクリックして保存します。

Warning

Dify では、上記の保存作業を行うと、保存とともに公開設定がされ、
環境によっては Dify にログインしていないユーザーでもアプリにアクセス可能 になります。

限定したい場合は、左上のアプリ名をクリックし、Web App とバックエンドサービス APIをオフにしてください。
※ 公開可否や利用範囲については、事前に管理者へ確認してください。


4. 動作確認

以下の質問リストを使用して、チャットボットがデータに基づき正確に回答を行うか確認してください。

1. 基本的な質問例(低難易度:データ直接抽出の確認)

  1. 「Orion(オリオン)」の価格を教えてください。
    判定基準:3,100,000円と正確に回答されること。

  2. 「Vega(ベガ)」は何人乗りですか?
    判定基準:7人乗りと正確に回答されること。

  3. 「Luna(ルナ)」のボディタイプは何ですか?
    判定基準:ハッチバックと回答されること。

2. 複数のデータを取得できなくてはいけないケース

  1. 4WD(四輪駆動)の車にはどのようなものがありますか?
    判定基準:Nova、Aurora、Zenith、Stratosなどがリストアップされること。

  2. EVの車を探しています。どんな選択肢がありますか?
    判定基準:Aster MotorsのEV車(Luna、Eclipse、Zenith)の仕様、価格、注意点が箇条書きで正しく回答されること。

対象の車種が漏れてしまう場合

AIに渡すデータの検索数であるTOP-Kが低いと「EVの車種は?」に対して、「EV専用モデルではありません」などの情報も取得してしまい、あまりピックアップできない場合があります。他にも改善方法はありますが、今回のケースでは「TOP-K」を6くらいにすると、複数取得する必要があるケースに対応しやすくなります。
ただし、AIに渡す文字数がわずかに増えるため、コストやパフォーマンスとトレードオフがあります。

3. 存在しない条件への対応確認

  1. Solaceにスポーツ仕様はありますか?
    判定基準:スポーツ仕様の設定はなく、CSVに記載されている内容のみが取り扱い対象である旨が回答されること。

  2. マニュアル車で7人乗りのSUVはありますか?
    判定基準:その条件に該当する車両は現在のデータにない旨が回答されること。