> For the complete documentation index, see [llms.txt](https://docs.digitalhumans.jp/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.digitalhumans.jp/dify-guide/chatflow/dify-docs-chatflow-vs-workflow.md).

# チャットフローとワークフローの違い

Dify でアプリケーションを作成する際、主に選択肢となるのが**チャットフロー**と**ワークフロー**です。 これらは共に「ノードを繋いでロジックを組む」というビジュアルオーケストレーション機能を持ちますが、設計思想と対応するユースケースが明確に異なります。

## 主な違い

最大の違いは **「会話コンテキスト（記憶）を持つかどうか」** です。

### 1. チャットフロー

* **定義**: チャットアプリケーション向けのワークフロー。
* **特徴**:
  * **会話履歴（メモリ）の保持**: ユーザーとの対話履歴をシステムが自動的に管理し、文脈を踏まえた回答が可能です。
  * **チャットUI**: ユーザー入力とAIの回答という対話形式のインターフェースが標準で提供されます。
  * **ストリーミング**: 回答を逐次生成して表示する体験（タイプライター効果）に最適化されています。
* **用途**: デジタルヒューマン、AIチャットボット、カスタマーサポート、対話型エージェント。

### 2. ワークフロー

* **定義**: 汎用的なプロセス自動化のためのワークフロー。
* **特徴**:
  * **ステートレス（記憶なし）**: 基本的に1回のリクエストで処理が完結します。過去の実行結果を自動で記憶しません（必要な場合は外部DB等への保存・参照ロジックを自作する必要があります）。
  * **入出力重視**: 変数を入力として受け取り、加工した結果を出力します。
  * **バッチ処理**: 一括実行やAPI経由でのバックエンド処理に向いています。
* **用途**: 記事生成ツール、翻訳API、データ分類・抽出、社内定型業務の自動化。

## 比較表

| 比較項目              | チャットフロー             | ワークフロー                 |
| ----------------- | ------------------- | ---------------------- |
| **デジタルヒューマンとの相性** | **最適** (文脈維持が必須のため) | 不向き (文脈管理が困難)          |
| UI                | チャットウィンドウ (対話型)     | フォーム入力 / API実行         |
| **記憶 (Memory)**   | **あり** (会話履歴を自動管理)  | **なし** (1回ごとに独立)       |
| **開始トリガー**        | ユーザーのチャットメッセージ      | 変数入力 / スケジュール / APIコール |
| **出力形式**          | メッセージ (ストリーミング推奨)   | 構造化データ / テキスト結果        |
| **複雑なロジック**       | 可能 (会話中にツール使用などを挟む) | **得意** (データ処理に集中)      |

## 選定ガイド：どちらを選ぶべきか？

### Case A: デジタルヒューマン・接客ボットを作りたい

{% hint style="info" %}
**チャットフローを選択してください。**\
ユーザーが「さっきの話だけど…」と言及したり、話題が行ったり来たりする場合、チャットフローが持つ標準のメモリ機能（会話履歴）が必須となります。ワークフローでこれを再現しようとすると、履歴管理のロジックを全て自作する必要があり非効率です。
{% endhint %}

### Case B: 記事作成やデータ要約ツールを作りたい

{% hint style="info" %}
**ワークフローを選択してください。**\
「テーマを入力したら、記事が出力される」「PDFを入れたら要約が返ってくる」といった、対話を必要としない「入力→処理→出力」の完結型タスクにはワークフローが最適です。
{% endhint %}

### Case C: 複雑な処理もしたいが、チャットでも返したい

{% hint style="info" %}
**チャットフローを選択してください。**\
チャットフロー内部でも、ワークフローと同様に強力なロジック（HTTPリクエスト、コード実行など）を組むことができます。「裏側で複雑な検索や計算を行いつつ、ユーザーにはチャットで自然に返す」場合はチャットフローが正解です。
{% endhint %}

## 補足

※本ドキュメントはDifyの標準的な仕様（v0.6系以降のConversational Workflow概念）に基づいています。バージョンアップにより名称やUIが微調整される可能性があります。
