前言

这两年,AI聊天机器人火得一塌糊涂,ChatGPT、DeepSeek等等,大家肯定都体验过。这些AI确实厉害,能回答问题、写文章、做翻译,给我们带来了很多方便。

但您有没有发现,这些AI工具虽然好用,但总感觉有点“隔靴搔痒”:

  • 它们都是“别人家的”AI,我们只能用,不能改,更不能完全掌控。

  • 它们回答的都是通用知识,一旦涉及到我们自己的具体需求,比如公司内部的资料、个人的偏好,它们就无能为力了。

  • 想在自己的网站或App里集成AI?想和朋友一起打造一个专属的AI工具?更是难上加难。

Dify,这个名字听起来可能有点陌生,但它其实是一个非常强大的工具,能让AI真正为我们普通人所用。它能让您不用写代码,像搭积木一样,创建属于您自己的AI应用。更棒的是,您可以把它部署在NAS上,数据安全、省钱、可玩性高,一举多得!

您可以把它想象成一个“AI魔法厨房”,在这里,您可以:

品尝现成的“AI大餐”: Dify 提供了很多做好的“菜”, 称之为应用。比如:

  • 智能聊天机器人: 它可以回答您各种问题,就像一个24小时在线的私人助理。

  • 文本生成工具: 帮您写文章、写邮件、写总结,甚至写诗、写代码,只要您能想到的,它都能帮您写。

这些“菜”都已经预先调好了味道,您直接享用就行。

  1. 定制您的“专属口味”

    如果您觉得现成的“菜”还不够满足您的需求,没关系,Dify允许您调整“配方”。您可以:

    • 更换“调料”:Dify支持接入多种AI大语言模型(比如GPT、DeepSeek、Claude等),您可以根据自己的喜好选择不同的“调料”,让AI的回答风格更符合您的口味。

    • 修改“菜谱”:Dify的每个应用都有详细的“菜谱”(配置参数),您可以根据自己的需求调整这些参数,让AI更好地为您服务。比如,您可以让聊天机器人更幽默,或者让文本生成工具写出更符合您要求的文章

  2. 成为“AI大厨”(如果您愿意)

    如果您对AI有浓厚的兴趣,想更深入地了解AI的工作原理,Dify也为您提供了这个机会。Dify的可视化界面,让您像搭积木一样创建自己的AI应用。整个过程不需要写代码,只需要拖拽、连接几个模块,就能实现您的创意。

    而且,Dify还支持多人协作。您可以和朋友、同事一起“烹饪”AI大餐,共同打造更强大的AI应用。

  3. 关键是:数据安全!

    当您把Dify部署在自己的NAS上时,所有的数据都存储在本地,不用担心您的隐私泄露给任何第三方平台。您可以完全掌控自己的AI应用和数据,就像把“厨房”建在自己家里一样安全放心。

总之,Dify就像一个神奇的工具,它把AI的强大能力交到我们普通人手中。无论您是想直接使用AI,还是想定制AI,甚至想创造AI,Dify都能满足您的需求。这篇教程,我会手把手教您在绿联NAS上部署Dify,整个过程非常简单,即使您是NAS新手或者AI小白,也能轻松搞定。我会尽量用大白话来解释,让您一看就懂,一起开启AI的奇妙之旅!

https://github.com/langgenius/dify

部署容器

该容器需要一定的linux基础 ,纯新手小白建议直接抄作业一步步走,本次教程一共需要9个容器,所以只会以Compose方式进行部署

克隆代码库

我选择使用Dify官方仓库的docker-compose进行部署,下面有两种方式获取官方源代码

建议有科学环境的可以自己拉去代码库,这样可以保证程序是最新的。无法拉取的小伙伴我也给大家上传了网盘文件,解压后一样使用

ssh到绿联NAS上clone代码库

ssh登录绿联终端

用与绿联Nas在同一局域网的电脑使用ssh工具连接(FinalShell等)

ssh 管理员ID@绿联nasIP地址 -p 22
sudo -i #输入管理员密码,切换为root用户

看到有root字样则表示成功

安装git命令

git --version #如果 Git 已经安装,终端会显示 Git 的版本信息。如果未安装,则会提示找不到 git 命令。

sudo apt update  # 更新软件包列表,确保获取最新的软件包信息
sudo apt install git  # 安装 Git 软件包
git --version  # 检查 Git 是否成功安装,并显示版本信息

使用git命令拉取源代码

cd /volume1/Docker && git clone https://github.com/langgenius/dify.git  # 将 GitHub 仓库 dify 克隆到 /volume1/Docker 目录下

如果拉取不下来部署v2raya容器,使用http代理拉取

https://hi.keba.host/archives/v2raya
http_proxy="http://127.0.0.1:20171" git clone https://github.com/langgenius/dify.git /volume1/Docker/dify  # 使用 http 代理克隆 GitHub 仓库 dify 到 /volume1/Docker/dify 目录
成功克隆至/volume1/Docker/dify 目录下

修改.env.example

绿联会将.env.example 视为隐藏文件,在文件管理器中无法看到

cd /volume1/Docker/dify/docker && ls -a  # 进入 /volume1/Docker/dify/docker 目录,并列出所有文件和目录(包括隐藏文件)

编辑.env文件

cp .env.example .env  # 复制 .env.example 文件到 .env,创建一个配置文件
nano .env #使用nano编辑器,修改配置文件

修改容器访问端口

使用键盘上下左右键移动光标

因为80和443端口被NAS占用了,所以需要修改.env文件NGINX对外暴露的http和https端口,这里我设置的是1308013443

使用crtrl+o保存,回车。然后ctrl+x退出编辑。

设置http代理

如果你是使用国内的一些AI或者购买的国内可以访问的中转AI的API的话可以省略这一步(点击购买→中转API

在 Dify 的 Docker 配置目录中,找到 squid.conf.template 文件。这个文件位于 /volume1/Docker/dify/docker/ssrf_proxy 目录下。使用任意文本编辑器打开此文件,准备进行修改。

cd /volume1/Docker/dify/docker/ssrf_proxy  # 进入 SSRF 代理目录
nano squid.conf.template  # 使用 nano 编辑器打开 squid.conf.template 文件

修改以下内容

# 定义上游代理,http代理,20172是v2raya带分流规则的端口
cache_peer 192.168.1.10 parent 20172 0 no-query default

# 禁止直接连接,强制使用上游代理
never_direct allow all

使用crtrl+o保存,回车。然后ctrl+x退出编辑。

新建文件夹

因为绿联compose版本较低,需要在/volume1/Docker/dify/docker/volumes下面手动创建一些文件夹,如下所示:

  1. db/data

  2. redis/data

  3. weaviate

  4. app/storage

  5. certbot/conf/live

  6. certbot/www

正式部署容器

直接选择导入该配置

还是因为绿联compose版本较低,下面会提示有些不支持的语法,删除即可

完成后点击立即部署即可,耐心等待九个容器启动。

实在拉不下来的我这边也打包了镜像,先添加到本地镜像后再点立即部署

https://pan.baidu.com/s/1rngvguXlIqYV48qhiXZY7A?pwd=ez9r

食用方法

设置管理员账户

访问后台:http://nasip:13080 根据你修改的.env文件修改端口号。

配置大语言模型

OK,到这里,Dify的部署就大功告成了!现在,您可以尽情体验这个专属的AI“魔法厨房”了,试试和聊天机器人聊聊天,或者用文本生成工具写点东西。如果您想深入探索Dify的更多玩法,比如强大的工作流功能,可以关注我的后续文章,咱们一起学习进步!当然,也欢迎您直接查阅Dify的官方中文文档,相信您一定能创造出更多有趣又实用的AI应用!