「Difyで高度なAIアプリを作りたいけれど、ワークフローの仕組みがよくわからない…」
「変数とかノードとか、専門用語が多くて難しそう」
Dify(ディファイ)の真骨頂は、複数の処理を組み合わせて業務を自動化できる「ワークフロー機能」にあります。
この記事では、その基本となる「ノード」と「変数」について、初心者にもわかりやすく解説します。
ワークフローの基本概念
Difyのワークフローは、主に2つの要素で構成されています。
- ノード(Node):処理を実行する「部品」(例:AIに質問する、検索する、計算するなど)。
- 変数(Variable):ノード間でデータを受け渡すための「箱」。
チャットフローとワークフローの違い
Difyには2種類のアプリ形式があります。
| タイプ | 特徴 | おすすめの用途 |
|---|---|---|
| チャットフロー | 対話の履歴(メモリ)を保持できる。途中で回答を出力できる。 | カスタマーサポート、AI面接官、FAQボット |
| ワークフロー | 一回きりの処理に適している。履歴を持たない。 | 翻訳、文章要約、データ分析、バッチ処理 |
主要なノードの解説
1. 開始(Start)ノード
すべての処理のスタート地点です。ここでユーザーからの入力情報(テキストやファイル)を受け取ります。
入力フィールドには「テキスト」「段落」「選択肢」「ファイル」などを設定できます。

2. LLM(大規模言語モデル)ノード
AI(ChatGPTやClaudeなど)に処理を依頼する、ワークフローの心臓部です。
プロンプト(指示書)を記述し、前のノードから受け取った変数を組み込んでAIに回答を生成させます。
- モデル選択:GPT-4oやGemini 1.5 Proなどを選択可能。
- コンテキスト:ナレッジベース(RAG)の検索結果をAIに渡すことができる。

3. 回答(Answer)/ 終了(End)ノード
処理のゴール地点です。
チャットフローでは「回答」ノードを使い、ストリーミング形式でテキストを出力します。
ワークフローでは「終了」ノードを使い、最終的な成果物を出力します。
変数の種類と使い方
変数を使いこなすと、アプリの柔軟性が劇的に向上します。
システム変数(System Variables)
Difyがあらかじめ用意している特別な変数です。sys.から始まります。
sys.query:ユーザーが入力した質問内容sys.dialogue_count:会話のターン数(何回目のやり取りか)sys.user_id:ユーザーのID
環境変数(Environment Variables)
APIキーやデータベースのパスワードなど、機密情報を安全に管理するための変数です。
コードに直接書かず、環境変数として設定することでセキュリティを高められます。
会話変数(Conversation Variables)
チャットフローでのみ使用可能です。会話の中で一時的に情報を保存しておく「メモ帳」のような役割を果たします。
例えば、ユーザーの名前や好みを保存しておき、後の会話で参照することができます。
まとめ:まずは簡単なフローから作ってみよう
Difyのワークフローは、ノードを線で繋いでいくだけで直感的に作成できます。
まずは「開始」→「LLM」→「回答」というシンプルな構成から始めて、徐々に変数を活用した高度なアプリへとステップアップしていきましょう。
【推奨】業務システム化に有効なアイテム
生成AIを学ぶ



システム化のパートナー



VPSサーバの選定





コメント