langgenius/dify
5 articles
前提知識
- ›Flask と Python Web アプリケーションの基礎知識
- ›Docker Compose の基本的な使い方
- ›LLM アプリケーションの概念的な理解
01
Dify アーキテクチャ概観:6,000 ファイルの LLM プラットフォームを読み解く
Dify コードベースの全体像を俯瞰します。二プロセス構成、Flask 拡張、blueprint ルーティング、Pydantic 設定システム、Docker Compose トポロジーを中心に解説します。
02
HTTPリクエストからLLMレスポンスまで:アプリ実行パイプラインの全貌
APIリクエストがサービス層を通じて処理される一連のライフサイクルを、Generator/Runner/QueueManager/TaskPipelineという4段階パターンに沿ってたどります。
03
ワークフローエンジンの内部構造:グラフ実行、Node Factory、そしてLayerシステム
Layerパターン、DifyNodeFactoryの依存性注入、ノードの自己登録、pause/resumeメカニズムを通じて、グラフエンジンの仕組みを深く掘り下げます。
04
RAGパイプライン:ドキュメントのインデックス化、ベクトルストレージ、ナレッジ検索
Difyがドキュメントをアップロードから抽出・クリーニング・分割・埋め込み・ベクトルストレージへと処理し、クエリ時に検索するまでの仕組みを解説します。
05
モデルプロバイダー、ツールエコシステム、プラグインアーキテクチャ
DifyがLLMプロバイダーを統一インターフェースに抽象化する仕組み、ツール型の分類体系、そしてプラグインデーモンの逆方向呼び出しアーキテクチャを詳しく解説します。