项目地址: dify
a. 理论基础
Dify 是一个 LLM 应用开发平台,已经有超过 10 万个应用基于 Dify.AI 构建。它融合了 Backend as Service 和 LLMOps 的理念,涵盖了构建生成式 AI 原生应用所需的核心技术栈,包括一个内置 RAG 引擎。使用 Dify,你可以基于任何模型自部署类似 Assistants API 和 GPTs 的能力。
本地成功部署后,就可以在此基础上配置自己专属的RAG 和 agent了。
b. 本地部署
建议使用linux或者macos系统,windows系统部署下,有的功能会有bug,问了作者也暂时无法解决。
一.前置条件
二. 安装postgre, redis , nodejs & redis , docker , qdrant(向量数据库)
1. 安装postgresql
可以直接参考这一篇文章: 安装postgresql , 按照里面的命令创建超级用户 / 设置root 密码 / 创建一个dify的数据库就可以了。
# PostgreSQL database configuration
DB_USERNAME=postgres
DB_PASSWORD=difyai123456
DB_HOST=localhost
DB_PORT=5432
DB_DATABASE=dify
2. 安装redis
可以直接参考这一篇文章: 安装redis , 这里按照里面的步骤修改密码就可以了,其他都可以不用设置。
# redis configuration
REDIS_HOST=localhost
REDIS_PORT=6379
REDIS_USERNAME=
REDIS_PASSWORD=difyai123456
REDIS_DB=0
3. 安装nodejs & npm
可以直接参考这一篇文章: 安装nodejs & npm , 这里笔者试过如果直接安装的话大概率是低于18版本的,所以需要如介绍的需要下载并重新执行nodesource.curl -sL
https://deb.nodesource.com/setup_18.x | sudo -E bash -
在安装完之后还需要设置以下npm的国内镜像,否则会很慢, 具体npm换新原可以参考npm换源
npm config set registry https://registry.npm.taobao.org
4. 安装docker
在安装向量数据库之前,需要安装docker 。Docker 安装 (完整详细版)_docker安装-CSDN博客 按照说明文档安装完成之后运行,检测是否安装成功
sudo docker run hello-world
5. 安装向量数据库qdrant(推荐)
dify支持weaviate, qdrant, milvus 三个数据库,这里介绍了qdrant,weaviate有点其他问题。 qdrant 可以直接从docker安装,简单。
sudo docker run -d -p 6333:6333 qdrant/qdrant
安装完成之后会执行上面代码启动qdrant服务,可以得到一串api字符,在api/.env环境中输入如下 , 还需要把VECTOR_STORE相对应的改称对应的数据库:
# Vector database configuration, support: weaviate, qdrant, milvus
VECTOR_STORE=qdrant
# Qdrant configuration, use `http://localhost:6333` for local mode or `https://your-qdrant-cluster-url.qdrant.io` for remote mode
QDRANT_URL=http://localhost:6333
QDRANT_API_KEY= xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
QDRANT_CLIENT_TIMEOUT=20
当然也可以直接启动qdrant云服务,这个需要从qdrant官网里找到apikeys 和 自己账号专属的url , 再修改对应的配置文件
三. 安装环境
在安装完上面的数据后,就按照dfiy给的官方文档配置就可以了。这里说几个可能遇到的坑。
1 . .env文件配置
有几个地方如果不感肯定的话建议,按照默认文件里的去修改redis / postgresql 配置, 比如名称/ 密码 / 用户名等
2. [openai] Error: ffmpeg is not installed
没有装ffmpeg的话,安装以下bash指令就可以安装
$ sudo apt-get update
$ sudo apt-get install ffmpeg
3. 其他本地部署问题
可以参考官方文档,几个常见的本地部署问题.
c. Docker部署
docker启动是最快速的方法,也是官方推荐的方法,如果不需要修改源码的话,在安装完docker后使用下面命令安装,安装docker可以参考Docker 安装 (完整详细版)_docker安装-CSDN博客
cd docker
docker compose up -d