こんにちは、スクーティー代表のかけやと申します。
弊社は生成AIを強みとするベトナムオフショア開発・ラボ型開発や、生成AIコンサルティングなどのサービスを提供しており、最近はありがたいことに生成AIと連携したシステム開発のご依頼を数多く頂いています。
AI開発プラットフォームDifyが2025年9月にメジャーアップデート版2.0をリリースしました。このバージョンでは、ナレッジ・パイプライン(Knowledge Pipeline)とキューベース・グラフ・エンジン(Queue-based Graph Engine)という2つの新機能が導入され、従来の並列処理の課題を根本的に解決しています。
特に複雑なワークフローの管理やRAGシステムの柔軟性において、従来版では実現困難だった高度な制御と安定性を提供します。
この記事では、Dify 2.0 の新機能を詳しく解説し、1.8系からの進歩点や実際の活用方法について包括的に紹介します。
Dify 2.0 の基本概要と新機能紹介
Dify 2.0で実現された2大新機能
Dify 2.0は、AI開発における従来の限界を突破するため、ナレッジ・パイプラインとキューベース・グラフ・エンジンという2つの核心技術を導入しました。これらの機能は単なる機能追加ではなく、AI開発のパラダイム自体を変革する根本的なアーキテクチャ刷新です。
このリリースの主要な焦点は並列ブランチの安定性、明確性、正確性にあり、性能向上は副次的な効果として位置づけられています。


ナレッジ・パイプラインは、従来のRAGシステムが抱えていた「データソース統合の制限」「テーブルや画像などの重要要素の欠落」「最適でないチャンク化結果」といった課題を解決するために設計されました。視覚的なノードベースのオーケストレーションシステムにより、開発者はパズルピースを組み合わせるような感覚で複雑なドキュメント処理パイプラインを構築できます。
キューベース・グラフ・エンジンは、従来のワークフロー実行で問題となっていた「ブランチ状態の管理困難」「エラー再現の問題」「デバッグ情報の不足」「柔軟性に欠ける実行ロジック」を統一されたキューシステムで解決します。すべてのタスクが単一のキューに入り、スケジューラーが依存関係と順序を適切に管理することで、並列実行におけるエラーを削減します。
1.8系からの主要な改善点
Dify 1.8.0では、AsyncWorkflowRun/WorkflowNodeRunリポジトリの実装により、ワークフローの非ブロッキング操作が可能となり、性能改善が達成されていました。また、1.8.1では安定性とパフォーマンスの向上、SQLクエリの最適化、データベースセッション管理の問題修正が行われました。
しかし、Dify 2.0では性能向上を超えた根本的な機能改善が行われています。1.8系では主に既存機能の最適化と安定性向上に焦点が当てられていましたが、2.0では全く新しい機能アーキテクチャの導入により、以下の点で質的な進歩を遂げています:
- 知識管理の透明性向上:ナレッジ・パイプラインにより、ドキュメント処理の各段階が可視化され、デバッグが容易に
- ワークフロー実行の制御性強化:キューベース・グラフ・エンジンによる外部制御機能の追加
- モジュラー設計の採用:各処理段階を独立したモジュールとして扱うことで、カスタマイズ性が向上
- マルチモーダル対応:テキストだけでなく画像やその他のメディア形式への対応強化
これらの改善により、Dify 2.0は単なるバージョンアップではなく、AI開発プラットフォームとしての新次元への移行を果たしています。
Difyがどのようなツールかをまず知りたいという方は、少し古いですが、以下の記事を先にご覧ください!


関連記事:DifyでSEO記事作成を試してみる


関連記事:DifyでRAGを爆速で構築する
ナレッジ・パイプライン:RAGシステムの進化
ビジュアルオーケストレーションによる直感的な開発
ナレッジ・パイプラインの最大の特徴は、視覚的なノードベースインターフェースによるワークフロー構築です。従来のコーディング中心の開発から、直感的な操作による開発へのパラダイムシフトを実現しています。
開発者は各ノードが特定の機能を担い、それらを接続することで複雑な知識処理パイプラインを段階的に構築できます。この設計により、ドキュメント処理がより観察しやすく、調整も容易になります。特に重要なのは、各処理段階を独立したモジュールとして扱うことで、企業の特定要件に応じた高度にカスタマイズされたRAGソリューションの構築が可能になったことです。
テンプレートとDSLによる効率的な開発
ナレッジ・パイプラインでは、迅速な開発開始を支援するテンプレートシステムが提供されています。


公式テンプレートを使用することで、開発者は迅速にスタートできます。さらに、パイプラインDSL(Domain Specific Language)を通じてパイプラインのインポート・エクスポートが可能となり、再利用性と協業効率が向上します。この機能により、チーム間でのナレッジ共有や標準化されたワークフローの構築が容易になります。
多様なデータソースとツールの統合
ナレッジ・パイプラインの柔軟性を支える重要な要素として、豊富なデータソースとツールのエコシステムがあります。




各ナレッジベースは複数のデータソースをサポートしており、ローカルファイル、オンラインドキュメント、クラウドドライブ、Webクローラーをプラグインベースの取得フレームワークを通じてシームレスに統合できます。開発者は新しいデータソースプラグインでエコシステムを拡張でき、マーケットプレイスのプロセッサーが数式、スプレッドシート、画像解析などの特殊なユースケースに対応します。
画像抽出とマルチモーダル対応
従来のRAGシステムの大きな制限の一つであったテキスト以外の情報処理について、ナレッジ・パイプラインでは新しい解決策を提供しています。


複数フォーマットのドキュメントから画像を抽出し、ナレッジベースにURL形式で保存することが可能です。抽出された画像はテキストと組み合わせた混合出力により、LLMが生成する回答の品質を向上させます。これにより、図表や画像が重要な意味を持つ技術文書や専門資料においても、視覚的情報を含めた包括的な知識検索が実現されます。
新しいチャンク化戦略とデバッグ機能
ナレッジ・パイプラインでは、従来の汎用モードと親子モードに加えて、新たにQ&A構造をサポートするQ&Aプロセッサプラグインが導入されました。これにより、FAQ形式のドキュメントや技術マニュアルなど、質問と回答のペア構造を持つデータの最適な処理が可能となります。
さらに、パイプラインを公開する前に以下のデバッグ機能を活用できます:
- 単一ステップまたはノードの独立実行
- 中間変数の詳細検査
- 変数インスペクタでの文字列変数のMarkdownプレビュー
これらの機能により、各段階で安全な反復処理とデバッグが可能となり、開発効率が向上します。
キューベース・グラフ・エンジン:並列処理制御の新標準
統一キューシステムによる安定した並列処理
キューベース・グラフ・エンジンの核心技術である統一キューシステムは、従来の並列処理における根本的な課題を解決します。すべてのタスクが単一の統一されたキューに入り、スケジューラーが依存関係と順序を管理することで、並列実行におけるエラーが削減され、トポロジーがより直感的になります。
実行フローの改善により、以下の3つの主要な向上が実現されています:
- 統一管理:すべてのタスクが単一キューに入り、ディスパッチャーが管理
- 自動スケーリング:ワーカープールが負荷に基づいて自動的にスケーリング
- ストリーミング制御:ResponseCoordinatorがストリーミング出力を管理し、正しい順序を確保
柔軟な実行制御とコマンドメカニズム
キューベース・グラフ・エンジンの特徴的な機能の一つが、任意のノードからの実行開始機能です。この機能により、部分実行、再開、サブグラフ呼び出しが可能となり、開発とデバッグの効率が向上します。
さらに、CommandProcessorにより、実行中のワークフローを外部から制御することが可能です。
from core.workflow.graph_engine.manager import GraphEngineManager
# 停止コマンドの送信
GraphEngineManager.send_stop_command(
task_id="workflow_task_123",
reason="緊急停止:リソース制限に達しました"
)
この例に示されるように、実行中のワークフローに対してコマンドを送信し、適切な理由と共に停止処理を実行できます。一時停止・再開機能は将来のバージョンでサポート予定です。
設定パラメータと技術仕様
Dify 2.0では、システムの動作を細かく制御できる設定パラメータが提供されています:
設定項目 | デフォルト値 | 説明 |
---|---|---|
WORKFLOW_MAX_EXECUTION_STEPS | 500 | 最大実行ステップ数 |
WORKFLOW_MAX_EXECUTION_TIME | 1200秒 | 最大実行時間 |
WORKFLOW_MIN_WORKERS | 1 | 最小ワーカー数 |
WORKFLOW_MAX_WORKERS | 10 | 最大ワーカー数 |
WORKFLOW_SCALE_UP_THRESHOLD | 3 | スケールアップ閾値 |
WORKFLOW_SCALE_DOWN_IDLE_TIME | 30秒 | スケールダウン待機時間 |
これらのパラメータを適切に調整することで、システムリソースとワークロードに応じた最適な性能を実現できます。
GraphEngineLayerによる拡張性
GraphEngineLayerは、コアコードを変更することなくエンジン機能を拡張できる新しいプラグインレイヤーです。状態監視、コマンド送信、カスタム監視をサポートし、企業固有の要件に応じた機能拡張が可能です。
具体的な実装例は、GitHubのGraphEngineLayer例で確認できます。
Difyって便利そうだけど自社で導入するにはハードルが高いと感じられたかもしれません。ご安心ください!弊社ではDify環境構築からDify上のAIアプリ開発、セミナーやワークショップによる導入の啓蒙までをサポートさせていただく「Dify導入支援サービス」を提供しております。ぜひお気軽にお問い合わせください!
Dify 2.0の導入方法と実践活用
システム要件と準備
Dify 2.0の導入には、バージョン2.0.0-beta.1以上が必要です。キューベース・グラフ・エンジンはデフォルトで有効になっており、追加設定は不要です。ただし、デバッグモードを有効にする場合はDEBUG=true
を設定することでDebugLoggingLayerが利用できます。
重要な注意点として、0.xまたは1.xからアップグレードする場合は、以下の移行コマンドの実行が必須となります。
uv run flask transform-datasource-credentials
このコマンドにより、既存のデータソース認証情報が新バージョンと互換性のある形式に変換されます。
Docker Compose環境での導入
Docker Compose環境での導入は以下の手順で行います:
- バックアップの作成:カスタマイズされたdocker-compose.yamlファイルとデータボリュームをバックアップ
- コードの更新:2.0.0-beta.1ブランチをチェックアウト
- サービスの停止と再起動:既存サービスを停止し、新バージョンで再起動
- データ移行:コンテナ起動後、データ移行スクリプトを実行
具体的なコマンド例:
# バックアップの作成
cd docker
cp docker-compose.yaml docker-compose.yaml.$(date +%s).bak
tar -cvf volumes-$(date +%s).tgz volumes
# 最新コードの取得
git checkout 2.0.0-beta.1
git pull origin 2.0.0-beta.1
# データ移行の実行
docker exec -it docker-api-1 uv run flask transform-datasource-credentials
# バックアップの作成
cd docker
cp docker-compose.yaml docker-compose.yaml.$(date +%s).bak
tar -cvf volumes-$(date +%s).tgz volumes
# 最新コードの取得
git checkout 2.0.0-beta.1
git pull origin 2.0.0-beta.1
# データ移行の実行
docker exec -it docker-api-1 uv run flask transform-datasource-credentials
ソースコード環境での導入
ソースコード環境では、より詳細な制御が可能です:
- APIサーバー、ワーカー、Webフロントエンドサーバーをすべて停止
- リリースブランチから最新コードを取得
- Python依存関係を更新
- データベース移行スクリプトを実行
- 認証情報変換スクリプトを実行
- すべてのサービスを再起動
よくある質問と実践的なヒント
性能とパフォーマンスに関するFAQ
Q: Dify 2.0のリリースは性能重視ですか?
A: いいえ。主要な焦点は並列ブランチの安定性、明確性、正確性にあります。性能向上は副次的なメリットです。
Q: どのようなイベントを監視できますか?
A: Dify 2.0では、包括的なイベントシステムが実装されており、以下のレベルでの監視が可能です:
- グラフレベル:GraphRunStartedEvent、GraphRunSucceededEvent、GraphRunFailedEvent、GraphRunAbortedEvent
- ノードレベル:NodeRunStartedEvent、NodeRunSucceededEvent、NodeRunFailedEvent、NodeRunRetryEvent
- コンテナノード:IterationRunStartedEvent、LoopRunStartedEvent等
- ストリーミング出力:NodeRunStreamChunkEvent
これらのイベントを活用することで、ワークフローの実行状況を詳細に監視し、問題の早期発見と迅速な対応が可能となります。
デバッグとトラブルシューティング
効果的なデバッグのための推奨手順:
- 詳細ログの有効化:`DEBUG=true`を設定して詳細ログを表示
- DebugLoggingLayerの活用:イベント記録による実行トレース
- GraphEngineLayerでのカスタム監視:企業要件に応じた監視機能の追加
変数インスペクタでの文字列変数のMarkdownプレビュー機能により、複雑なデータ構造の理解が改善されています。
将来展望とロードマップ
今後の機能強化計画
Dify 2.0のベータリリースは始まりに過ぎません。今後予定されている主要な機能強化には以下があります:
- デバッグツール:実行状態と変数をリアルタイムで表示する視覚的インターフェース
- インテリジェントスケジューリング:履歴データを活用したスケジューリング戦略の最適化
- より完全なコマンドサポート:一時停止・再開、ブレークポイントデバッグの追加
- Human in the Loop:実行中の人間介入のサポート
- サブグラフ機能:モジュール性と再利用性の強化
- マルチモーダル埋め込み:テキストを超えたより豊富なコンテンツタイプのサポート
ナレッジ・パイプラインの発展性
ナレッジ・パイプラインは知識管理をより透明で、デバッグ可能で、拡張可能にします。これは終点ではなく、将来の機能強化のための基盤となります。マルチモーダル検索、human-in-the-loop協業、エンタープライズレベルのデータガバナンスなど、さらなる進化が期待されます。
Dify 2.0は、AI開発におけるワークフロー構築と知識管理の新しい標準を確立しています。ナレッジ・パイプラインとキューベース・グラフ・エンジンの組み合わせにより、従来では困難だった複雑なAIアプリケーションの開発が、より直感的で効率的に行えるようになりました。これらの新機能を活用することで、開発者はより高度で安定したAIソリューションを構築できるでしょう。