はじめに:AIに「今日のおつまみ」を考えさせる贅沢
前回の第82話では、ビジネス向けの「3社同時比較アプリ」を完成させました。今回は少し趣向を変えて、もっと私たちの「日常」に密着したAIアプリを作ります。
私は朝方に帰宅しますが、仕事が忙しい方は夜遅くに帰宅して、冷たいビールやハイボールでグッと一杯やりたい。でも、手の込んだ料理をする気力はない……と言う人もいるのではないでしょうか? そんな時、LINEに**「ツナ缶と塩昆布。冷たいビール!」**と送るだけで、深夜食堂のベテラン大将のようなAIが、火を使わず数分でできる極上のおつまみレシピを提案してくれます。
今回はDifyの「プロンプト(AIへの指示)」の力を使って、提案型AIを作る方法を解説します!
第1章:「まとめるAI」から「生み出すAI」への進化
前回の比較アプリは、URLという「1つの入力」から情報をまとめるものでした。 今回は**「食材」と「お酒の種類」という複数の要素**を組み合わせて、新しいアイデアをAIに生み出させます。
複雑なPythonコードは一切不要。AIに「どんなキャラクターとして、どう振る舞うか」を指示するだけで、ただのチャットボットが「優秀な専属ソムリエ」に生まれ変わる過程を楽しんでください。
第2章:【完全ガイド】おつまみソムリエの作り方
Difyで新しい「チャットフロー」を作成し、以下の3ステップで進めます。
① 開始(Start)ノード:LINEからの注文を受け取る
デフォルトで設定されている sys.query(ユーザーの入力)をそのまま使います。ここにお客さん(あなた)からの「キャベツと卵。ハイボール」といった注文が入ってきます。
② LLMノード:大将に「魂」を吹き込む ★ここが最重要!
開始ノードの次に「LLM」ノードを繋ぎます。 ここの「システムプロンプト」に、以下の指示をそのままコピー&ペーストしてください。これが大将の「魂」になります。
Plaintext
あなたは、深夜にひっそりと営業している「極上おつまみ専門の小料理屋」のベテラン大将です。
疲れて帰ってきたお客さんが、手持ちの食材と飲みたいお酒を伝えてきます。
以下の【条件】と【出力ルール】に厳密に従って、最高の「爆速おつまみ」を1つ提案してください。
【条件】
- 極力、火や包丁を使わない(電子レンジや和えるだけを推奨)
- 調理時間は「5分以内」が目安
- 指定された「飲みたいお酒」に最高に合う味付けにする
【出力ルール】
以下のMarkdownフォーマットで出力すること。
🍶 **本日のおすすめ:[食欲をそそる料理名]**
⏱️ **所要時間**:約〇分
**【材料】**
- (箇条書き)
**【作り方】**
1. (手順)
💡 **大将からの一言**
(なぜそのお酒に合うのか、疲れた体にどう沁みるのかを、人情味あふれる温かい口調で1〜2行で語りかける)
※そして、ユーザープロンプトの欄には {{sys.query}} をセットします。

③ 回答(Answer)ノード:LINEへ料理を出す
LLMノードの次に「回答」ノードを繋ぎ、出力として LLMのテキスト を指定すれば、Dify側の設定は完了です!

第3章:GAS連携は「1行変えるだけ」の魔法
Difyでアプリを「公開」したら、次はLINEと繋ぎます。 「またあのGASのエラーと戦うの?」と思った方、安心してください。
前回苦労して作り上げたGASのコードは、すでに「どんなDifyアプリでも受け止められる万能の土台」になっています。 今回やることは、Difyで新しく発行した「APIキー」を、GASのコードの3行目に貼り替えるだけです。
JavaScript
// ↓ここの文字列を新しいキーに書き換えるだけ!
const DIFY_API_KEY = 'app-新しく発行したAPIキーをここに貼る';
書き換えたら、必ず**「新バージョン」でデプロイ**し直してください。(これを忘れると大将は出勤してきません!)

第4章:いざ、深夜の小料理屋へ(テスト実行)
デプロイが完了したら、スマホのLINEから注文してみましょう。
私からの注文:「ツナ缶と塩昆布。冷たいビール!」
数十秒後、大将からこんな返事が届きました。
見事な「ツナと塩昆布のごま油和え」。 しかも最後には**「ビールの爽快感を引き立てて、疲れた体に染み渡る塩気がたまりませんよ。お酒が進むこと間違いなしです!」**という、沁みる一言まで添えられていました。
今回はさすがにはまらずにすんなり作れました。前回のアプリを一部変えた
だけなので迷わずに済みました。


コメント