Dify 本地安装指南
Dify 是一个开源的数据集整合和功能扩展平台,它允许用户通过配置和编程的方式来创建、管理和部署数据驱动的应用程序。Dify 提供了一套工具和服务,使得开发者可以快速地集成各种数据源和外部服务,构建复杂的数据处理流程和机器学习模型,以及开发交互式的用户界面。
主要特点
-
模块化设计:Dify 采用模块化的设计理念,支持通过插件和服务的形式扩展平台功能,使得用户可以根据需要添加或修改功能模块。
-
数据集成:Dify 提供了强大的数据集成能力,支持多种数据库和数据格式,包括但不限于 SQL、NoSQL、文件系统和网络API。
-
工作流自动化:Dify 允许用户定义复杂的数据处理和分析工作流,支持自动化的任务调度和执行,帮助用户提高工作效率。
-
交互式开发环境:Dify 提供了一个交互式的开发环境,支持代码编辑、调试和测试,使得开发者可以在一个统一的界面中完成大部分开发任务。
-
可视化界面:Dify 提供了丰富的可视化组件,支持构建动态的仪表板和报告,帮助用户更好地理解和展示数据。
-
安全性和可扩展性:Dify 在设计上注重安全性和可扩展性,支持多用户和多角色的权限管理,以及横向和纵向的扩展。
应用场景
- 数据分析和报告:快速构建数据分析和报告工具,支持实时数据处理和展示。
- 机器学习和人工智能:集成机器学习模型和算法,支持模型训练、评估和部署。
- 企业级应用开发:构建企业级应用,支持复杂的业务逻辑和数据流。
- IoT 和实时数据处理:处理来自 IoT 设备的实时数据流,支持事件驱动的数据处理和响应。
安装和部署
Dify 支持在多种操作系统上部署,包括 macOS、Linux 和 Windows。用户可以选择在本地部署或者在云平台上部署。安装过程涉及到配置系统环境、安装必要的依赖软件、克隆源代码、部署中间件和启动服务等步骤。
通过这些功能和特点,Dify 为开发者提供了一个强大而灵活的平台,用于构建和部署数据驱动的应用程序。
前置条件
确保你的机器已满足以下最低安装要求:
- CPU: 至少 2 核心
- RAM: 至少 4 GiB
操作系统和软件要求
-
macOS 10.14 或更高版本:
- 使用 Docker Desktop
- 将 Docker 虚拟机(VM)设置为使用至少 2 个虚拟 CPU(vCPU)和 8 GB 的初始内存。安装 Docker Desktop
-
Linux 平台:
- Docker 19.03 或更高版本
- Docker Compose 1.25.1 或更高版本
- 安装 Docker
- 安装 Docker Compose
-
Windows (启用 WSL 2):
- 使用 Docker Desktop
- 建议将源代码和其他数据绑定到 Linux 容器中时,存储在 Linux 文件系统中。安装 Docker Desktop (WSL 2 后端)
特殊软件要求
- OpenAI TTS 使用:
- 系统中需要安装 FFmpeg。安装 FFmpeg
克隆 Dify 代码
git clone https://github.com/langgenius/dify.git
部署中间件
在启用业务服务之前,需要先部署 PostgreSQL / Redis / Weaviate:
cd docker
cp middleware.env.example middleware.env
docker compose -f docker-compose.middleware.yaml up -d
安装基础环境
服务器启动需要 Python 3.11 或 3.12。建议使用 pyenv 快速安装 Python 环境。
pyenv install 3.11
pyenv global 3.11
启动 API 服务
-
进入 API 目录并配置环境变量:
cd api cp .env.example .env awk -v key="$(openssl rand -base64 42)" '/^SECRET_KEY=/ {sub(/=.*/, "=" key)} 1' .env > temp_env && mv temp_env .env
-
安装依赖包并执行数据库迁移:
poetry env use 3.11 poetry install poetry shell flask db upgrade
-
启动 API 服务:
flask run --host 0.0.0.0 --port=5001 --debug
启动 Worker 服务
Linux / MacOS:
celery -A app.celery worker -P gevent -c 1 -Q dataset,generation,mail,ops_trace --loglevel INFO
Windows:
celery -A app.celery worker -P solo --without-gossip --without-mingle -Q dataset,generation,mail,ops_trace --loglevel INFO
部署前端页面
-
安装 Node.js 和 NPM:
# 访问 https://nodejs.org/en/download 并安装 Node.js v18.x
-
启动前端服务:
cd web npm install npm run build npm run start
访问 Dify
访问 http://127.0.0.1:3000 来使用本地部署的 Dify。