ステータス: 🟢 現役 最終更新: 2026-07-13 作成者: にしむら(学習キュレーター)
この章のゴール
複数ステップの処理を、ビジュアルキャンバス上で組めるようになること。単発の会話ではなく、決まった手順で動く仕組みを作ります。
まず結論
ワークフローは、処理を「ノード」という箱に分け、線でつないで流れを作る機能です。入力→LLM処理→出力のように順序立てて実行でき、途中に条件分岐や外部ツール呼び出しも挟めます。単発のチャットでは扱いにくい「複数段階の決まった処理」を、目で見える形で組めるのが利点です。
やさしい解説
チャットボットが「自由な会話」向きなのに対し、ワークフローは「決まった手順の自動化」向きです。ワークフローは開始ノードから始まり、終了ノードで終わります。その間に、LLMノード(AIに処理させる)、知識取得ノード(RAG用に文書を検索する)、コードノード(簡単な変換処理)、条件分岐ノード(IF/ELSE)などを並べます。各ノードは前のノードの出力を受け取り、次のノードへ渡します。
Difyにはワークフロー系の型が2種類あります。ひとつはChatflow(会話を続けながら内部で流れを処理する)、もうひとつはWorkflow(1回の入力に対して一連の処理を実行し結果を返す、バッチ的な用途)です。要約や翻訳のように「入れたら結果が返る」処理はWorkflow型が向きます。
組み立ての勘所は「1ノード1役割」です。1つのノードに詰め込みすぎず、要約するノード、口調を整えるノード、と役割を分けると、どこで結果が崩れたかを追いやすくなります。各ノードの出力はキャンバス上で確認できるので、問題の切り分けが容易です。
ノードの種類と使い所を一覧で引きたいときは、辞典側の reference/features.md の「ワークフローのノード一覧」を参照してください。具体例
ある中小企業では、日報を要約して定型フォーマットに整える作業を自動化しました。開始ノードで日報テキストを受け取り、1つ目のLLMノードで「3行に要約」、2つ目のLLMノードで「所定の見出しに沿って整形」、終了ノードで結果を返す、という3〜4ノードの流れです。要約と整形を別ノードに分けたことで、整形だけがうまくいかないときにそのノードのプロンプトだけを直せるようになりました。
ミニ演習
問題: 「入力された文章を要約する」処理をワークフローで作るとき、最低限必要なノードの並びを、開始と終了を含めて答えてください。
答え: 開始ノード → LLMノード(要約) → 終了ノード
解説: ワークフローは必ず開始ノードで始まり終了ノードで終わります。その間に処理の本体となるLLMノードを置き、要約のプロンプトを書きます。要約に加えて口調調整も必要なら、LLMノードをもう1つ足して役割を分けると保守しやすくなります。
この章のまとめ
- ワークフローは処理をノードに分け、線でつないで流れを作る機能
- Chatflow(会話型)とWorkflow(バッチ型)があり、要約・翻訳はWorkflow型が向く
- 「1ノード1役割」で組むと、問題の切り分けと修正が容易になる
次に読む
04-rag.md— 第4章 RAGで自社文書に答えるAIを作る