在 NAS 上部署本地 AI(DeepSeek + Dify)用于文档分析与知识蒸馏

发布时间:2026/8/25 10:35:03

在 NAS 上部署本地 AI(DeepSeek + Dify)用于文档分析与知识蒸馏
本教程基于极空间 NASx86 架构16GB 内存和 Docker 环境详细记录从零开始部署 Ollama DeepSeek-R1 7B 量化版以及 Dify Embedding知识库 的全流程包含所有遇到的踩坑点和解决方案。适合希望通过本地 AI 处理私密文档的小微企业或个人。 环境准备硬件- 极空间 Z4pro性能版或其他 x86 架构 NAS支持 Docker- 内存建议 ≥ 16GB7B 模型需 8~10GB系统及其他服务占用约 4GB- CPU 核心数 ≥ 4N305 可流畅运行软件- 开启 SSH控制面板 → 终端机和 SNMP → 启用 SSH- 已安装 Docker套件中心搜索 Docker 安装- 配置镜像加速器解决国内拉取慢的问题推荐地址- 道客镜像站https://docker.m.daocloud.io- 凌霞加速器https://docker.1panel.live- 中科大https://docker.mirrors.ustc.edu.cn- 网易http://hub-mirror.c.163.com注意在极空间 Docker 设置中进入“加速器配置”标签页填入上述任一地址即可。一、部署 Ollama 并安装 DeepSeek 模型1. 创建存储目录在文件管理器中在机械硬盘如 /SATA存储11下新建文件夹 ollama用于存放模型文件。2. 拉取 Ollama 镜像打开 Docker → 镜像 → 仓库搜索 ollama选择 ollama/ollama:latest 下载。3. 创建容器关键配置| 配置项 | 值 || CPU 限制 | 3 核可根据实际调整留部分给系统 || 内存限制 | 9GB9162 MB给模型和缓存留足空间 || 文件/文件夹映射 | /SATA存储11/ollama → /root/.ollama不要勾选只读 || 网络 | host 模式使用宿主机网络无需额外端口映射 |其他保持默认点击“应用”创建容器。4. 手动下载模型避免网络问题由于直接 ollama pull 在国内极不稳定推荐手动下载 GGUF 文件1. 访问 [HuggingFace 镜像站](https://hf-mirror.com/bartowski/DeepSeek-R1-Distill-Qwen-7B-GGUF)2. 找到 DeepSeek-R1-Distill-Qwen-7B-Q4_K_M.gguf约 4.7GB并下载。3. 将下载的文件上传到 NAS 的 /SATA存储11/ollama 目录不要放到子文件夹。4. 在该目录下新建文本文件命名为 Modelfile无后缀内容为FROM ./DeepSeek-R1-Distill-Qwen-7B-Q4_K_M.gguf5. 导入模型SSH 登录 NAS执行以下命令进入容器并创建模型bashdocker exec -it ollama bashollama create deepseek-r1:7b-q4_K_M -f Modelfile完成后用 ollama list 验证应显示该模型。二、部署 Dify1. 下载 Dify 源码- 从 GitHub 下载最新版 [dify-main.zip](https://github.com/langgenius/dify/archive/refs/heads/main.zip)解压后上传到 NAS 中与 ollama 同级的目录例如 /SATA存储11/dify-main。2. 提权避免权限问题SSH 登录后执行bashsudo usermod -aG docker $USER输入密码然后重新登录 SSH 使组权限生效。3. 进入 Dify 目录并启动bashcd /路径/dify-main/docker # 根据你实际上传的路径docker compose up -d首次运行会自动拉取所需镜像。如果拉取缓慢或失败可参考上面配置镜像加速器或手动拉取以下镜像bashdocker pull langgenius/dify-api:latestdocker pull langgenius/dify-web:latestdocker pull postgres:15-alpinedocker pull redis:6-alpinedocker pull nginx:latestdocker pull langgenius/dify-sandbox:latest拉取完成后再次执行 docker compose up -d。4. 处理端口冲突如 nginx 启动失败如果启动时出现类似 failed to bind host port 0.0.0.0:8080/tcp: address already in use 的错误说明端口被占用需要修改配置。步骤a. 复制环境变量模板并编辑bashcp .env.example .envnano .env修改以下内容可根据需要调整端口DB_USERNAMEpostgresDB_PASSWORDdifyai123456DB_HOSTdb_postgres # 注意服务名是 db_postgres 还是 db查看 docker-compose.yamlDB_PORT5432DB_DATABASEdifyEXPOSE_NGINX_PORT8091 # 使用未被占用的端口NGINX_SSL_ENABLEDfalseREDIS_HOSTredisREDIS_PORT6379REDIS_PASSWORDdifyai123456SECRET_KEYyour-strong-secret-key # 可随机生成如 NAS 登录密码保存CtrlO回车并退出CtrlX。b. 修改 docker-compose.yaml 中 nginx 的端口映射bashcp docker-compose.yaml docker-compose.yaml.baknano docker-compose.yaml找到 nginx 服务的 ports 部分将 80:80 改为 ${EXPOSE_NGINX_PORT:-80}:91确保使用环境变量。保存退出。c. 重新启动bashdocker compose downdocker compose up -d5. 处理 api/worker 重启问题如果某些容器如 api、plugin_daemon不断重启可能是数据库连接未就绪或环境变量未正确读取。可以尝试bashdocker compose stop apidocker compose rm -f apidocker compose up -d api等待片刻查看日志docker logs docker-api-1 --tail 50若仍有报错请检查 .env 中 DB_HOST 是否与 docker-compose.yaml 中的数据库服务名一致常见为 db 或 db_postgres。6. 拉取 Embedding 模型知识库必需在 Ollama 容器中拉取轻量嵌入模型bashdocker exec -it ollama ollama pull nomic-embed-text三、配置 Dify 使用本地模型1. 访问 Dify Web 界面浏览器打开 http://你的NAS_IP:你设置的端口例如 http://192.168.5.219:8091。首次访问需注册管理员账号邮箱、用户名、密码自设。2. 添加 DeepSeek 模型LLM- 登录后点击右上角头像 → 设置 → 模型供应商。- 找到 Ollama点击“添加模型”。- 类型选择 LLM填写- 模型名称deepseek-r1:7b-q4_K_M必须与 ollama list 一致- 基础 URLhttp://你的NAS_IP:11434注意是 NAS 的 IP不要用 localhost- 保存状态应变为“已启用”。3. 添加 Embedding 模型用于知识库- 同样在 Ollama 供应商下点击“添加模型”类型选择 Text Embedding。- 模型名称nomic-embed-text- 基础 URL同上http://你的NAS_IP:11434- 保存。四、创建知识库并导入文档1. 创建知识库左侧菜单 → 知识库 → 创建知识库 → 输入名称如“公司资料”选择语言中文创建。2. 导入文档进入知识库点击“导入文档”。支持- 上传文件PDF、Word、Excel、PPT、TXT、Markdown 等可多选- 网页导入输入网址抓取内容- 文本导入直接粘贴文本3. 文档分段分区Dify 自动将文档切分成段落chunk。默认每段 500 字符重叠 50 字符适合大多数场景。也可手动调整- 点击“分段设置”- 修改“分段长度”如技术文档可设为 1000- 修改“重叠长度”避免关键信息切断4. 等待向量化上传后系统使用 Embedding 模型将文本转为向量。状态栏显示“处理中”→“已完成”后即可使用。五、创建应用并启用知识库1. 创建应用左侧菜单 → 工作室 → 创建应用 → 选择 聊天助手输入应用名称。2. 关联知识库在应用编排页面右侧找到 上下文 → 添加 → 选择你创建的知识库。3. 配置提示词可选在左侧“提示词”框可自定义 AI 行为例如你是一个专业的文档分析助手。请基于提供的知识库内容回答问题。如果无法回答请如实告知。4. 发布并测试点击右上角 发布即可在对话框提问。例如- “总结一下这份合同的核心条款”- “我们代理的防火墙有哪些型号”AI 会基于知识库内容回答。六、常见问题与解决| 问题 | 解决方案 || 拉取镜像超时| 配置镜像加速器极空间 Docker 设置 → 加速器配置或手动下载导入。 || docker 命令权限不足 | sudo usermod -aG docker $USER 并重新登录 SSH。 || 端口冲突导致 nginx 无法启动| 修改 .env 中的 EXPOSE_NGINX_PORT 为一个空闲端口并确保 docker-compose.yaml 中对应使用该变量。 || api/worker 不断重启 | 检查 .env 中数据库连接是否正确DB_HOST 应与 docker-compose.yaml 中的服务名一致。尝试 docker compose rm -f api docker compose up -d api。 || 上传文档后一直“处理中”| 检查 Embedding 模型是否已添加并启用查看 worker 日志 docker logs docker-worker-1。 || AI 回答找不到知识库内容| 确认应用编排中已正确关联知识库且文档已完成向量化。可调整检索策略混合检索、相似度阈值。 || 模型回答太慢| 监控 docker stats ollama 看内存是否吃紧可降低并发数在 Ollama 容器中设置 OLLAMA_NUM_PARALLEL1。 |七、后续优化建议1. 提升检索效果尝试使用更专业的 Embedding 模型如 bge-m3需在 Ollama 中拉取。2. 外网访问如需在外网使用建议配置 DDNS 端口转发极空间的节点小宝或使用 VPNTailscale/ZeroTier更安全。3. 多知识库隔离为不同部门或客户创建独立知识库实现数据隔离。4. 监控资源定期执行 docker stats 查看内存占用避免 OOM。 结语至此已在极空间 NAS 上成功部署了一套完全本地化、私密、免费的 AI 文档分析系统。所有数据保留在内网无需担心泄露且可无限次使用。如果本教程对你有帮助欢迎收藏或分享给需要的朋友。如有疑问欢迎在评论区留言交流。

相关新闻

GetQzonehistory:QQ空间历史说说导出工具,扫码一次完整归档

GetQzonehistory:QQ空间历史说说导出工具,扫码一次完整归档

2026/8/25 10:35:03

GetQzonehistory:QQ空间历史说说导出工具,扫码一次完整归档 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory GetQzonehistory 是一个免费开源的 QQ空间历史说说导…

企业级智能体规模化部署:架构、安全与工程化实践指南

企业级智能体规模化部署:架构、安全与工程化实践指南

2026/8/25 10:35:03

1. 从概念到落地:企业级智能体的核心门槛最近和几个做企业数字化转型的朋友聊天,大家不约而同地提到了一个词:智能体。从去年开始,这个概念火得一塌糊涂,各种AI公司、云厂商都在讲自己的“智能体平台”或“智能体解决方…

3步搞定Ultimate ASI Loader:游戏MOD加载神器

3步搞定Ultimate ASI Loader:游戏MOD加载神器

2026/8/25 10:35:03

3步搞定Ultimate ASI Loader:游戏MOD加载神器 【免费下载链接】Ultimate-ASI-Loader The Ultimate ASI Loader is a proxy DLL that loads custom .asi libraries into any game process. 项目地址: https://gitcode.com/gh_mirrors/ul/Ultimate-ASI-Loader Ultimate AS…

从静默死亡到进程崩溃:C# BackgroundService 在信创环境的 5 个夺命坑,你踩过几个?

从静默死亡到进程崩溃:C# BackgroundService 在信创环境的 5 个夺命坑,你踩过几个?

2026/8/25 11:25:05

🔥关注墨瑾轩,带你探索编程的奥秘!🚀 🔥超萌技术攻略,轻松晋级编程高手🚀 🔥技术宝库已备好,就等你来挖掘🚀 🔥订阅墨瑾轩,智趣学习不…

多智能体协作框架DataFactory:基于ReAct与知识图谱的复杂表格问答实践

多智能体协作框架DataFactory:基于ReAct与知识图谱的复杂表格问答实践

2026/8/25 11:25:05

1. 项目概述:当表格问答遇上多智能体协作最近在做一个挺有意思的项目,叫DataFactory。这名字听起来像个数据工厂,实际上也确实如此,只不过它生产的是“答案”。简单来说,DataFactory是一个专门用来解决高级表格问答问题…

Windows服务器等保2级加固实战:从账户策略到日志审计的完整指南

Windows服务器等保2级加固实战:从账户策略到日志审计的完整指南

2026/8/25 11:25:05

1. 项目概述:为什么Windows服务器加固是门必修课?最近在帮一个客户做合规审计,他们的业务系统跑在几台Windows Server上,目标是过等保2级。说实话,一开始他们觉得“加固”就是装个杀毒软件、改个密码的事儿。但等我们真…

DataFactory:基于多智能体协作的复杂表格问答框架设计与实践

DataFactory:基于多智能体协作的复杂表格问答框架设计与实践

2026/8/25 11:25:05

1. 项目概述:当大模型遇上结构化数据最近在搞表格问答(Table Question Answering)相关的研究和落地,发现一个挺有意思的痛点:现有的方案,无论是直接用GPT-4这类大模型去“硬读”表格,还是用一些…

GPU架构演进:从图形渲染到AI计算引擎的核心逻辑与实战影响

GPU架构演进:从图形渲染到AI计算引擎的核心逻辑与实战影响

2026/8/25 11:25:05

1. 从图形处理器到计算引擎:GPU架构演进的底层逻辑聊起NVIDIA的GPU,很多朋友的第一反应可能还是“打游戏卡不卡”。确实,从GeForce 256那个“世界上第一款GPU”开始,游戏和图形渲染就是它的老本行。但如果你现在还只把它当成一块游…

UVa 10632 Pyramid

UVa 10632 Pyramid

2026/8/25 11:15:05

题目描述 在一个经典的电脑游戏中,一个生物在金字塔形状的格子上跳跃。金字塔共有 nnn 行,第 iii 行有 iii 个格子。生物每次只能跳到其正上方或正下方的相邻格子,不能跳出金字塔。当生物落在一个格子上时,该格子的颜色会按照 红色…

[光学原理与应用-521]:对光的错误理解与纠偏

[光学原理与应用-521]:对光的错误理解与纠偏

2026/8/24 19:53:32

首先光是一种能量的载体和形态,宏观上观察到的光是由无数个微观的光量子组成的,每个光子在产生的瞬间,其在真空的空间中以确定不变的速度沿着一个初始的方向一直向前,在微观层面,每个光量子的运动轨迹是以波函数所展现…

SIP通话转接原理与REFER方法实战解析

SIP通话转接原理与REFER方法实战解析

2026/8/24 19:56:07

1. 通话转接不是“挂断再拨号”,而是SIP会话的动态重定向你有没有遇到过这样的场景:客服坐席A正在和客户通电话,突然需要把这通对话无缝转给专家坐席B,客户完全感知不到中间的断连——既没听到忙音,也没被要求重新拨号…

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

2026/8/24 21:16:09

1. 为什么选择Kolla-ansible来部署单节点OpenStack?如果你正在寻找一种能把OpenStack从“概念”快速变成“可用的实验环境”的方法,那么Kolla-ansible几乎是当前最主流、最省心的选择。我见过太多人卡在手动编译依赖、配置服务、处理版本冲突的泥潭里&am…

三步把QQ空间历史说说导出到本地:GetQzonehistory 极简指南

三步把QQ空间历史说说导出到本地:GetQzonehistory 极简指南

2026/8/25 0:04:34

三步把QQ空间历史说说导出到本地:GetQzonehistory 极简指南 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory Meta Description:GetQzonehistory 是一个QQ空间历史说…

洛谷 P7912:[CSP-J 2021 T4] 小熊的果篮 ← 双向链表

洛谷 P7912:[CSP-J 2021 T4] 小熊的果篮 ← 双向链表

2026/8/25 0:04:35

【题目来源】 https://www.luogu.com.cn/problem/P7912 【题目描述】 小熊的水果店里摆放着一排 n 个水果。每个水果只可能是苹果或桔子,从左到右依次用正整数 1,2,…,n 编号。连续排在一起的同一种水果称为一个“块”。小熊要把这一排水果挑到若干个果篮里&#x…

Transformers.js 网页端图像抠图实战:零后端 3 行代码返回透明 PNG

Transformers.js 网页端图像抠图实战:零后端 3 行代码返回透明 PNG

2026/8/25 0:04:35

Transformers.js 网页端图像抠图实战:零后端 3 行代码返回透明 PNG 【免费下载链接】transformers.js State-of-the-art Machine Learning for the web. Run 🤗 Transformers directly in your browser, with no need for a server! 项目地址: https:/…

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

2026/8/22 2:02:26

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…

导师推荐!2026最新AI论文工具测评与实用推荐

导师推荐!2026最新AI论文工具测评与实用推荐

2026/8/22 4:13:47

2026年真正好用的AI论文工具,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

告别游戏崩溃:XCOM 2模组管理器的智能革命

告别游戏崩溃:XCOM 2模组管理器的智能革命

2026/8/22 1:32:34

告别游戏崩溃:XCOM 2模组管理器的智能革命 【免费下载链接】xcom2-launcher The Alternative Mod Launcher (AML) is a replacement for the default game launchers from XCOM 2 and XCOM Chimera Squad. 项目地址: https://gitcode.com/gh_mirrors/xc/xcom2-lau…