介绍
深度求索人工智能基础技术研究有限公司(简称"深度求索"或"DeepSeek")是一家致力于实现通用人工智能(AGI)的中国公司。作为一款开创性的人工智能框架,DeepSeek凭借其创新的算法架构和独特的反思链能力,显著提升了对话交互体验。通过采用私有化部署模式,用户能够更好地掌控数据安全和使用安全,并根据实际需求灵活调整部署方案,实现便捷的自定义系统功能。
Dify 是一款开源的大语言模型(LLM) 应用开发平台,提供完整的私有化部署方案。通过将本地部署的 DeepSeek 服务无缝集成到 Dify 平台,企业可以在确保数据隐私的前提下,在本地服务器环境内构建功能强大的 AI 应用。
另外Dify 内置了构建 LLM 应用所需的关键技术栈,包括对数百个模型的支持、直观的 Prompt 编排界面、高质量的 RAG 引擎、稳健的 Agent 框架、灵活的流程编排,并同时提供了一套易用的界面和 API。这为开发者节省了许多重复造轮子的时间,使其可以专注在创新和业务需求上。
环境准备
硬件环境:
-
系统 CentOS Linux release 7.9.2009
-
CPU >= 8 Core
-
显存/RAM ≥ 32 GiB(推荐)
软件环境:
-
Docker
-
Ollama
-
Dify 社区版
环境部署
安装ollama
Ollama 是一款跨平台的大模型管理客户端,支持 MacOS、Windows 和 Linux 等多种操作系统。它旨在为用户无缝部署大型语言模型(LLM),例如 DeepSeek、Llama、Mistral 等。通过一键部署功能,用户可以快速将大模型集成到应用中,并确保所有使用数据均在本地机器内存储,从而实现全面的数据隐私和安全性保护。
[root@pcllm ~]# curl -fsSL https://ollama.com/install.sh | sh >>> Installing ollama to /usr/local >>> Downloading Linux amd64 bundle ######################################################################## 100.0% >>> Creating ollama user... >>> Adding ollama user to video group... >>> Adding current user to ollama group... >>> Creating ollama systemd service... >>> Enabling and starting ollama service... Created symlink from /etc/systemd/system/default.target.wants/ollama.service to /etc/systemd/system/ollama.service. >>> The Ollama API is now available at 127.0.0.1:11434. >>> Install complete. Run "ollama" from the command line. WARNING: No NVIDIA/AMD GPU detected. Ollama will run in CPU-only mode. [root@pcllm ~]# ollama -v ollama version is 0.5.7
复制
调整ollama监听端口,后续dify连接需要,ollama默认只监听127.0.0.1
修改文件 vim /etc/systemd/system/ollama.service 增加 [Service] Environment="OLLAMA_HOST=0.0.0.0:11434" 重现加载 sudo systemctl daemon-reload sudo systemctl restart ollama sudo systemctl status ollama
复制
安装deepseek
使用ollama 拉取deepseek本地资源包
[root@pcllm ~]# ollama run deepseek-r1:7b
复制
安装BGE M3
BGE M3-Embedding是由中国科学技术大学和BAAI联合开发的开源模型。该论文提出了一种新的嵌入模型,命名为M3-Embedding,其在多语言性、多功能性和多粒度性三个维度上表现出色。该模型支持超过100种工作语言,并支持最多8192个词长的输入文本。此外,它还支持密集检索(Dense Retrieval)、多向量检索(Multi-Vector Retrieval)和稀疏检索(Sparse Retrieval),为现实世界中的信息检索应用提供了统一的基础模型。通过灵活组合这些检索方式,该模型实现了良好的混合召回效果。
使用ollama 拉取bge本地资源包
[root@pcllm ~]# ollama run bge-m3:latest
复制
安装docker
dify 依赖环境使用docker运行,需要提前安装docker环境
[root@pcllm opt]# cd /etc/yum.repos.d [root@pcllm opt]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo [root@pcllm opt]# yum makecache fast [root@pcllm opt]# yum install -y docker-ce docker-ce-cli containerd.io [root@pcllm opt]# systemctl start docker
复制
安装 Dify 社区版
访问 Dify GitHub 项目地址,运行以下命令完成拉取代码仓库和安装流程。
[root@pcllm opt]# yum -y install git [root@pcllm opt]# git clone https://github.com/langgenius/dify.git [root@pcllm opt]# cd dify/docker [root@pcllm opt]# cp .env.example .env [root@pcllm opt]# docker compose up -d [root@pcllm opt]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE langgenius/dify-web 0.15.3 f0fae584255f 4 days ago 436MB langgenius/dify-api 0.15.3 e05373163e63 4 days ago 2.97GB nginx latest 97662d24417b 6 days ago 192MB postgres 15-alpine f2404745c576 8 days ago 273MB redis 6-alpine 8d7a968b2baf 5 weeks ago 30.2MB langgenius/dify-sandbox 0.2.10 4328059557e8 3 months ago 567MB ubuntu/squid latest 87507c4542d0 5 months ago 242MB semitechnologies/weaviate 1.19.0 8ec9f084ab23 21 months ago 52.5MB
复制
在使用docker compose up -d 合成镜像时,会下载8个镜像包,使用国外源会出现连接报错,需要替换docker镜像源。
问题处理,报错信息
[root@pcllm docker]# docker compose up -d [+] Running 9/9 ✘ redis Error context canceled 15.0s ✘ api Error Get "https://registry-1.docker.io/v2/": dial tcp 45.114.11.238:443: i/o timeout 15.0s ✘ web Error context canceled 15.0s ✘ ssrf_proxy Error context canceled 15.0s ✘ weaviate Error context canceled 15.0s ✘ worker Error context canceled 15.0s ✘ sandbox Error context canceled 15.0s ✘ db Error context canceled 15.0s ✘ nginx Error Get "https://registry-1.docker.io/v2/": context deadline exceeded (Client.Timeout exceeded while awaiting headers) 15.0s Error response from daemon: Get "https://registry-1.docker.io/v2/": dial tcp 45.114.11.238:443: i/o timeout
复制
解决
首先进入/etc/docker/daemon.json文件,然后在里面加入下面的配置 然后在里面加入下面的配置 { "registry-mirrors" : ["https://docker.registry.cyou", "https://docker-cf.registry.cyou", "https://dockercf.jsdelivr.fyi", "https://docker.jsdelivr.fyi", "https://dockertest.jsdelivr.fyi", "https://mirror.aliyuncs.com", "https://dockerproxy.com", "https://mirror.baidubce.com", "https://docker.m.daocloud.io", "https://docker.nju.edu.cn", "https://docker.mirrors.sjtug.sjtu.edu.cn", "https://docker.mirrors.ustc.edu.cn", "https://mirror.iscas.ac.cn", "https://docker.rainbond.cc", "https://do.nark.eu.org", "https://dc.j8.work", "https://dockerproxy.com", "https://gst6rzl9.mirror.aliyuncs.com", "https://registry.docker-cn.com", "http://hub-mirror.c.163.com", "http://mirrors.ustc.edu.cn/", "https://mirrors.tuna.tsinghua.edu.cn/", "http://mirrors.sohu.com/" ], "insecure-registries" : [ "registry.docker-cn.com", "docker.mirrors.ustc.edu.cn" ], "debug": true, "experimental": false } 然后在终端重新启动一下docker systemctl daemon-reload systemctl restart docker
复制
至此,dify相关环境组件都安装完成,下面进行dify配置。
dify 配置
登陆
首次登陆dify需要设置邮箱,用户名,密码,用于后续登陆环境。
http://192.168.20.254/
复制
ollama添加deepseek模型
在设置–模型供应商,页面找到ollama,添加deepseek模型
ollama添加BGE M3模型
在ollama添加BGE M3模型
知识库创建
在dify的知识库栏,创建一个名为deepseek基础使用的知识库。
此处BGE M3已自动加载,选择混合检索。
等待其处理完成即可。
创建应用
创建一个基础聊天的应用,关联deepseek基础使用知识库
然后进行提供“五个黄金法则”,可以看到,回答与原pdf内容一样,无任何偏差。
原《DeepSeek指导手册从入门到精通.pdf》中,“五个黄金法则”内容。
写在最后
通过此次本地化部署实践探索,不仅验证了DeepSeek与Dify技术框架有效的结合,也展示了开源技术在企业内核构建中的巨大潜力。随后,可以继续发挥这两种技术的优势,推动AI技术在实际应用中的创新和优化,为企业知识库建设提供更加高效、智能和安全的解决方案。