《在 Windows 系统下,用 DeepSeek R3 搭建私有知识库的超详细教程》
一、前言
嘿,大家好!我最近对 AI 技术特别感兴趣,尤其是想搭建一个属于自己的企业级本地私有知识库。我的电脑是 Windows 系统,还有一块超厉害的 NVIDIA GeForce RTX 3090 24G 显卡。经过一番摸索,我终于成功搭建好了,现在就来给大家分享一下这个过程,希望能帮到和我一样对 AI 充满好奇的小伙伴们。
二、环境准备
硬件检查
先确认了一下我的电脑硬件,毕竟要搭建这么酷的知识库,硬件得给力才行。我的 NVIDIA GeForce RTX 3090 24G 显卡可是个大家伙,24GB 的显存,运行32b大型模型完全不在话下。看到它正常工作,我心里就踏实多了。
以下是一个部署DeepSeek大模型所需的GPU配置清单,包括不同参数量模型的GPU配置要求及应用场景,可供参考:
模型参数量 | GPU配置 | 应用场景 |
---|---|---|
1.5B | 无硬性要求(可选4GB+显存,如GTX 1650) | 低资源设备部署(如树莓派、旧款笔记本)、实时文本生成(聊天机器人、简单问答)、嵌入式系统或物联网设备 |
7B | 推荐8GB+显存(如RTX 3070/4060) | 中小型企业本地开发测试、中等复杂度NLP任务(文本摘要、翻译)、轻量级多轮对话系统 |
8B | 推荐8GB+显存(如RTX 3070/4060) | 需更高精度的轻量级任务(如代码生成、逻辑推理) |
14B | 16GB+显存(如RTX 4090或A5000) | 企业级复杂任务(合同分析、报告生成)、长文本理解与生成(书籍/论文辅助写作) |
32B | 24GB+显存(如A100 40GB或双卡RTX 3090) | 高精度专业领域任务(医疗/法律咨询)、多模态任务预处理(需结合其他框架) |
70B | 多卡并行(如2x A100 80GB或4x RTX 4090) | 科研机构/大型企业(金融预测、大规模数据分析)、高复杂度生成任务(创意写作、算法设计) |
671B | 多节点分布式训练(如8x A100/H100) | 超大规模AI研究(如气候建模、基因组分析)、通用人工智能(AGI)探索 |
说明
- 1.5B参数量模型:适用于资源有限的设备,如树莓派、旧款笔记本等,可以进行简单的文本生成任务。
- 7B和8B参数量模型:适用于中小型企业或个人开发者,可以进行中等复杂度的自然语言处理任务。
- 14B和32B参数量模型:适用于企业级应用,可以处理更复杂的任务,如合同分析、报告生成等。
- 70B和671B参数量模型:适用于科研机构和大型企业,可以进行高复杂度的生成任务和超大规模AI研究。
根据实际需求选择合适的模型参数量和对应的GPU配置,以确保部署的DeepSeek大模型能够高效运行。
软件安装前的准备
- 网络连接 :我检查了一下网络,确保它稳定得像老黄牛一样,不会在关键时刻掉链子。毕竟下载软件和模型的时候,网络要是不给力,那可就麻烦了。
- 系统更新 :我打开 Windows 更新,把系统更新到最新版本。这样可以避免一些奇怪的问题,让后续的安装过程更加顺利。
三、安装 Docker
-
访问 Docker 官网 :打开浏览器,输入 Docker 官网 地址,来到下载页面。这页面看着挺清爽的,找东西也方便。
-
下载 Windows 版本 :我找到适用于 Windows 的 Docker 版本,点击下载按钮。
-
运行安装程序 :我双击下载好的安装程序,按照安装向导的提示一步步来。安装过程中,它问我是否要安装一些可选组件,我寻思着先用默认的就行,就一路点了下去。
注意:千万不要选Use WSL 2 instead of
Hyper-V(recommended)这个选项,我安装的时候就是因为选了这个,WSL服务一直提示让升级,升级了一直提示还要升级,最后才发现是这块的问题,所以建议不要选这个
- 完成安装并验证 :安装完成后,我打开 Docker 桌面客户端,看到界面正常显示,任务栏里也有 Docker 图标在欢快地跳动,这说明 Docker 已经成功安装啦!
四、安装 Ollama
- 访问 Ollama 官网 :浏览器里输入 Ollama 官网 地址,来到下载页面。
- 下载 Windows 版本 :我找到 Windows 版本的 Ollama 安装包,点击下载。下载速度也挺快,一会儿就下好了。
- 运行安装程序 :我双击安装包,按照安装向导的提示操作。安装路径我就用默认的了,省事儿。
- 完成安装并验证 :安装完成后,我在开始菜单里找到 Ollama 图标,点击启动。看到 Ollama 的主界面正常显示,我心里那个高兴啊,又完成了一步!
五、安装 DeepSeek - r1 模型
-
打开 Ollama 官网 :我又来到 Ollama 官网,在首页的搜索框里点了一下,deepseek - r1 模型就乖乖地出现在第一个位置了。
-
选择模型版本 :我看到 deepseek - r1 有好多参数版本,1.5b、7b、8b、14b、32b、70b、671b,看得我眼花缭乱。不过我有 NVIDIA GeForce RTX 3090 24G 显卡,这么强大的硬件,肯定要选个厉害的版本。我决定选 32b 版本,这样性能肯定杠杠的。
-
安装模型 :我在 Ollama 的命令行界面里输入
ollama run deepseek-r1:32b
,然后就开始等待安装完成。这过程有点儿漫长,不过想着马上就能用上这么厉害的模型,我就耐心地等了下去。
-
测试模型 :安装完成后,我在命令窗口中输入ollama run deepseek-r1:32b,然后输入一些问题,比如 “今天天气怎么样?”“给我讲个笑话吧”,看到模型都能正常回答,我心里别提多高兴了,这模型真智能!
六、安装 Dify
- 下载 Dify 项目 :打开浏览器,来到 Dify 的 GitHub 地址:https://github.com/langgenius/dify,点击 “Download ZIP” 按钮,把项目压缩包下载到本地。下载速度还挺快,没让我等太久。(我是搭了梯子)
- 配置环境 :进入解压后的项目根目录,找到名为 “.env.exmple” 的文件,把它重命名为 “.env”。然后我右键点击文件夹,选择 “在终端中打开”,输入命令
docker compose up -d
。回到 Docker 桌面客户端,看到所有 Dify 需要的环境都运行起来了。
过程中我遇到了报错
Data directory "/var/lib/postgresql/data/pgdata" has wrong ownership - Docker Desktop - Docker Community Forums
修改方式
打开docker-compose.yaml文件,找到如下代码
db:
image: postgres:15-alpine
restart: always
environment:
PGUSER: ${PGUSER:-postgres}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-difyai123456}
POSTGRES_DB: ${POSTGRES_DB:-dify}
PGDATA: ${PGDATA:-/var/lib/postgresql/data/pgdata}
command: >
postgres -c 'max_connections=${POSTGRES_MAX_CONNECTIONS:-100}'
-c 'shared_buffers=${POSTGRES_SHARED_BUFFERS:-128MB}'
-c 'work_mem=${POSTGRES_WORK_MEM:-4MB}'
-c 'maintenance_work_mem=${POSTGRES_MAINTENANCE_WORK_MEM:-64MB}'
-c 'effective_cache_size=${POSTGRES_EFFECTIVE_CACHE_SIZE:-4096MB}'
volumes:
- ./volumes/db/data:/var/lib/postgresql/data
healthcheck:
test: [ 'CMD', 'pg_isready' ]
interval: 1s
timeout: 3s
retries: 30
ports:
- '5432:5432'
修改为
修改volumes值
# The postgres database.
db:
image: postgres:15-alpine
restart: always
environment:
PGUSER: ${PGUSER:-postgres}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-difyai123456}
POSTGRES_DB: ${POSTGRES_DB:-dify}
PGDATA: ${PGDATA:-/var/lib/postgresql/data/pgdata}
command: >
postgres -c 'max_connections=${POSTGRES_MAX_CONNECTIONS:-100}'
-c 'shared_buffers=${POSTGRES_SHARED_BUFFERS:-128MB}'
-c 'work_mem=${POSTGRES_WORK_MEM:-4MB}'
-c 'maintenance_work_mem=${POSTGRES_MAINTENANCE_WORK_MEM:-64MB}'
-c 'effective_cache_size=${POSTGRES_EFFECTIVE_CACHE_SIZE:-4096MB}'
volumes:
- /var/lib/postgresql/data
healthcheck:
test: [ 'CMD', 'pg_isready' ]
interval: 1s
timeout: 3s
retries: 30
ports:
- '5432:5432'
- 注册 Dify :在浏览器地址栏输入
http://127.0.0.1/install
,来到 Dify 的注册页面。按照页面提示,我设置好用户名和密码,完成了注册。
七、关联本地大模型与 Dify
-
配置 docker 下的 env 文件 :我打开 Dify 项目的 docker 文件夹,找到 “.env” 文件,在文件末尾添加了以下内容:
# 启用自定义模型
CUSTOM_MODEL_ENABLED=true
# 指定 Ollama 的 API 地址(根据部署环境调整 IP)
OLLAMA_API_BASE_URL=http://host.docker.internal:11434
-
配置大模型 :我在 Dify 控制台点击头像,选择设置。在模型供应商里点击 Ollama,模型类型选 LLM,模型名称输入 deepseek - r1:32b,基础 URL 填写
http://host.docker.internal:11434
,模型类型选 “对话”,最大 token 填写 “4096”,然后点击保存。这配置过程还挺顺利的,感觉自己像个专业的技术人员。 -
设置系统模型 :接着我点击继续添加模型,模型类型选 “Text Embedding”,模型名称输入 “bge-m3”,基础 URL 和之前一样,点击保存。这样,Dify 就和本地大模型关联起来了,我心里那个成就感啊,简直爆棚!
八、创建应用与本地知识库
创建应用
- 新建应用 :我在 Dify 里点击 “创建空白应用”,选择 “聊天助手”,输入应用名称,点击 “创建”。这过程就像给我的知识库起个名字一样,挺有趣的。
- 测试模型连接 :创建完成后,我在应用的聊天界面里输入问题,看到模型能正常回答,这说明 Dify 和本地部署的大模型 DeepSeek - r1 已经连通了。
创建本地知识库
- 添加 Embedding 模型 :我在 Dify 控制台点击头像,选择设置,在模型供应商里点击 Ollama,模型类型选 “Text Embedding”,模型名称输入 “bge-m3”,基础 URL 填写本地 Ollama Server 的地址,点击保存。这模型添加得挺顺利的。
- 创建知识库 :我点击上方工具栏里的 “知识库”,然后点击 “创建知识库”。这就像给我的知识库建个新房间一样,挺有意思的。
- 上传资料并设置参数 :我选择准备好的知识库文件,支持多种格式,点击 “下一步”。索引方式选 “高质量”,Embedding 模型选我们安装的 bge-m3,其他的默认,点击 “保存”。等待嵌入完成,这过程有点儿漫长,不过想着马上就能用上自己的知识库,我就耐心地等了下去。
我安装了14b 和 32b 两种规格参数的R1模型
九、在对话上下文中添加知识库
- 添加知识库到应用 :回到刚才的应用聊天页面,点击 “上下文”。这就像把我的知识库里的知识搬到应用里一样,挺方便的。
- 选择知识库并保存 :选择刚才创建的知识库,点击 “保存当前应用设置”。如果只是当前应用内调试可以不必更新,但如果想把应用发布为对外 API 服务或者持久化保存,就需要保存当前应用设置。。
十、测试效果
- 进行对话测试 :在聊天页面里输入问题,观察模型的回答。看到模型能根据我上传的私有知识库内容回答问题,我心里那个高兴啊。
- 调整参数优化效果 :如果感觉回答的效果还不满意,我可以对召回参数进行调整,或者参考官方文档,做其他详细设置。不过目前来看,效果已经挺不错了。
十一、注意事项
- 遇到问题的解决方法 :在整个安装和配置过程中,如果遇到问题,我会参考各软件的官方文档或社区论坛进行排查解决。比如在安装 Docker 时遇到 Hyper - V 未开启的问题,我就根据提示重启电脑并开启 Hyper - V 功能,问题就解决了。
- 确保网络连接稳定 :下载模型和相关软件时,稳定的网络连接很重要。如果网络中断,可能会导致下载失败,需要重新下载。我在这方面就挺注意的,确保网络一直稳定。
- 根据实际需求选择模型版本 :虽然我选择了 32b 版本的 DeepSeek - r1 模型,但根据不同的应用场景和电脑配置,也可以选择其他参数版本的模型。大家可以根据自己的实际情况来选择,这样才能获得最佳的性能和体验。
当知识库内容比较多时,当前显卡和CPU开始有些吃力了,所以建议NVIDIA GeForce RTX 3090 24G 还是搭建14b的模型。
通过以上这些步骤,我成功在 Windows 系统下,利用 NVIDIA GeForce RTX 3090 24G 显卡搭建了企业级本地私有知识库。这个过程虽然有些复杂,但只要一步步来,就能顺利完成。希望我的分享能帮到大家,让我们一起在 AI 的世界里探索更多乐趣吧!