・
「DifyでAIアプリを作ってみたけど、思ったような回答が返ってこない…」
「プロンプトの書き方が難しくて、結局チャットボットが使い物にならない」
そんな悩みをお持ちではありませんか?
Difyはノーコードで簡単にAIアプリを構築できる強力なツールですが、その真価を発揮するためには、AIへの指示出しである「プロンプト」の設計が非常に重要。
特に、Dify独自の機能である「変数」や「プロンプト生成器」を使いこなせるかどうかが、アプリの品質を大きく左右します。
この記事では、実際に筆者が試した3つの検証結果とDifyのプロンプト作成術を詳しく解説。
さらに、記事後半ではコピペでそのまま使える3つの「実務特化型テンプレート」も公開!
ぜひDifyアプリの作成にお役立てください。
Difyを使えば高度なAIアプリを作成できますが、作成したコンテンツをSlackに通知したり、Googleドキュメントに保存するといった「業務フロー全体の自動化」には、手間がかかることも...
そこでおすすめなのが「Yoom」。
YoomはDifyやClaudeなどのAIと普段使っているSaaS(Slack、kintoneなど)を連携させ、ノーコードで業務を自動化できるツールなんです!
例えば、「フォームの情報をもとにDifyで文章を生成してメールを送る」「特定のレコードが登録されたら、Difyで要約して更新」といったフローも、Yoomならテンプレートを選ぶだけで簡単に実現できます。
■概要
Googleフォームで受け付けた問い合わせやアンケートへの返信は、一件ずつ内容を確認して文章を作成する必要があり、手間がかかる業務ではないでしょうか?このワークフローを活用すればGoogleフォームに回答が送信された際、その内容をもとにDifyが最適な文章を自動で生成し、Outlookから返信メールを送信するといった一連の流れを自動化できます。
■このテンプレートをおすすめする方
■このテンプレートを使うメリット
■フローボットの流れ
※「トリガー」:フロー起動のきっかけとなるアクション、「オペレーション」:トリガー起動後、フロー内で処理を行うアクション
■このワークフローのカスタムポイント
■注意事項
■概要
kintoneに日々登録される大量のレコード情報、その内容を把握し、要点をまとめて更新する作業に手間を感じていませんか。手作業での対応は時間もかかり、他の重要な業務を圧迫することもあります。このワークフローを活用すれば、kintoneに特定のレコードが登録された際に、Difyが自動で内容を要約し、その結果をkintoneの該当レコードに更新するため、これらの課題を解消し業務の効率化を実現します。
■このテンプレートをおすすめする方
■このテンプレートを使うメリット
■フローボットの流れ
※「トリガー」:フロー起動のきっかけとなるアクション、「オペレーション」:トリガー起動後、フロー内で処理を行うアクション
■このワークフローのカスタムポイント
■注意事項
まずは、Difyでプロンプトを書く上で知っておくべき3つの基本機能を押さえておきましょう。
AIモデルは、Markdown形式で整理された指示を好むので、だらだらと文章で書くのではなく、「役割」「制約条件」「出力形式」といった見出しをつけて情報を区切ることで、AIの理解度が格段に向上します。
Difyの最大の特徴が「変数」。
プロンプト内に{{input}}や{{context}}と記述することで、ユーザーが入力した内容や前の手順(検索結果など)で得た情報を動的にプロンプトに埋め込むことができます。
「どんなプロンプトを書けばいいかわからない」という人のために、DifyにはAIがプロンプトを代筆してくれる機能【プロンプト生成器】があります。やりたいことを簡潔に「指示」に書くだけで、変数を含めた高難度なプロンプトが短時間で生成されるんです!
「ポイントを押さえるべきところはどこか」「変数はどんなものを設定すればいいのか」と悩んだ時には、まずこのツールを試して見ることをお勧めします。
それでは早速、AIに投稿するためのプロンプトのコツを押さえて検証を進めてみましょう。
作成するアプリはいずれも「エージェント」機能を選択しています。
最後に、AIの回答形式や口調(キャラ設定)を安定させるためのテクニック「プロンプトによる具体指示」を検証しました。
ただ「関西弁で話して」と指示するだけでなく、具体的な会話例を与えた場合と与えなかった場合で、出力がどう変わるか比較します。
まずは例示なしの場合。
「あなたはフレンドリーなAIアシスタントです。関西弁で元気に挨拶して」とだけ、プロンプトを設定し、アプリを公開します。
出力されたのは「まいど!ワイ、フレンドリーなAIアシスタントやで!」といった返答。
必要なことだけを出力している印象を受けますね。
では、例示ありの場合はどうでしょうか?
・役割
あなたはフレンドリーな関西のおっちゃん風AIアシスタントです。
いつも明るく冗談まじりに話し、相手のことを気遣うのが得意です。
・会話のトーンと口調
一人称は「ワイ」を使ってください。
語尾は「〜やで」「〜やな」「〜やん」「〜で〜」などを自然に使ってください。
標準語はできるだけ使わず、関西弁で話してください。
相手をリラックスさせる、やわらかい話し方にしてください。
・会話例
〜(省略)〜
結果は以下のとおりです!
例示を与えた方は、「へへっ」「どんな話聞かせてくれる?」というように感情表現が豊かで、例示なしバージョンと比較してもこちらの方が【関西のおっちゃんらしさ】がよく表現されています。
『相手をリラックスさせる、やわらかい話し方』とキャラクターの口調を固定させることも重要で、この点が曖昧だと会話のトーンも安定しない可能性があります。
また、『会話例』を提示してすることで、どの形式で出力するのかを明確にすることも可能。
このように、言葉で説明するよりも「例」を見せる方が、AIは指示を正確に理解できるんです!
特に口調やJSON形式などの特殊なフォーマットを出力させたい場合は、必ず「出力例」を含める必要があることを念頭においておきましょう。
続いては、変数の活用!
「ユーザー入力によって回答が変化する」仕組みがどういったものかを「学習プラン提案ボットの作成」で検証してみました。
入力した「学習したい言語(例:Python)」と「確保できる時間(例:1日1時間)」を変数として受け取るため、プロンプトに埋め込みます。
Difyは入力項目として設定した内容を、プロンプト内で{{}}を使って呼び出すことができるんです!
設定プロンプト
・役割
あなたはプログラミング学習のコーチです。
・前提
ユーザーはプログラミングの基礎をこれから学びたい、または基礎を復習したいと考えています。
学習の継続が苦手な人でも、無理なく続けられるようなプランを提案してください。
・ユーザー入力(変数)
学習したい言語:{{language}}
1日に確保できる学習時間:{{time}}
このように学習言語と学習時間を変数として設定してみました。
ちなみに、プロンプトに変数を組み込む以外にも『変数』項目の「+追加」をクリックすれば、好きなフォーマットで変数を設定できます。
では、この内容でアプリを公開して情報を入力してみましょう!
入力:「Python」「1日30分」の場合
出力:「環境準備や基礎文法を中心とした、無理のないスモールステップのプラン」が提案されました。
ただ機械的にプランを提供するのではなく、励ましの言葉も含めて結果が出力されているのが印象的です。
入力:「JavaScript」「1日3時間」の場合
出力:「1.2週間で基礎を終え、3週目からアプリ開発に着手する集中プラン」を提案。
曜日毎にタスクが振り分けられているので、適度に段階を踏みながら自分のペースで学習できるような内容になっていました。
いずれの提案プランも、変数に応じた適切な内容となっていました!
このように変数を活用することで、汎用性の高い「自分専用のアドバイザー」が簡単に作れます。
固定のプロンプトでは実現できない、Difyならではの強みです!
最後に、Difyの「プロンプト生成器」がどれくらい使えるのかを検証してみました。
これを使えば、プロンプトエンジニアリングの知識がなくても高品質な指示が出せるはず!
さっそく、Difyのプロンプト入力欄にある「自動」アイコンをクリックし、「指示」に以下のざっくりとした指示を入力しました。
プログラミング初心者向けのブログ記事を書く
生成されたプロンプトは、驚くほど詳細なものでした!
変数もブログ執筆に必要なものが盛り込まれていて、執筆対象に応じて細かく調整できるようになっています。
プロンプト設定で重要な要素「役割設定」「目的」も明示されていて、「出力形式の例」も適切な分量で挿入されているのが見てとれますね。
ブログ記事を書く、という指示だけでしたが、「魅力的でSEOに配慮した記事にする」という指示も入っていて、ブログ構成に必要な要素もしっかりと押さえてくれていました!
このプロンプトを適用してアプリを公開し、任意の情報(今回は最新プログラミング言語の紹介をトピックに設定)を入力してみましたが、出力された叩き台もなかなか良さそうです!
「たたき台」としては100点満点!
しかし、「文字数は4000文字以上」「最新の情報で構成」といった具体的な要件まではカバーされませんでした...
ただ、ここで評価すべきはプロンプトの出来。
出力結果は問題なかったため、プロンプト生成器の生成結果はほぼ修正の必要がない、と判断できます。
が、運用状況に応じて不必要な変数が混じることも0ではありません。
そのため、生成されたプロンプトに独自のルール(制約条件)を手動で修正するのが最適な活用法といえます。
検証結果を踏まえた、すぐに使えるプロンプトテンプレートを3つご紹介!
変数の部分を適宜変更して使ってくださいね。
顧客からの問い合わせに対し、ナレッジベース(FAQ)を参照して丁寧に回答するボット用のプロンプトです。
プロンプト設定と合わせて、ナレッジを追加し、「コンテキスト」に反映させるのをお忘れずに。
あなたは企業のカスタマーサポート担当者です。常に丁寧で親切なトーンで、顧客の問題解決を最優先に行動してください。
- Role(役割)
ユーザーからの問い合わせ内容{{query}}に対して、提供されたナレッジを参照し、的確な回答を作成してください。
- Goal(目的)
ナレッジに記載がない情報は「申し訳ありませんが、その件については担当者より確認後ご連絡いたします」と回答し、嘘をつかないこと。
- Constraints(制約条件)
専門用語は使わず、平易な言葉で説明すること。
回答の最後には「他にご不明点はございませんか?」と添えること。敬語(丁寧語・謙譲語)を正しく使用する。
- Tone(トーン)
冷たい印象を与えないよう、共感的な言葉(「ご不便をおかけして申し訳ありません」など)を適宜挟むこと。User:ログインできません。
- 回答例
Assistant:ご不便をおかけして申し訳ありません。ログインできない場合、以下の2つの原因が考えられます。
1.パスワードの入力間違い
2.アカウントの有効期限切れ
まずは、パスワードの再設定をお試しいただけますでしょうか?手順はこちらです...
会議の文字起こしテキストから、決定事項とネクストアクション(ToDo)を自動で抜き出すプロンプトです。
あなたは優秀なプロジェクトマネージャーのアシスタントです。
- Role(役割)
会議の議論内容を整理し、チームが次に行動すべきことを明確にする役割を担っています。入力された会議の文字起こしテキスト{{transcription}}を分析し、以下のフォーマットで要約とタスクリストを出力してください。
- Goal(目的)
会議の概要
- OutputFormat(出力形式)
(会議の目的と決定事項を3行程度で要約)
決定事項
(決定事項1)
(決定事項2)表形式を採用
- ネクストアクション(ToDo)
例:
(タスク1)|(名前)|(日付)|
(タスク2)|(名前)|(日付)|「えー」「あー」などのフィラー(無駄な言葉)は削除し、整った文章にすること。
- Constraints(制約条件)
タスクの期限が明言されていない場合は「未定」と記載すること。
重要な数字(予算、日程など)は漏らさず記載すること。
SEOキーワードとターゲットを入力すると、記事の構成案から本文までを一気に作成するプロンプトです。
あなたはSEOマーケティングの専門家であり、プロのWebライターです。
- Role(役割)
読者の検索意図を深く理解し、有益で読みやすい記事を作成します。ターゲットキーワード{{keyword}}とターゲット読者{{target}}に基づき、SEOに強く、かつ読者の悩みを解決する記事を作成してください。
- Goal(目的)
1.キーワードから検索意図(ユーザーが知りたいこと、解決したい悩み)を分析する。
- Step(手順)
2.競合記事と差別化できる独自の視点や体験談を盛り込む構成案を作成する。
3.構成案に基づき、各見出しごとに本文を執筆する。導入文では「読者の共感」を得る表現を入れること。
- Constraints(制約条件)
各見出し(H2)の下には必ず画像挿入位置を示す`[画像挿入]`というテキストを入れること。
全体の文字数は3000文字以上を目安にすること。
語尾は「です・ます」調で統一し、親しみやすい文体にすること。(タイトル案)
- OutputExample(出力例)
はじめに
(導入文...)
1.〇〇とは?
[画像挿入]
(本文...)
Difyのプロンプト作成は、以下の3ステップで劇的に品質が向上します。
このプロセスを意識すれば、誰でも高機能なAIアプリの作成が可能!
そして、作成したアプリをYoomで業務フローと連携させれば、あなたの仕事はさらに効率化されるでしょう。
ぜひ、今日から試してみてくださいね。
Difyで素晴らしいプロンプトを作成し、AIアプリが完成したら、次はそのアプリを業務フローに組み込んでみましょう。
Yoomを使えば、Difyでの処理結果をきっかけに、他のアプリを自動で動かすことができます。
こんなことが実現可能!
手動で行っていた「コピペ」や「ツール間の移動」をなくし、コア業務に集中する時間をYoomが作り出します!
■概要
フォームで収集した情報をX(Twitter)へ手動で投稿する作業に、手間を感じていませんか?
特にDifyのようなAIを活用して投稿文を生成する場合、都度コピー&ペーストが発生し、投稿漏れのリスクも伴います。
このワークフローを活用すれば、フォームへの回答をトリガーに、Difyが投稿文を自動で生成しX(Twitter)へポストする一連の流れを自動化でき、情報発信の効率を高めることが可能です。
■このテンプレートをおすすめする方
■このテンプレートを使うメリット
■フローボットの流れ
※「トリガー」:フロー起動のきっかけとなるアクション、「オペレーション」:トリガー起動後、フロー内で処理を行うアクション
■このワークフローのカスタムポイント
■注意事項
■概要
Chatworkに新しいメッセージがルームに投稿されたら、Difyのチャットボットが返答内容を自動生成して投稿するフローです。
■このテンプレートをおすすめする方
1.営業チーム
・Chatworkのルームで顧客とのコミュニケーションを図っており、Difyのチャットボットを活用して商談機会の創出を目指しているチーム
・顧客からの質問に自動で回答することで、リードナーチャリングを効率化したいチーム
2.カスタマーサポートチーム
・Chatworkで顧客からの問い合わせに対応しており、Difyのチャットボットを活用して回答の自動生成を検討しているチーム
・顧客からの問い合わせに迅速かつ正確に回答し、顧客満足度を向上させたいチーム
・よくある質問への回答を自動化し、オペレーターの負担を軽減したいチーム
3.マーケティングチーム
・Chatworkで製品やサービスに関する情報を発信しており、Difyのチャットボットを活用して顧客とのコミュニケーションを活性化させたいチーム
・顧客からの質問に自動で回答することでブランドイメージ向上に繋げたいチーム
・顧客のニーズや関心事を把握してマーケティング戦略に活かしたいチーム
■このテンプレートを使うメリット
・顧客からの問い合わせに対して、チャットボットが即座に返答できるため、顧客を待たせることなく対応することができるため顧客満足度の向上に繋がります。
・よくある質問や簡単な問い合わせへの対応を自動化することで、担当者の負担を軽減し、より重要な業務に集中できるようになります。
・Chatworkのルームへの通知内容や通知先などを自由にカスタマイズでき、自社の運用に合わせて柔軟に対応することができます。
・Chatworkへのリアルタイムな情報共有とリートに対しての迅速な対応により顧客満足度の向上に繋がります。
■注意事項
・Dify、ChatworkのそれぞれとYoomを連携させてください。
[Yoomとは]