菜单

系统架构

相关源文件

本文档提供了 Dify 系统架构的全面概述,包括其微服务设计、数据层、AI/ML 集成和部署结构。Dify 是一个用于构建 LLM 应用程序的开源平台,支持聊天、补全、工作流和基于代理的应用程序等各种应用程序类型。

有关各个组件的具体实现细节,请参阅 API 后端架构Web 前端架构数据库和存储架构。有关特定于部署的信息,请参阅部署和配置

整体平台架构

来源: docker/docker-compose.yaml1-720 docker/docker-compose-template.yaml1-280 api/app.py1-42

服务组件架构

来源: api/app_factory.py29-102 api/dify_app.py (隐含), docker/docker-compose.yaml510-563

数据模型与关系

来源: api/models/model.py75-481 api/models/workflow.py75-320 api/models/dataset.py37-120 api/models/account.py67-200

工作流与 AI 处理架构

来源: api/models/model.py48-68 api/core/workflow/workflow_entry.py (隐含), api/models/workflow.py40-73 api/core/workflow/nodes/node_mapping.py (隐含)

向量数据库和知识管理

来源: api/core/rag/datasource/vdb/vector_factory.py28-130 api/core/rag/datasource/vdb/vector_type.py4-25 api/models/dataset.py37-120 api/controllers/console/datasets/datasets.py49-200

安全和网络架构

来源: docker/docker-compose.yaml188-193 docker/ssrf_proxy (目录), api/models/account.py15-70 api/extensions/ext_login.py (隐含)

插件系统架构

来源: api/configs/feature/__init__.py141-193 docker/docker-compose.yaml649-704 api/services/plugin (目录)

配置与环境管理

配置类别关键环境变量默认值目的
核心服务DIFY_PORT, SERVER_WORKER_AMOUNT, CELERY_WORKER_AMOUNT5001, 1, 1服务扩展配置
数据库DB_HOST, DB_PORT, DB_USERNAME, DB_PASSWORD, DB_DATABASEdb, 5432, postgres, difyai123456, difyPostgreSQL 连接设置
RedisREDIS_HOST, REDIS_PORT, REDIS_PASSWORD, REDIS_DBredis, 6379, difyai123456, 0Redis 缓存和队列配置
向量存储VECTOR_STORE, WEAVIATE_ENDPOINT, QDRANT_URLweaviate, http://weaviate:8080, http://qdrant:6333向量数据库选择和端点
存储STORAGE_TYPE, OPENDAL_SCHEME, S3_BUCKET_NAMEopendal, fs, difyai文件存储后端配置
安全SECRET_KEY, RESET_PASSWORD_TOKEN_EXPIRY_MINUTES(generated), 5安全和认证设置
代码执行CODE_EXECUTION_ENDPOINT, CODE_EXECUTION_API_KEY, SANDBOX_PORThttp://sandbox:8194, dify-sandbox, 8194沙盒执行环境
插件系统PLUGIN_DAEMON_URL, PLUGIN_MAX_PACKAGE_SIZE, MARKETPLACE_ENABLEDhttp://:5002, 52428800, true插件管理和市场

来源: docker/.env.example1-501 api/.env.example1-501 api/configs/feature/__init__.py1-700