《在 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大模型能够高效运行。

软件安装前的准备

  1. 网络连接 :我检查了一下网络,确保它稳定得像老黄牛一样,不会在关键时刻掉链子。毕竟下载软件和模型的时候,网络要是不给力,那可就麻烦了。
  2. 系统更新 :我打开 Windows 更新,把系统更新到最新版本。这样可以避免一些奇怪的问题,让后续的安装过程更加顺利。

三、安装 Docker

  1. 访问 Docker 官网 :打开浏览器,输入 Docker 官网 地址,来到下载页面。这页面看着挺清爽的,找东西也方便。
    在这里插入图片描述

  2. 下载 Windows 版本 :我找到适用于 Windows 的 Docker 版本,点击下载按钮。
    在这里插入图片描述

  3. 运行安装程序 :我双击下载好的安装程序,按照安装向导的提示一步步来。安装过程中,它问我是否要安装一些可选组件,我寻思着先用默认的就行,就一路点了下去。

注意:千万不要选Use WSL 2 instead of
Hyper-V(recommended)这个选项,我安装的时候就是因为选了这个,WSL服务一直提示让升级,升级了一直提示还要升级,最后才发现是这块的问题,所以建议不要选这个

在这里插入图片描述

  1. 完成安装并验证 :安装完成后,我打开 Docker 桌面客户端,看到界面正常显示,任务栏里也有 Docker 图标在欢快地跳动,这说明 Docker 已经成功安装啦!

四、安装 Ollama

  1. 访问 Ollama 官网 :浏览器里输入 Ollama 官网 地址,来到下载页面。
  2. 下载 Windows 版本 :我找到 Windows 版本的 Ollama 安装包,点击下载。下载速度也挺快,一会儿就下好了。
  3. 运行安装程序 :我双击安装包,按照安装向导的提示操作。安装路径我就用默认的了,省事儿。
  4. 完成安装并验证 :安装完成后,我在开始菜单里找到 Ollama 图标,点击启动。看到 Ollama 的主界面正常显示,我心里那个高兴啊,又完成了一步!

在这里插入图片描述

五、安装 DeepSeek - r1 模型

  1. 打开 Ollama 官网 :我又来到 Ollama 官网,在首页的搜索框里点了一下,deepseek - r1 模型就乖乖地出现在第一个位置了。

  2. 选择模型版本 :我看到 deepseek - r1 有好多参数版本,1.5b、7b、8b、14b、32b、70b、671b,看得我眼花缭乱。不过我有 NVIDIA GeForce RTX 3090 24G 显卡,这么强大的硬件,肯定要选个厉害的版本。我决定选 32b 版本,这样性能肯定杠杠的。
    在这里插入图片描述

  3. 安装模型 :我在 Ollama 的命令行界面里输入 ollama run deepseek-r1:32b,然后就开始等待安装完成。这过程有点儿漫长,不过想着马上就能用上这么厉害的模型,我就耐心地等了下去。
    在这里插入图片描述

  4. 测试模型 :安装完成后,我在命令窗口中输入ollama run deepseek-r1:32b,然后输入一些问题,比如 “今天天气怎么样?”“给我讲个笑话吧”,看到模型都能正常回答,我心里别提多高兴了,这模型真智能!
    在这里插入图片描述

六、安装 Dify

  1. 下载 Dify 项目 :打开浏览器,来到 Dify 的 GitHub 地址:https://github.com/langgenius/dify,点击 “Download ZIP” 按钮,把项目压缩包下载到本地。下载速度还挺快,没让我等太久。(我是搭了梯子)
  2. 配置环境 :进入解压后的项目根目录,找到名为 “.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'
  1. 注册 Dify :在浏览器地址栏输入 http://127.0.0.1/install,来到 Dify 的注册页面。按照页面提示,我设置好用户名和密码,完成了注册。
    在这里插入图片描述

七、关联本地大模型与 Dify

  1. 配置 docker 下的 env 文件 :我打开 Dify 项目的 docker 文件夹,找到 “.env” 文件,在文件末尾添加了以下内容:

    • # 启用自定义模型
    • CUSTOM_MODEL_ENABLED=true
    • # 指定 Ollama 的 API 地址(根据部署环境调整 IP)
    • OLLAMA_API_BASE_URL=http://host.docker.internal:11434
  2. 配置大模型 :我在 Dify 控制台点击头像,选择设置。在模型供应商里点击 Ollama,模型类型选 LLM,模型名称输入 deepseek - r1:32b,基础 URL 填写 http://host.docker.internal:11434,模型类型选 “对话”,最大 token 填写 “4096”,然后点击保存。这配置过程还挺顺利的,感觉自己像个专业的技术人员。

  3. 设置系统模型 :接着我点击继续添加模型,模型类型选 “Text Embedding”,模型名称输入 “bge-m3”,基础 URL 和之前一样,点击保存。这样,Dify 就和本地大模型关联起来了,我心里那个成就感啊,简直爆棚!
    在这里插入图片描述
    在这里插入图片描述在这里插入图片描述

八、创建应用与本地知识库

创建应用

  1. 新建应用 :我在 Dify 里点击 “创建空白应用”,选择 “聊天助手”,输入应用名称,点击 “创建”。这过程就像给我的知识库起个名字一样,挺有趣的。
  2. 测试模型连接 :创建完成后,我在应用的聊天界面里输入问题,看到模型能正常回答,这说明 Dify 和本地部署的大模型 DeepSeek - r1 已经连通了。

创建本地知识库

  1. 添加 Embedding 模型 :我在 Dify 控制台点击头像,选择设置,在模型供应商里点击 Ollama,模型类型选 “Text Embedding”,模型名称输入 “bge-m3”,基础 URL 填写本地 Ollama Server 的地址,点击保存。这模型添加得挺顺利的。
  2. 创建知识库 :我点击上方工具栏里的 “知识库”,然后点击 “创建知识库”。这就像给我的知识库建个新房间一样,挺有意思的。
  3. 上传资料并设置参数 :我选择准备好的知识库文件,支持多种格式,点击 “下一步”。索引方式选 “高质量”,Embedding 模型选我们安装的 bge-m3,其他的默认,点击 “保存”。等待嵌入完成,这过程有点儿漫长,不过想着马上就能用上自己的知识库,我就耐心地等了下去。

我安装了14b 和 32b 两种规格参数的R1模型
在这里插入图片描述
在这里插入图片描述

九、在对话上下文中添加知识库

  1. 添加知识库到应用 :回到刚才的应用聊天页面,点击 “上下文”。这就像把我的知识库里的知识搬到应用里一样,挺方便的。
  2. 选择知识库并保存 :选择刚才创建的知识库,点击 “保存当前应用设置”。如果只是当前应用内调试可以不必更新,但如果想把应用发布为对外 API 服务或者持久化保存,就需要保存当前应用设置。。
    在这里插入图片描述

十、测试效果

  1. 进行对话测试 :在聊天页面里输入问题,观察模型的回答。看到模型能根据我上传的私有知识库内容回答问题,我心里那个高兴啊。
  2. 调整参数优化效果 :如果感觉回答的效果还不满意,我可以对召回参数进行调整,或者参考官方文档,做其他详细设置。不过目前来看,效果已经挺不错了。
    在这里插入图片描述

十一、注意事项

  • 遇到问题的解决方法 :在整个安装和配置过程中,如果遇到问题,我会参考各软件的官方文档或社区论坛进行排查解决。比如在安装 Docker 时遇到 Hyper - V 未开启的问题,我就根据提示重启电脑并开启 Hyper - V 功能,问题就解决了。
  • 确保网络连接稳定 :下载模型和相关软件时,稳定的网络连接很重要。如果网络中断,可能会导致下载失败,需要重新下载。我在这方面就挺注意的,确保网络一直稳定。
  • 根据实际需求选择模型版本 :虽然我选择了 32b 版本的 DeepSeek - r1 模型,但根据不同的应用场景和电脑配置,也可以选择其他参数版本的模型。大家可以根据自己的实际情况来选择,这样才能获得最佳的性能和体验。

当知识库内容比较多时,当前显卡和CPU开始有些吃力了,所以建议NVIDIA GeForce RTX 3090 24G 还是搭建14b的模型。

通过以上这些步骤,我成功在 Windows 系统下,利用 NVIDIA GeForce RTX 3090 24G 显卡搭建了企业级本地私有知识库。这个过程虽然有些复杂,但只要一步步来,就能顺利完成。希望我的分享能帮到大家,让我们一起在 AI 的世界里探索更多乐趣吧!

Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐