本文主要内容
- 本地部署 Dify、FastGPT、Ollama
- Dify、FastGPT 对接一些目前免费的 LLM 大语言 AI 模型
- Dify、FastGPT 对接 Ollama 本地模型
大家好,我是一名喜欢在家折腾本地部署的开发者,这次我来分享如何在本地运行 Ollama,并将它与 FastGPT 和 Dify 两个知识库对接。看起来复杂,但其实步骤并不难。我会尽量把内容讲得清楚易懂,加上一些幽默,让整个过程更有趣。
第一步:本地部署 Dify 和 FastGPT 💻
首先,我想找个知识库应用,结果在网上看上了 Dify 和 FastGPT。说实话,起初看了半天文档也分不出哪个更好用,就像在咖啡 ☕️ 和茶 🫖 之间犹豫不决,干脆两个都来吧!这样我就可以比较它们的优缺点,看看哪个更适合我的需求。
正好这两个工具都支持本地部署,我这个爱折腾的性格立刻就上头了,赶紧跑去 GitHub 上说干就干。
部署均使用 Docker 进行,我的电脑是 M3 16G 的 Macbook Air,性能一般,但运行这两者没有问题。不过在 Ollama 跑 3B 大小的模型时已经是极限,温度接近 90 摄氏度,建议选择较小的模型。
第二步:部署 Dify 和 FastGPT
在研究知识库应用时,我决定同时部署 Dify 和 FastGPT。毕竟,选择困难症发作时,最好的办法就是"全都要"!这样,我就可以亲自测试它们,搞清楚到底哪个更适合我的需求。
幸运的是,这两个知识库都支持本地部署,真是太方便了,让我可以在自己的电脑上尽情试验。接下来我会详细介绍如何用 Docker 来部署它们。
步骤 1:准备环境
- 确保有稳定的网络环境,下载 Docker 镜像时别被中断了,不然心态很容易炸 💥。
- 安装 Docker。Mac 用户我强烈推荐使用 Orbstack 进行安装,这玩意儿轻量又好用。而 Windows 和 Linux 用户可以直接去 Docker 官网 下载安装。
步骤 2.1:安装 Dify
-
打开 Dify 官方 GitHub 页面。
-
下载代码或者直接下载 ZIP 文件包,按照官方的 QuickStart 指引,进入到
docker
文件夹中,里面就是我们需要的东西。 -
在
docker
文件夹内执行以下命令:bashdocker-compose up -d
这个命令会自动下载 Docker 镜像并启动容器。
-
如果网络良好,整个过程应该会非常顺畅,只需稍等片刻,喝杯咖啡就搞定 ☕️。
-
完成后,可以在浏览器中访问
http://localhost/install
进行登录和配置。 -
如果在国内使用网络直接下载 Docker 镜像有问题,可以使用镜像加速器来帮忙,别被卡住了 😅。
-
更多详细说明可以参考 官方手册。
步骤 2.2:安装 FastGPT(轻松搞定,没你想的那么难!)
-
打开 FastGPT 官方 GitHub 页面。
-
下载代码或 ZIP 文件包,按照官方 QuickStart 指引,进入
files/docker
文件夹,使用里面的 Docker 配置。 -
与 Dify 不同,FastGPT 需要一些额外配置。默认情况下没有
docker-compose.yml
文件,因此启动时需要指定,例如官方推荐的docker-compose-pgvector.yml
。此外,还需要创建一个config.json
配置文件放在docker
目录下,内容可以参考 config.json。 -
配置好后,执行以下命令来启动:
bashdocker-compose -f docker-compose-pgvector.yml up -d
-
完成后,可以通过浏览器访问
http://localhost:3000
来使用 FastGPT。 -
FastGPT 的配置比 Dify 稍微复杂一些,需要在
http://localhost:3001
配置模型,并修改config.json
来匹配你的需求。 -
如果遇到下载困难,强烈建议使用镜像加速器或优化网络,让你的部署更顺利 🚀。
步骤 3:配置和运行
安装完成后,还需要进行一些简单的配置,按照文档一步一步操作就可以搞定啦 📚。Dify 的使用非常简单,直接注册登录即可,例如你可以用它来快速存储和检索文档。而 FastGPT 则有固定的管理员账号,适合需要更多定制化功能的场景,比如通过它来构建更复杂的对话模型:
- FastGPT 模型配置页面地址是
http://localhost:3001
,默认账号是root
,密码是123456
。 - FastGPT 主页面地址是
http://localhost:3000
,账号为root
,密码可以在config.json
中找到,默认是1234
。
按照这些步骤,轻松搞定!🎉
步骤 4:文件大小限制
- 在 Dify 里面,上传文件会有 15M 的单个限制,需要改个配置。
- 打开 docker 文件夹里的
.env
文件,把下面两条的15
改成150
即可:
ini
# Upload file size limit, default 15M.
UPLOAD_FILE_SIZE_LIMIT=15
NGINX_CLIENT_MAX_BODY_SIZE=15M
第三步:本地部署 Ollama 🤓
前面的 Dify 和 FastGPT 都已经部署好了,现在轮到 Ollama 出场了!把 AI 模型部署在本地就像是为这场 AI 派对请来了一位"桥梁专家",它能帮助不同的知识库联手合作,协同作战,让整个系统变得更智能、更高效。
步骤 1:安装 Ollama
首先,前往 Ollama 的 官网 下载并安装 Ollama,过程非常简单,就像你平时安装其他应用程序一样轻松。
- 下载并安装 Ollama。
- 搜索并选择所需的模型,这里我们以 llama3.2 为例,进入到 llama3.2 页面。
- 使用命令
ollama run llama3.2:3b
让 Ollama 开始"上班"吧!它一上班,你就可以和模型进行互动啦!要让它下班休息?只需要输入Ctrl+D
,或者直接来一句/bye
,它就会乖乖"打卡"回家了。
步骤 2:Dify 对接 Ollama
好了,Ollama 已经准备就绪,现在是时候让它和 Dify 握个手,成为好搭档了 🤝。
- 打开 Dify,进入设置 -> 模型供应商。
- 找到 Ollama,填写模型名称为
llama3.2:3b
,基础 URL 填写为http://host.docker.internal:11434
,其他选项保持默认即可。这样 Ollama 就正式与 Dify 建立了"合作伙伴"关系。
步骤 3:FastGPT 对接 Ollama
接下来,我们也需要让 FastGPT 加入这场 AI 聚会 🎉。
-
登录 FastGPT 的模型配置页面,选择"渠道" -> 添加新渠道。
-
在类型中选择 Ollama,名称填写
llama3.2:3b
,代理地址填写为http://host.docker.internal:11434
,其他设置保持简单。因为密钥是必填项,你可以随便填写一些字符,FastGPT 不会认真查 😂。 -
修改
config.json
文件,找到llmModels
数组,然后添加以下内容:json{ "model": "llama3.2:3b", "name": "llama3.2:3b", "avatar": "/imgs/model/openai.svg", "maxContext": 125000, "maxResponse": 4000, "quoteMaxToken": 120000, "maxTemperature": 1.2, "charsPointsPrice": 0, "censor": false, "vision": true, "datasetProcess": true, "usedInClassify": true, "usedInExtractFields": true, "usedInToolCall": true, "usedInQueryExtension": true, "toolChoice": true, "functionCall": false, "customCQPrompt": "", "customExtractPrompt": "", "defaultSystemChatPrompt": "", "defaultConfig": {}, "fieldMap": {} }
-
接着,在文件夹中执行
docker-compose down
来暂停服务,然后通过docker-compose -f docker-compose-pgvector.yml up -d
重新启动服务。 -
完成后,通过
http://localhost:3000
访问 FastGPT,你会看到你刚刚添加的llama3.2:3b
模型已经在列表中等着你了!
现在,Ollama 已经成功地和 Dify、FastGPT 结合,整个系统就像是一支高效合作的团队,随时准备帮你解决各种问题。这种组合特别适合需要在本地高效管理和利用知识的场景。
后记
为什么要折腾部署 Ollama 并对接 FastGPT 和 Dify 呢?主要是因为想在本地搭建一套知识库,并结合 AI 来进行查询或训练等操作 📚🤖。通过本地部署,用户可以更好地掌控数据的安全性和隐私性,同时可以自定义和优化 AI 的运行方式,让系统更符合自己的需求。这样一来,不仅可以满足日常工作中的各种需求,还能让你随时随地"调教"你的 AI,让它变得更加聪明伶俐,简直就是家里养了个智能小助手!