news 2026/4/16 16:48:49

DeepSeek+Dify私有化部署:手把手教你打造高性能本地大模型知识库!

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
DeepSeek+Dify私有化部署:手把手教你打造高性能本地大模型知识库!

简介

本文详细介绍了如何通过DeepSeek-R1大模型和Dify应用框架实现本地私有化知识库部署。从环境准备到模型配置,再到知识库构建与应用创建,全面展示了私有化部署的全流程。解决了产品不开源和外部服务繁忙的问题,同时提供大模型AI学习路径,帮助开发者快速掌握技术,实现本地化部署,提升工作效率和数据安全性。


1.背景

公司开发产品,由于产品特性不能对外开源,其使用文档也不开源,为了更好地进行技术支持,所以需要本地部署私有化知识库。另外 DeepSeek 由于外部攻击和使用人员较多,经常【服务器繁忙,请稍后再试】。

思路:下载 DeepSeek-R1 大模型、Dify 应用框架,在 Dify 应用框架中配置 DeepSeek-R1 大模型,这样就可以实现在本地部署私有化知识库了。由于 DeepSeek-R1 模型下载需要 ollama 命令下载、Dify 应用框架项目需要在 Docker 环境安装项目依赖,所以需要先下载 ollama 和 Docker。

先读为快,看下最终搜索一款我本地文档(@web-kits/table文档),它的搜索结果:

就问 6 不 6?心动💓了没?那就搞起来~

以下是私有化部署方案的优势:

  • 性能卓越:提供媲美商业模型的对话交互体验
  • 环境隔离:完全离线运行,杜绝数据外泄风险
  • 数据可控:完全掌控数据资产,符合合规要求

2.前置准备

硬件环境:

  • CPU >= 2 Core
  • 显存/RAM ≥ 16 GiB(推荐)

软件环境:

  • Docker
  • Docker Compose
  • Dify 社区版

3.DiFy智能体平台本地化部署

3.1 DeepSeek本地化部署

1)在本地运行deepseek模型

ollama run deepseek-r1:1.5b

2)在本地运行Embedding模型

ollama pull bge-m3
3.2 Dify平台部署
3.2.1 克隆Dify代码仓库

克隆Dify源代码至本地环境。

#git clone https://github.com/langgenius/dify.git --branch 0.15.3 Cloning into 'dify'... remote: Enumerating objects: 144842, done. remote: Counting objects: 100% (1116/1116), done. remote: Compressing objects: 100% (505/505), done. remote: Total 144842 (delta 926), reused 613 (delta 611), pack-reused 143726 (from 3) Receiving objects: 100% (144842/144842), 78.11 MiB | 1.94 MiB/s, done. Resolving deltas: 100% (106284/106284), done. Note: checking out 'ca19bd31d42fb87c83b91541c473ebae85e9d14e'.
3.2.2 启动 Dify

1)进入 Dify 源代码的 Docker 目录

cd dify/docker

2)复制环境配置文件

cp .env.example .env

3)启动 Docker 容器

#docker-compose --version docker-compose version 1.28.6, build 5db8d86f #如果版本是 Docker Compose V2,使用以下命令: docker compose up -d #如果版本是 Docker Compose V1,使用以下命令: docker-compose up -d

启动报错,需要配置合适的docker镜像源

#docker-compose up -d Creating network "docker_default" with the default driver Creating network "docker_ssrf_proxy_network" with driver "bridge" Creating network "docker_milvus" with driver "bridge" Creating network "docker_opensearch-net" with driver "bridge" Pulling web (langgenius/dify-web:0.15.3)... ERROR: Get https://registry-1.docker.io/v2/: read tcp 192.168.112.110:60148->52.1.121.53:443: read: connection reset by peer

如果提示NGINX端口冲突,修改相应的配置文件

ERROR: for docker_nginx_1 Cannot start service nginx: driver failed programming external connectivity on endpoint docker_nginx_1 (87803a54cea3e36c8628fdd2e3a9795cfe7696e952fefeabedc3089bdf9b4843): Bind for 0.0.0.0:80 failed: port is already allocated

进入到dify文件夹下

cd /dify/docker vi .env #找到 EXPOSE_NGINX_PORT 在780行,改成你需要的端口默认是80 ps: #------------------------------ #Docker Compose Service Expose Host Port Configurations #------------------------------ EXPOSE_NGINX_PORT=10080 EXPOSE_NGINX_SSL_PORT=443 #保存退出 :wq!

再执行命令

[root@tango-01 docker]# docker-compose up -d Creating network "docker_default" with the default driver Creating network "docker_ssrf_proxy_network" with driver "bridge" Creating network "docker_milvus" with driver "bridge" Creating network "docker_opensearch-net" with driver "bridge" Creating docker_weaviate_1 ... done Creating docker_web_1 ... done Creating docker_ssrf_proxy_1 ... done Creating docker_db_1 ... done Creating docker_redis_1 ... done Creating docker_sandbox_1 ... done Creating docker_api_1 ... done Creating docker_worker_1 ... done Creating docker_nginx_1 ... done

最后检查是否所有容器都正常运行:

[root@tango-01 docker]# docker ps

在这个输出中,应该可以看到包括3个业务服务api/worker/web,以及6个基础组件weaviate/db/redis/ nginx/ssrf_proxy/ sandbox。

4)登录DiFy平台:http://xx.xx.xx.xx/install,默认端口是80

登录进入主界面

3.3 构建智能体
3.3.1 大模型接入

在Dify中,按模型的使用场景将模型分为以下4类:

  • 系统推理模型:在创建的应用中,用的是该类型的模型。智聊、对话名称生成、下一步问题建议用的也是推理模型。已支持的系统推理模型供应商:OpenAI、Azure OpenAI Service、DeepSeek、Anthropic、Hugging Face Hub、Replicate、Xinference、OpenLLM、讯飞星火、文心一言、通义千问、Minimax、ZHIPU(ChatGLM)等
  • Embedding模型。在知识库中,将分段过的文档做Embedding用的是该类型的模型。在使用了知识库的应用中,将用户的提问做Embedding处理也是用的该类型的模型。已支持的Embedding模型供应商:OpenAI、ZHIPU(ChatGLM)、Jina AI(Jina Embeddings)、Rerank模型等。
  • Rerank模型:用于增强检索能力,改善LLM的搜索结果。已支持的 Rerank 模型供应商:Cohere、Jina AI(Jina Reranker)等
  • 语音转文字模型。将对话型应用中,将语音转文字用的是该类型的模型。已支持的语音转文字模型供应商:OpenAI等

1)在设置中添加大模型,本地部署选择ollama

2)选择Ollama,添加本地部署的DeepSeek模型

注:Ollama默认绑定到127.0.0.1:11434,需通过环境变量OLLAMA_HOST修改监听地址:打开系统设置 → 搜索并进入编辑账户环境变量。在用户变量中新建或修改变量:

  • 变量名:OLLAMA_HOST
  • 变量值:xx.xx.xx.xx:11434

3)配置Embedding模型

查看模型列表

3.3.2 创建知识库

1)在DiFy平台创建知识库

2)导入文件,定义切分规则和模型

3)配置Embedding模型

4)查看导入的文件详情

3.3.3 创建智能体应用

1)在DiFy平台创建工作流并运行

2)运行智能体,输出结果

DiFy平台工具集相对还是少了一些,有些第三方工具调用比如飞书文档需要额外授权,体验上也会差一些。

4.如何学习AI大模型?

如果你对AI大模型入门感兴趣,那么你需要的话可以点击这里大模型重磅福利:入门进阶全套104G学习资源包免费分享!

这份完整版的大模型 AI 学习和面试资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

这是一份大模型从零基础到进阶的学习路线大纲全览,小伙伴们记得点个收藏!


第一阶段:从大模型系统设计入手,讲解大模型的主要方法;

第二阶段:在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段:大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段:大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段:大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段:以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段:以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

100套AI大模型商业化落地方案

大模型全套视频教程

200本大模型PDF书籍

👉学会后的收获:👈

• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。

LLM面试题合集

大模型产品经理资源合集

大模型项目实战合集

👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 13:00:04

CVPR2025应用案例:计算机视觉在智慧城市中的创新落地

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个智慧城市视觉分析系统原型,功能包括:1. 实时交通流量监测与预测;2. 异常事件检测(如交通事故、人群聚集)&#x…

作者头像 李华
网站建设 2026/4/16 13:05:38

Kotaemon化学分子结构检索:科研领域创新应用

基于GaN器件的高效D类音频放大器设计在高保真音频系统持续追求更高效率与更小体积的今天,传统硅基功率器件正逐渐触及性能瓶颈。尤其是在紧凑型主动式音箱、便携式高端音响和车载音频模块中,散热空间受限、电源转换损耗显著等问题愈发突出。正是在这一背…

作者头像 李华
网站建设 2026/4/16 12:58:51

14、Windows PowerShell 参数与数据操作实用指南

Windows PowerShell 参数与数据操作实用指南 一、Windows PowerShell 中参数的运用 1.1 whatif 参数 whatif 参数是 Windows PowerShell 中极具价值的一部分,它能让你在不改变系统状态的前提下,测试命令或管道的效果。例如,在使用 remove - item 命令并搭配通配符时,该…

作者头像 李华
网站建设 2026/4/16 14:33:03

19、Windows PowerShell 文本处理与字符串方法全解析

Windows PowerShell 文本处理与字符串方法全解析 1. 引言 Windows PowerShell 主要用于处理 .NET 对象,但在文本处理方面也展现出强大的功能和灵活性。它的 cmdlet 通常输出对象而非字符串,这与传统的 cmd.exe 命令行工具不同。不过,在 PowerShell 命令行中,我们也能使用…

作者头像 李华
网站建设 2026/4/16 11:09:30

MyBatis-Plus-JSQLParser入门:从零开始学SQL解析

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个面向初学者的MyBatis-Plus-JSQLParser学习应用,包含分步教程和交互式练习。要求实现:1) 基础环境配置向导;2) 简单SQL解析演示&#xff…

作者头像 李华
网站建设 2026/4/16 12:59:50

3、Windows侧边栏小工具开发实战指南

Windows侧边栏小工具开发实战指南 1. 添加和测试小工具 要将虚拟地球小工具添加到侧边栏,只需双击虚拟地球图标即可。添加后,你可以通过平移和缩放特定区域来测试该小工具,其运行效果与在Internet Explorer中托管时一样。 2. 小工具的状态与调整 侧边栏小工具具有两种状…

作者头像 李华