【Dify】実践課題1-1:プレゼント相談チャットボットを作ろう

Lesson1では、Difyでチャットアプリを作るための基本操作をひと通り学んできました。
しかし理解したと思っていても、実際に自分で作りだすと、設定の流れやプロンプトの組み方で迷うことは少なくありません。
そこで今回は、Lesson1の復習として「プレゼント相談チャットボット」を作ってみましょう。
ユーザーに質問しながら条件を整理し、予算に合ったプレゼントを提案するチャットボットを作ることで、チャットアプリの基本設定、入力項目の作成、変数を使ったプロンプト設計をまとめて確認できます。
「記事は読んだけれど、まだ自分で作れる自信がない」という方こそ、ぜひ手を動かして挑戦してみてください。
Lesson1:Dify入門|環境構築と最初の生成AIアプリ開発
・Lesson1-1:生成AIアプリ開発の入り口|Difyとは何かを知ろう
・Lesson1-2:Difyを使う準備|環境構築とセットアップ
・Lesson1-3:初めてのチャットボットアプリを作ろう
・Lesson1-4:RAG入門|ナレッジベースを作ろう
・Lesson1-5:作ったアプリを公開しよう|方法と注意点まとめ
・実践課題:プレゼント相談チャットボットを作ろう ◁今回はここ
Lesson2:まずは体験|基本的なアプリを4つ作ろう
Lesson3:文章業務の自動化|実務で使えるアプリを開発しよう
Lesson4:ファイル処理で広がるDifyアプリ開発
Lesson5:RAG実践|ナレッジ検索アプリを作ろう
Lesson6:機能拡張と外部システム連携|ツールを使いこなそう
Lesson7:総仕上げ|準備を整えて生成AIアプリ開発者へ
プレゼント相談チャットボットのダウンロード
今回学習する「プレゼント相談チャットボット」は、ダウンロード版も用意しています。
インポートするだけで使用できますが、できればこのまま記事を読み進め、ご自身の手でこのアプリを作成することをお勧めします。
実践課題:プレゼント相談チャットボットを作ろう

Dify学習館で紹介する「プロンプト生成/改善アプリ」は、非会員の方でも利用できるようダウンロード版を用意しています。
非会員の方は下記のダウンロードリンクをクリックしてご利用ください。
会員の方はこのまま記事を読み進め、ご自身の手でこのアプリを作成することをお勧めします。実践課題:プレゼント相談チャットボットの開発
プレゼント選びは、相手との関係性や年齢、好み、予算など、考えることが意外とたくさんあります。
そのため、「何を贈ればよいかわからない」と悩む人は少なくありません。
そこで今回は、ユーザーへの質問を通して状況を整理し、条件に合った候補を提案できるプレゼント相談チャットボットを作っていきます。
ただ答えを返すだけではなく、いきなり提案せずに必要な情報を確認してから案内することで、より実用的なアプリになります。
問題文|作成するチャットボットの概要
ユーザーからプレゼントの相談を受け、条件に合ったおすすめを提案するチャットボットを作成してください。
このアプリでは、あらかじめ予算を入力してもらい、その金額以内で買えるプレゼントを提案します。
また、いきなり候補を出すのではなく、まずは相手の情報や贈る目的などを確認するための質問を行い、必要な情報がそろってからおすすめを3つ提示するようにしましょう。
このアプリの動作|入力例と出力例
アプリの動作を通して、以下のような入力・出力となるよう設定すること。
| 要件 | 例 | |
|---|---|---|
| 入力 | ・変数で予算を入力 ・チャット欄にプレゼントを贈る相手の情報を入力 | ・10000円 ・交際相手への誕生日プレゼント |
| 出力 | ・情報が不十分な場合:より良いプレゼントを提案するため、ユーザーに質問を返す ・情報が十分な場合:おすすめのプレゼントを3つ提案 | いいですね!予算は1万円以下で3案ご提案しますね。まずは以下の3点を教えてください。 ・相手の年齢層と性別 ・相手の趣味/好みや普段の過ごし方。 ・モノか体験のどちらを優先したいか。 |

アプリ開発に正解はないから、完璧にこの通りに動かなくてもOK。
このアプリはどんな設定がされていて、どんなプロンプトが書かれているのかを考えてみよう!
開発要件|設定すべき項目
以下の開発要件を全て満足するアプリを開発してください。
1.チャットボットの基本設定
アプリタイプはチャットボットとすること。
またアプリの名前と説明文は、どのような目的で使われるのかが一目でわかるように設定すること。
2.変数の設定
プレゼントの予算を格納する変数budgetを設定し、プロンプトの中で使用すること。
フィールドタイプは「数値」を選択すること。
3.プロンプトの設定
以下の要件を満たすプロンプトを作成してください。
- 「役割」と「命令」に分けて記述すること。
- 変数で指定した予算内で買えるおすすめのプレゼントを3つ提案すること。
- 情報が不足している場合は、プレゼントを贈る相手についてユーザーに質問すること。
- プレゼントと無関係な質問には回答しないようにすること。
4.オープナーの設定
「会話の開始」を有効にし、ユーザーが迷わず使えるようなメッセージを表示すること。
オープナーの設定方法はこちらを参照。
テスト用入力例
このアプリをテストするための入力例をいくつか提示しますので、必要に応じて使用してください。
- 大学生の女友達に誕生日プレゼントを贈りたいです。20代前半で、かわいい雑貨やコスメが好きです。重すぎない気軽なプレゼントにしたいです。
- 職場でお世話になった同僚にちょっとしたお礼を渡したいです。男女どちらでも使いやすく、気を使わせすぎないものを探しています。
- 母の日に50代の母へプレゼントを贈りたいです。料理やガーデニングが好きですが、物は増やしたくないと言っています。実用性も少しほしいです。
- 定年退職する上司に贈るプレゼントを探しています。60代男性で、趣味は散歩と読書です。高価すぎず、失礼にならないものが希望です。
- 出産を終えた友人にプレゼントを贈りたいです。赤ちゃん向けだけでなく、本人が少しうれしくなるものも候補に入れたいです。負担になるものは避けたいです。
模範解答例と学習ポイントのまとめ
このアプリの一つの解答例を紹介します。
- 模範解答例(クリックして開く)
-
模範解答例(プロンプトとオープナー)
設定項目は3つ。変数、プロンプト、オープナーのみです。
プロンプトとオープナーの模範解答例を以下に紹介します。
プロンプトの例
# 役割
あなたは、相手に喜んでもらえるプレゼントを一緒に考えるアドバイザーです。# 命令
– 予算 {{budget}} 円以下で買えるおすすめのプレゼントを3つ考えてください。
– 良いプレゼント提案に必要な情報が不足している場合は、必要な情報をユーザーに3つ質問してください。
– 特に、贈る相手、関係性、年齢層、プレゼントを渡す目的、好みや趣味、避けたいものなどを確認してください。
– それぞれのプレゼントについて、おすすめ理由も簡単に説明してください。
– 情報が足りない場合は、提案を急がず追加で質問してください。
– プレゼントと無関係な質問には回答せず、「プレゼント選びに関する内容であればお手伝いできます」と伝えてください。オープナーの例
最適なプレゼントのおすすめを3つ提案します。相手の特徴や贈る状況などを教えてください。
プロンプトもオープナーも、完全な正解はないのが生成AIアプリの良いところであり難しいところでもある。
実際に運用していく際には、出力される回答を見ながら日々修正していくのがいいね。
まとめ
今回は、ユーザーの相談内容に応じてプレゼント候補を提案するプレゼント相談チャットボットを作成しました。
この課題では、単に質問に答えるだけではなく、まず必要な情報を確認し、その内容をもとにおすすめを提案するという、実用的な会話の流れをDifyで設計する練習ができました。
今回の課題はシンプルですが、Difyでアプリを作るうえで大切な考え方が多く詰まっています。
ユーザーからどんな情報を受け取り、どの順番で質問し、最終的にどのような形式で答えを返すのかを意識することが、使いやすい生成AIアプリを作る第一歩です。
まずは模範解答どおりに作成し、その後で質問内容を変えたり、提案数を増やしたり、出力形式を工夫したりしながら、自分なりに改善してみてください。
少しずつ調整を重ねることで、Difyでのアプリ設計により慣れていけるはずです。
- 記事改善アンケート|ご意見をお聞かせください(1分で終わります)
-
本サイトでは、みなさまの学習をよりサポートできるサービスを目指しております。
そのため、みなさまの意見をアンケート形式でお伺いしています。1分だけ、ご協力いただけますと幸いです。
(※)APIキーや個人情報等は入力しないようお願いします。
【Dify】記事改善アンケート


