一 前言
Dify是什么,Dify 一词源自 Define + Modify,意指定义并且持续的改进你的 AI 应用,它是为你而做的(Do it for you)。正如其官网所言(https://docs.dify.ai/zh-hans/introduction)是一个AI应用开发平台,通过这个平台可以快速生成和搭建AI应用; Dify是开源的,由:苏州语灵人工智能科技有限公司 在2023年3月开源。
其内置了数百个模型的支持,RAG引擎、Agent框架、还有灵活的工作流,可配置的工具、以及可视化拖拽的界面。给我们AI应用开发提供一整套、完备的工具箱、通过这些工具箱里面的工具,我们甚至可以不用任何开发,就可以快速搭建一个AI应用。除此之外,其内置插件市场, 可轻松接入第三方模型和工具,让你的应用轻松具有看、听、说、画等能力,还可通过自定义工具的形式,快速接入业务平台。
二 安装
Dify有多种部署模式,本次采用的是Docker镜像方式,本来是很简单的过程,在国内却变得棘手起来,不知道哪位上位封了Docker,让依赖Docker的开发者很痛苦,就光知道一刀砍嘛,不想想影响有多大。
Dify的安装环境,硬件要求满低的,2核CPU、4G内存基本就可以跑了。Docker环境要求:
Docker 19.03 or later
Docker Compose 1.28 or later
2.1 下载和安装
# 下载
git clone https://github.com/langgenius/dify.git
# 进入docker目录
cd dify/docker
# 构建环境信息
cp .env.example .env
# docker compose 后台启动
docker compose up -d
在中国环境嘛,会遇到一系列问题:
镜像无法访问,需要配置docker镜像地址:
[root@iZwz97vcvjlst5yp9ifxzvZ docker]# cat /etc/docker/daemon.json
{
"registry-mirrors":
[
"https://docker.m.daocloud.io/",
"https://hub.rat.dev",
"https://huecker.io/",
"https://docker.1panel.live/",
"https://dockerhub.timeweb.cloud",
"https://noohub.ru/",
"https://dockerproxy.com",
"https://docker.mirrors.ustc.edu.cn",
"https://docker.nju.edu.cn",
"https://xx4bwyg2.mirror.aliyuncs.com",
"http://f1361db2.m.daocloud.io",
"https://registry.docker-cn.com",
"http://hub-mirror.c.163.com",
"https://dockerhub.azk8s.cn",
"https://hub.rat.dev",
"https://docker.mirrors.ustc.edu.cn"
]
}
如果有些IP还不能访问,记得改下DNS服务器地址:
vim /etc/resolv.conf
# 添加域名解析服务器地址
nameserver 8.8.8.8
线程创建失败问题
worker_beat-1 | OpenBLAS blas_thread_init: pthread_create failed for thread 1 of 2: Operation not permitted
解决办法:
vim /etc/security/limits.conf
* soft nproc 65535
* hard nproc 65535
* soft nofile 65535
* hard nofile 65535
容器权限问题
#报错信息:
sandbox-1 exited with code 2 (restarting)
#更改docker-compose.yaml
在相关容器启动配置下添加禁用默认安全配置
security_opt:
- seccomp:unconfined
添加后如下:
sandbox:
image: langgenius/dify-sandbox:0.2.12
restart: always
security_opt:
- seccomp:unconfined
environment:
# The DifySandbox configurations
# Make sure you are changing this key for your deployment with a strong key.
# You can generate a strong key using `openssl rand -base64 42`.
API_KEY: ${SANDBOX_API_KEY:-dify-sandbox}
GIN_MODE: ${SANDBOX_GIN_MODE:-release}
WORKER_TIMEOUT: ${SANDBOX_WORKER_TIMEOUT:-15}
ENABLE_NETWORK: ${SANDBOX_ENABLE_NETWORK:-true}
HTTP_PROXY: ${SANDBOX_HTTP_PROXY:-http://ssrf_proxy:3128}
HTTPS_PROXY: ${SANDBOX_HTTPS_PROXY:-http://ssrf_proxy:3128}
SANDBOX_PORT: ${SANDBOX_PORT:-8194}
PIP_MIRROR_URL: ${PIP_MIRROR_URL:-}
volumes:
Dify入门:从部署到AI应用搭建

最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



