Dify入門

第12回 アルゴリズム概論

2026.06.25

はじめに

ブラウザの使い分けについて

準備

Chrome を「2つ」開いて使い分けます

これまでと同じく、 Chrome の 「通常モード」「シークレットモード」 を 同時に開いて、 用途で使い分けます。

通常のChrome

Dify / AI

今日の 作業はこっち

シークレットモード

Google Meet (この講義)

Meet入室は こっち

Difyの登録・設定

まずは登録と準備から

流れ

設定の流れ

  1. 通常モードのChromeで Dify にユーザー登録
  2. Difyでアプリ作成
  3. プラグイン「OpenAI」のインストール — 1番最初に設定すればOK
  4. デフォルトのAI設定

1-1. Difyへアクセス

https://dify.ai/jp

1-2. Googleアカウントで登録

流れ

設定の流れ

  1. 通常モードのChromeで Dify にユーザー登録
  2. Difyでアプリ作成
  3. プラグイン「OpenAI」のインストール — 1番最初に設定すればOK
  4. デフォルトのAI設定

2-1. スタジオ→最初から作成、を選択

2-2. 上の画像の通りに入力し「作成する」ボタンを押す

流れ

設定の流れ

  1. 通常モードのChromeで Dify にユーザー登録
  2. Difyでアプリ作成
  3. プラグイン「OpenAI」のインストール
  4. デフォルトのAI設定

3-1. プラグイン→プラグインをインストール→マーケットプレイスを選択

3-2. OpenAIを検索し、表示されたらインストールボタンを押す

3-3. インストール成功が表示されたら、閉じるボタンを押す

流れ

設定の流れ

  1. 通常モードのChromeで Dify にユーザー登録
  2. Difyでアプリ作成
  3. プラグイン「OpenAI」のインストール
  4. デフォルトのAI設定

4-1. 設定を選択

4-2. モデルプロバイダーを選択後、「システムモデル設定」を選択

4-3. 「システム推論モデル」を「gpt-4o-mini」にして、保存ボタンを押す

設定完了!

Difyとは?

今日

Difyとは?

Dify = ノーコード・ローコードで
ブロックを組み合わせて AIアプリ を作れる道具。

これまではプログラミングを活用して「仕組みを考える」ことを行なってきましたが、 実は、みなさん自身で「AIの動作の仕組み作り」を行うこともできます!

みなさんにも 「AIがどう動くか」の仕組みづくりを体感していただきたいと思います!

ワークフロー

ワーク(チャット)フローとは?

「AI( + それ以外の仕組み)にお願いしたいタスク(指示)」を定型テンプレートとして作っておき、入力内容に応じた出力結果を得ることができるものです!

  • SNSやブログ、プラン・アイディアの投稿を作る
  • さまざまなデータ(ファイル)の解析・調査を行う
  • 特定の質問に答えてくれるBotを作る
考え方

ワーク(チャットフロー)の基本的な考え方

考え方

ワーク(チャットフロー)の基本的な考え方

  1. ブロック同士を線で繋ぐことでアプリの内容を作成
  2. 「ユーザー入力」ブロックに始まり、「回答」ブロックで終わるように全体を構成
  3. 左側から情報が入力され、右側に処理の結果が出力
考え方

ブロックとは?

ブロックとは、ワーク(チャットフロー)の1個1個の処理を担当する部分です。

  • ブロック・・・Dify標準で備わっている処理ブロック
  • ツール・・・外部サービスとの連携を図る処理ブロック

ブロックの追加場所は、左画像を参照してください!

これまでと同じ

これまでやってきたこととの繋がり

JavaScriptやGAS

  1. バックアップをとりたいファイルを複製
  2. 1で複製したファイルの名前を変更する
  3. 1で複製したファイルを移動する

Dify

  1. ユーザがチャットや入力欄にやりたいことを入力する
  2. 1で入力した情報を元に、AIやそれ以外で色々な処理をする
  3. ユーザーに回答をする

前の工程の結果を、次の工程が受け取る——それを線でつなぐのがDifyです!

おうむ返しBotを作る

ブロックの基本を学ぶ

道具1

オウム返しBot をつくる

入力した情報をそのまま返すだけの、簡単なおうむ返しBotを作ります。

ブロック

LLMブロックとは?

LLMブロックは、AIへの指示を設定することができるブロックです。

あなたはオウムです。
ユーザーが言った言葉を、そのまま繰り返してください。

上のプロンプトを埋め込んでみましょう!

プロンプト

プロンプトに変数を活用する

【ユーザーの言葉】
「query」

これまでJavaScriptで学んできた「変数」、実はDifyやAIのくだりでも大活躍してくれます!

左のGif動画を参考に、スラッシュ(/)を打ち込んで「query」を選択しましょう!すると、ユーザーの入力内容をプロンプトに埋め込むことができます!

queryとは?→ あなたが打った言葉につけられた「ニックネーム」(第9回の変数と同じ)

変数

変数を使うメリット

変数を使うと、そのブロックの中で、前のブロックで入力された情報を処理したり、中身を見たりすることができるようになります!

逆にいえば、変数を使わないと、前の工程の処理内容やデータを使うことができないわけですね!

テスト

チャットを動かしてみよう

プレビューボタンを押すとチャット欄が表示され、ここで動作テストをすることができます!

自分が入力した内容と全く同じ文字が返答内容で出てくるか、確認してみましょう!

2〜3語試してみて、問題なさそうであればOkです!

気づき

同じプロンプトなのに、 出力が変わる?

プロンプトは 1文字も変えずに、 入力だけ変えて2回試してみましょう。

1回目

入力「ピザ」

出力「ピザ」

2回目

入力「カレー」

出力「カレー」

プロンプトは同じ。 なのに出力が変わった。 なぜ?

変数とは

変数query = 入力された情報を受け取るもの

query は「あなたが打った言葉」につけられたニックネームです! 入力欄に打つ言葉が変われば、 query が指すデータの中身も変わってきます!

ニックネーム(query)は ずっと同じだけど、時と場合によって中身は毎回「変わる」 これが「変数」です。
AI活用

別のプロンプトを入れてみる

以下のように、別のプロンプトも試してみましょう!

あなたはブロガーであり編集者です。また、講師でもあり、人に親しみのある文章を作ったり、物事の説明が非常に上手い人です。

以下の重要事項に沿って「query」に沿ったテーマのブログ記事を書いてください。単純なデータを出力し、HTMLタグは使わずにテキストだけ返してください。改行コード(\n)は入れないでください

queryの埋め込み方は、2ページ前のやり方と同じです。

テスト

チャットを動かしてみよう

プレビューボタンを押すとチャット欄が表示され、ここで動作テストをすることができます!

入力したテーマに沿った記事が出てくればOK!

もっちゅりん診断を作る

気分を入れると、 おすすめを1つ返してくれるBot

道具3

作るもの

今の気分を入力すると、ミスドの人気商品「もっちゅりん」から おすすめの味を1つ提案してくれるBotです。

使い方

  1. ユーザーが今の気分を入力
  2. 気分に合わせた「もっちゅりん」の種類をおすすめしてくれる

参考・もっちゅりんとは? ここをクリック

前提

もっちゅりんの味

ご存じの方も多いとは思いますが、もっちゅりんの味は以下の3つです。

  • もっちゅりん・いちご
  • もっちゅりん・みたらし
  • もっちゅりん・きなこ
試してみよう

プロンプトを調整しよう

あなたは「今日のもっちゅりん気分診断」です。ユーザーの入力をもとに、きなこ・みたらし・いちごの中から、今日おすすめの味を1つ選んでください。

ユーザーの入力:{{#sys.query#}}

ルール:
- それっぽい診断結果にしてください
- 理由を2〜3文で書いてください
- 断定しすぎず、軽く楽しい文章にしてください
- 出力形式は以下にそろえてください
- 各商品の説明の中身は出力する必要はありません

【おすすめ】
もっちゅりん〇〇

【理由】
〇〇
試してみよう

プロンプトにもっちゅりんの基本情報を添えよう

【もっちゅりんについて】
もっちゅりんはミスタードーナッツで販売されている人気商品です。3つの味があります。成分表と各味は以下の通りです

1.もっちゅりんきなこ
「もっちゅり」とした食感の生地にきなこシュガーをトッピング。こだわりの「もっちゅり」とした生地の食感をじっくり楽しめる。

2.もっちゅりんみたらし
「もっちゅり」とした食感の生地に、みたらしフィリングをコーティング。「もっちゅり」とした食感と、甘さとしょっぱさの絶妙なバランスをお楽しみください。

3.もっちゅりんいちご
「もっちゅり」とした生地に、ぷるんとした甘酸っぱい味わいのいちごフィリングとなめらかなホイップクリームを掛け合わせて仕上げました。いちごシュガーのアクセントとともにお楽しみください。
テスト

チャットを動かしてみよう

プレビューボタンを押すとチャット欄が表示され、ここで動作テストをすることができます!

入力欄に色々な気分を入れてみて、おすすめの味が返ってくるかどうかを試してみましょう!

体験

同じ気分を、 複数回入れてみる

さっき作ったもっちゅりん診断に、 まったく同じ入力を3回入れてみてください。

1回目
いちご
2回目
みたらし
3回目
いちご

同じこと聞いたのに、 おすすめが変わる…ということが場合によってありえます。

ワーク

回答のブレをできるだけ改善するには?

問い

なぜ、回答がブレることがあるのか?

今の形式だと、AIが判断を決めているが、その判断基準が僕らにはわからない

「AIがこういったから」では、仕事では全く使えません!
「判断基準」をできるだけ明確にすることで、「なぜそうしたのか」を自分でしっかり理由として持つことができるようになるのです!

考え方

回答のブレを減らす方法

やり方ブレなさ特徴
自由入力+AIまかせ判断は全部AI任せ。基準がよくわからないからブレやすい
選択式+集計△〜◯ある程度コントロール可能。ただし100%ブレないとも限らない
コードと掛け合わせる確実にブレない状況を作ることができる
一緒に

選択式+AIが集計

  1. 3問の質問を用意する
  2. 各質問の選択肢を用意する
  3. AIが各質問の答えを集計し、一番多いものを基準におすすめの味を返答

もちろん設問には意味があるようにします。

例えば、「きなこ」が好きそうな答えは選択肢Aに寄せる・「みたらし」が好きそうな答えは選択肢Bに寄せる、という感じです。

一緒に

設問の内容と回答の選択肢

Q1. 今日の気分は?

  • A. ほっと落ち着きたい
  • B. 少し元気を出したい
  • C. 気分を明るくしたい

Q2. 今食べたい味の方向は?

  • A. やさしい甘さ
  • B. 甘じょっぱい味
  • C. 甘酸っぱい味

Q3. 食べたいときの雰囲気は?

  • A. ゆっくり一息つきたい
  • B. ごほうび感がほしい
  • C. ちょっと気分を変えたい
作業

「ユーザー入力」ブロックで質問欄を作ろう

ユーザー入力ブロックを使って、質問欄を作っていきましょう!

まずは左画像を参考に、ユーザー入力ブロックからプラスボタンを選択します。

作業

各選択肢の入力内容

別途コピー用テキストは共有します。

作業

プロンプトを修正

LLMブロックに移動しプロンプトを修正しましょう!以下スクロールすると、全体が確認できます! 【もっちゅりんについて】より上は全部以下に書き換えましょう!

あなたは「今日のもっちゅりん気分診断」です
ユーザーの3つの回答をもとに、A・B・C のどれが多いかを判定し、今日おすすめのもっちゅりんを1つ選んでください。

## 商品と対応ルール
### A が多い場合
「もっちゅりん きなこ」
- やさしい甘さ
- 素朴で落ち着いた印象
- ほっとしたい気分に合いやすい

### B が多い場合
「もっちゅりん みたらし」
- 甘じょっぱい味
- 満足感がある
- 少し元気を出したい気分に合いやすい

### C が多い場合
「もっちゅりん いちご」
- 甘酸っぱい味
- 明るく華やかな印象
- 気分を変えたいときに合いやすい

## ユーザーの回答
Q1. 今日の気分:{{question01}}
Q2. 今食べたい味の方向:{{question02}}
Q3. 食べたいときの雰囲気:{{question03}}

## 判定ルール
3つの回答に含まれる A・B・C を数えてください
- A が一番多い場合は「もっちゅりん きなこ」をおすすめしてください
- B が一番多い場合は「もっちゅりん みたらし」をおすすめしてください
- C が一番多い場合は「もっちゅりん いちご」をおすすめしてください

A・B・C が同数の場合は、Q2 の回答を優先してください

おすすめする商品は、必ず上の3つの中から1つだけ選んでください。存在しない商品名や、ルールにない味は出さないでください。

## 文章のルール
- ユーザーの回答に軽く触れながら、なぜその味が合いそうかを書いてください
- 断定しすぎず、やわらかく楽しい文章にしてください
- 不安をあおる表現は使わないでください
- 出力形式の前後に、余計な文章を追加しないでください

## 出力形式
【おすすめ】
もっちゅりん〇〇

【理由】
2〜3文で理由を書いてください。

【ひとこと】
今日の気分に合う短いコメントを1つ書いてください。
            
question01〜03は、スラッシュ(/)を打った上で選択してくださいね!
テスト

チャットを動かしてみよう

プレビューボタンを押すとチャット欄が表示され、ここで動作テストをすることができます!

選択肢から好み・気分を選んだ上で、「診断お願いします」と入力し送信→診断結果が返ってくるかを確認しましょう!

何回か試して、回答にブレがないかを確認してくださいね!

横展開ワーク2

「性格診断」を作る

本日の課題

性格診断を作ってみよう

もっちゅりん診断の例にならって、性格診断を作ってみましょう!

LoveType16みたいなものが、作れるかもしれませんよ!?(16タイプだと多いので4タイプ診断程度で)

課題の進め方

課題の進め方

  1. 4つのタイプを考える
  2. タイプを見分けるための設問と回答選択肢を考える(選択肢は各4つ)
  3. どの回答がどのタイプにつながるかを決める
  4. Difyで実装をしてみる

Notionページ に、進め方の流れを作りましたので、そちらで進めてみてください〜

相談

チューターさんにもチェックを受けよう

設計(4タイプ・質問・対応表)が書けたら、 チューターさんに見てもらいましょう。 以下の観点でチェックを受けましょう!

  • 回答内容と診断結果が結びついているか
  • 回答がブレない仕組みになっているか
  • コードブロックやifブロックなど、未出のブロックを使うともっとブレないようにできないか

提出について

提出

今回の提出物

  • Notionページの中身が全部埋まってること
  • Dify アプリの中身をエクスポート(次のページで説明)
提出方法

Difyアプリのエクスポートについて

  1. アプリ一覧ページからもっちゅりん診断の右下の3本点をクリック
  2. DSLをエクスポート
  3. ダウンロードされたファイルをNotionページにドラッグアンドドロップする

以上!おつかれさまでした!