如何基于 Dify 搭建大模型应用开发平台
简介
Dify 是一个强大的大模型应用开发平台,提供了一整套工具和功能,使得开发、部署和管理复杂应用变得简单。
前提条件:
- Ubuntu 22.04
- Docker
- Python 3.10
- Node.js 18
本地源码部署
Docker 安装
1.安装 Docker 所需软件包
1
2
$ sudo apt update
$ sudo apt install ca-certificates curl gnupg lsb-release
2.获取 Docker 的官方 GPG 密钥
1
2
$ sudo mkdir -p /etc/apt/keyrings
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
3.安装 Docker
1
2
$ sudo apt update
$ sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin
4.验证 Docker 安装是否成功
1
$ docker -v
Node.js 安装
1.安装 nvm
下载并执行 nvm 安装脚本:
1
$ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash
使环境变量生效:
1
$ source ~/.bashrc
验证安装是否成功:
1
$ nvm -v
2.安装 node
安装指定 Node.js 版本:
1
$ nvm install 18.19.1
验证 node 安装是否成功
1
$ node -v
Python 安装
1.安装 Anaconda
安装 Anaconda 所需的软件包:
1
$ sudo apt install libgl1-mesa-glx libegl1-mesa libxrandr2 libxrandr2 libxss1 libxcursor1 libxcomposite1 libasound2 libxi6 libxtst6
下载 Anaconda 安装程序:
1
$ curl -O https://repo.anaconda.com/archive/Anaconda3-2024.02-1-Linux-x86_64.sh
运行 Anaconda 安装程序:
1
$ bash Anaconda3-2024.02-1-Linux-x86_64.sh
使环境变量生效:
1
$ source /root/anaconda3/bin/activate
验证 Anaconda 是否安装成功:
1
$ conda -V
2.安装 Python 环境
创建 Dify 独立的 Python 环境:
1
$ conda create --name dify python=3.10
切换至 Dify Python 环境:
1
$ conda activate dify
Dify 安装
Dify 源码下载
1
$ git clone https://github.com/langgenius/dify.git
中间件部署
部署 PostgresSQL / Redis / Weaviate:
1
2
$ cd dify/docker
$ docker compose -f docker-compose.middleware.yaml up -d
服务端部署
1.进入 api 目录:
1
$ cd dify/api
2.复制环境变量配置文件:
1
$ cp .env.example .env
3.生成随机密钥,并替换 .env
中 SECRET_KEY
的值
1
2
$ openssl rand -base64 42
$ sed -i 's/SECRET_KEY=.*/SECRET_KEY=<your_value>/' .env
4.安装依赖包
1
$ pip install -r requirements.txt
5.执行数据库迁移,将数据库结构迁移至最新版本:
1
$ flask db upgrade
6.启动 API 服务:
1
$ flask run --host 0.0.0.0 --port=5001 --debug
7.启动 Worker 服务:
1
$ celery -A app.celery worker -P gevent -c 1 -Q dataset,generation,mail --loglevel INFO
前端页面部署
1.进入 web 目录
1
$ cd web
2.安装依赖包
1
$ npm i
3.配置环境变量,复制 .env.example
到 .env.local
1
$ cp .env.example .env.local
4.构建代码
1
$ npm run build
5.启动 web 服务
1
$ npm run start
Dify 访问
访问 http://localhost:3000 地址使用本地部署的 Dify。
Docker Compose 部署
1.下载 Dify 源码
1
$ git clone https://github.com/langgenius/dify.git
2.进入 Dify 源代码的 docker 目录
1
$ cd dify/docker
3.执行一键启动命令
1
$ docker compose up -d
4.Dify 访问
访问 http://localhost:3000 地址使用 Docker 部署的 Dify。
5.升级
进入 Dify 源代码的 docker 目录,依次执行以下命令:
1
2
3
4
5
$ cd dify/docker
$ git pull origin main
$ docker compose down
$ docker compose pull
$ docker compose up -d
本文由作者按照 CC BY 4.0 进行授权