首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >私有化搭建、本地知识库、可联网查询、具备RAG能力的私人DeepSeek

私有化搭建、本地知识库、可联网查询、具备RAG能力的私人DeepSeek

原创
作者头像
参谋带个长
发布于 2025-02-15 04:46:02
发布于 2025-02-15 04:46:02
3.5K0
举报

一、如何私有化部署DeepSeek

之前已经写过教程介绍如何部署DeepSeek,具体可参考以下内容:

以上方式在云端产品上实现 DeepSeek 的私有化部署,除此之外,也可以部署安装在本地机器上,如个人PC电脑、内网电脑等环境。

无论使用哪种方法,本质上都是通过安装 Ollama 运行 DeepSeek的大模型来实现,只是具体的实现方式不同。

二、私有化部署DeepSeek与第三方API使用区别

私有化部署DeepSeek

第三方API使用

定义

将DeepSeek部署在自有服务器或数据中心中,完全掌控数据和系统

使用由第三方提供的API接口,将第三方服务或功能集成到自己的应用程序中

数据安全与隐私

高安全性,数据完全掌握手中,减少数据泄露风险

安全性依赖于第三方API提供者的安全措施,可能存在数据泄露风险

定制化程度

高度定制化,可以根据自身需求对DeepSeek进行配置和优化

定制化程度较低,受限于第三方API提供的功能和参数

成本控制

初期投入较高,但长期来看可节省持续的服务费用

前期基本无投入,但需支付第三方API的使用费用

灵活性

灵活性高,可根据需求自主扩展和调整DeepSeek的功能

灵活性取决于第三方API的更新和扩展能力

技术支持与维护

需自行负责DeepSeek的技术支持与维护,但拥有完全的控制权

第三方API提供者通常提供技术支持,但可能面临响应延迟或限制

应用场景

适合对数据安全性、隐私保护要求高的场景

适合需要快速集成第三方服务或功能,且对数据安全性要求不是特别高的场景

通过以上表格对比可得出私有化部署DeepSeek具有数据高安全性、功能高定制化等特点,但安装好后的DeepSeek还是模型的最初形态,可以通过不同的插件及软件对其进行优化调整。

本文将介绍如何通过Page Assist、Cherry Studio、AnythingLLM对私有化部署的DeepSeek进行设置,搭建本地知识库、联网搜索、RAG(检索增强生成),以实现私人专属AI大模型。

本文所展示的数据和内容仅用于教程演示,具体参数及功能以官网介绍为准。

三、Ollama URL 地址

3.1、Ollama地址

对DeepSeek进行配置训练,就需要通过 Ollama 的URL地址找到DeepSeek模型,不同部署方式的Ollama地址有所不同。其中11434为Ollama默认端口号,。

安装方式

Ollama地址

本地安装 Ollama

http://localhost:11434

服务器安装 Ollama

http://服务器公网IP:11434

腾讯云HAI基础环境安装 Ollama

http://服务HAI应的公网IP:11434

腾讯云HAI社区应用DeepSeek-R1

http://服务HAI应的公网IP:6399

Ollama URL地址以后续的配置中会被使用

默认情况下自行安装的Ollama仅可被localhost(127.0.0.1)访问,通过配置可开通外部访问。

3.2 Linux Ollama开通外部访问

1.修改Ollama配置文件

代码语言:bash
AI代码解释
复制
# 编辑配置文件
sudo vim /etc/systemd/system/ollama.service

# 在 [Service] 部分,添加或修改 Environment 行
Environment="OLLAMA_HOST=0.0.0.0"

2.重新加载 systemd 配置

代码语言:bash
AI代码解释
复制
sudo systemctl daemon-reload

3.重启Ollama服务

代码语言:bash
AI代码解释
复制
sudo systemctl restart ollama

具体操作如图所示:

3.3 Windowns Ollama开通外部访问

  1. 打开系统属性
  2. 在“系统属性”窗口中,点击“高级”选项卡,然后点击“环境变量”。
  3. 在“系统变量”部分,点击“新建”,输入变量名为 OLLAMA_HOST,变量值为 0.0.0.0,然后点击“确定”。
  4. 如果该变量已存在,则直接修改其值为 0.0.0.0。
  5. 重启Ollama服务,以使新的环境变量生效。

具体操作如图所示:

四、Page Assist插件配置

Page Assist是一款开源的浏览器扩展程序,它为用户提供了一个直观的交互界面,以便在本地运行的AI模型中进行交互。

Page Assist可安装在Chrome、Edge等浏览器,本文以 Edge 浏览器安装配置Page Assist插件进行说明。

4.1、安装Page Assist

打开Edge浏览器,点击右上角3个点(...),点击扩展,点击打开Microsoft Edge扩展网站,在打开的界面中,搜索Page Assist,找到对应结果,点击获取,再弹出的窗口中点击添加扩展,即可完成安装。

4.2、打开Page Assist插件

打开已安装的Page Assist,可以通过以下两种方法:

  1. 在Edge地址栏右侧找到如下图标,按点击可以打开Page Assist。
  2. 点击右上角3个点(...),点击扩展,将弹出相同界面,打开Page Assist。

4.3、设置Page Assist插件语言

在打开的界面中,点击右上角设置图标,如图所示,在General Settings,找到Language,改成简体中文

4.4、主界面介绍

点击左上角返回箭头,可返回至主界面,以下为主界面功能介绍。选择好模型后即可开始对话。

4.5、Ollama设置

Ollama URL 地址的获取,在本文中已有介绍(参考第三部分Ollama URL 地址),此处填写合适的地址,即可在主界面中选择对应的模型。

填写规则:

  1. 默认为本机地址,主界面模型列表中显示的也是本地已安装模型
  2. 如需填写线上地址,需要Ollama URL 高级配置中,开启启用或禁用自定义来源 URL,同时填写正确的线上地址,此时主界面模型列表中显示的是线上服务中已安装模型

4.6、RAG设置

RAG(Retrieval-Augmented Generation,检索增强生成)是一种结合了检索技术和生成模型的方法,可以提升自然语言处理系统的性能。

简单的说,RAG可以将后续介绍的本地知识库中的内容进行处理,便于大语言模型使用。这里需要安装合适的嵌入模型,推荐以下两种模型。

嵌入模型(Embedding Model)是一种将高维数据(如文本、图像等)映射到低维连续向量空间的模型。这种模型能够捕捉数据中的语义和结构信息,使得相似内容的嵌入在高维空间中距离接近,而不相关的内容则距离较远。

模型名称

使用场景

安装命令

nomic-embed-text

功能强大的英文文本嵌入模型

ollama pull nomic-embed-text

bge-m3

适用于多种高级自然语言处理任务

ollama pull bge-m3

推荐安装bge-m3,这里需要用到ollama安装模型的知识,如不了解可看本文开头的相关教程。

点击右上角设置图标,选择RAG设置,文本嵌入模型,选择合适的模型,然后保存。

4.7、管理模型

模型的管理可在此处完成,进行添加、当前模型查看、删除、重新拉取等操作。

4.8、管理知识

对于私有化的知识,可以添加上传至大模型,由嵌入模型分析处理后,对DeepSeek模型提问,大模型就可以优先检索知识库中数据,回答的更加准确。

如果引用文本文档显示的是乱码,则需将文本文档的格式更改为UTF-8

可通过如下方法进行测试,上传知识库测试.txt文件,内容如下。

代码语言:bash
AI代码解释
复制
# 代号TEST001手机

代号TEST001手机是一款非常强大的手机,它安装了世界上最强大的操作系统TEST SERVER版,如今性能1台比过去10台加起来还要强大,还是价格也非常便宜,适合全人类使用。

# 代理TEST001手机价格

有缘可得,无缘不可得

下图为开启知识库前后大模型对问题的回复,可以看到未开启前无法准确回答,开启后可以优先检索知识库的内容,进行准确回复。

4.9、管理提示词

提示词用于指导AI模型如何理解和回应您的输入。通过输入特定的提示词,可以引导大模型生成与提示词相关的内容或执行特定的任务。

4.10、联网功能

如果联网功能不可用,或回答的内容明显不准确,需在设置中的一般设置,管理网络搜索中的搜索引擎改为国内搜索引擎,如Sougou。

4.11、Page Assist使用总结

通过合理的RAG设置、知识库设置、提示词设置,可以将大模型AI训练成更符合自身需要、更加智能化的产品。相比于通用大模型更能满足私有、定制的需求。

由于Cherry Studio、AnythingLLM在许多设置上与Page Assist相似,故下文将仅对软件主要设置进行介绍。

五、Cherry Studio配置

Cherry Studio是一款支持多个大语言模型(LLM)服务商的桌面客户端软件,下载安装后主要设置如下。

六、AnythingLLM配置

AnythingLLM是一个桌面软件,支持多种LLM大模型的配置,使用AnythingLLM设置知识库等功能,可以满足多种应用场景的需求,下载安装后主要设置如下。

6.1、主界面功能区

6.2、软件设置

6.3、知识库

在主界面,工作区处,上传文档,设置当前工作区的知识库。

七、选择什么样的模型

DeepSeek-R1就是深度搜索-R1模型,包含Distilled models 的是蒸馏模型。

模型

模型名

模型大小

DeepSeek-R1-Distill-Qwen-1.5B

deepseek-r1:1.5b

1.1G

DeepSeek-R1-Distill-Qwen-7B

deepseek-r1:7b

4.7G

DeepSeek-R1-Distill-Llama-8B

deepseek-r1:8b

4.9G

DeepSeek-R1-Distill-Qwen-14B

deepseek-r1:14b

9.0G

DeepSeek-R1-Distill-Qwen-32B

deepseek-r1:32b

20G

DeepSeek-R1-Distill-Llama-70B

deepseek-r1:70b

43G

DeepSeek-R1

deepseek-r1:671b

404G

通常所说的“满血版R1”指的是deepseek-r1:671b,该模型对硬件要求很高,相对的费用也会比较高,通常情况下也可以选择蒸馏模型。

从此表中可以看出,模型参数越大则文件体积越大,相应的对硬件要求也就越高。从运行结果来看,理论上拥有更大参数量的模型(如DeepSeek-R1)在推理效果上更胜一筹,但另一方面,更小参数的 Distilled models(蒸馏模型)模型的响应速度更快、占用资源更少、部署时长更短,在处理较为简单的任务时,仍是不错的选择。

从此表中可以看出不同参数量的蒸馏模型在不同场景下的得分情况,其中32B在很多场景下比70B得分要高,由此可见不能完全追求大参数量的模型,同样的14B与32B比较,在某些场景下相差并不大。

各种蒸馏模型中 DeepSeek-R1-Distill-Qwen-14BDeepSeek-R1-Distill-Qwen-32B是性价比较高两种模型。

具体选择要根据服务硬件参数来决定,配置低的就选择低参数量,要追求更好的推理结果,高参数量的模型也必须搭配高配置的服务,如果运行一个模型响应很卡顿,大概率说明服务配置不够,可以考虑升级配置或降低模型参数量。。

本文所展示的数据和内容仅用于教程演示,具体参数及功能以官网介绍为准。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
JavaScript 第四天
函数可把相同逻辑代码包裹起来, 通过函数调用执行包裹的代码, 有利精简代码方便复用
小城故事
2023/03/10
2570
探索JavaScript函数---基础篇
函数可以把具有相同或相似逻辑的代码“包裹”起来,通过函数调用执行这些被“包裹”的代码逻辑,这么做的优势是有利于精简代码方便复用。
P_M_P
2024/06/02
1760
探索JavaScript函数---基础篇
JS基础(三)
当调用某个函数,这个函数会返回出一个结果。 不是所有的函数都需要返回值,比如 alert(‘弹框’)
且陶陶
2023/04/12
3900
JS基础(三)
前端架构师进阶之路07_JavaScript函数
相当于将一条或多条语句组成的代码块包裹起来,在使用时只需关心参数和返回值,就能完成特定的功能,而不用了解具体的实现。
张哥编程
2024/12/13
2120
前端架构师进阶之路07_JavaScript函数
javascript函数基础
形参:声明函数时写在函数名右边小括号里的叫形参(形式上的参数) 实参:调用函数时写在函数名右边小括号里的叫实参(实际上的参数)
timerring
2023/10/13
1910
javascript函数基础
JS函数(号称最全最详解包括es6)
第一绝: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head
贵哥的编程之路
2020/10/30
4680
JS函数(号称最全最详解包括es6)
23·灵魂前端工程师养成-JavaScript函数
-多年互联网运维工作经验,曾负责过大规模集群架构自动化运维管理工作。 -擅长Web集群架构与自动化运维,曾负责国内某大型金融公司运维工作。 -devops项目经理兼DBA。 -开发过一套自动化运维平台(功能如下): 1)整合了各个公有云API,自主创建云主机。 2)ELK自动化收集日志功能。 3)Saltstack自动化运维统一配置管理工具。 4)Git、Jenkins自动化代码上线及自动化测试平台。 5)堡垒机,连接Linux、Windows平台及日志审计。 6)SQL执行及审批流程。 7)慢查询日志分析web界面。
DriverZeng
2022/10/31
3930
23·灵魂前端工程师养成-JavaScript函数
JavaScript第五节
全局作用域 :在script标签内,函数外的区域就是全局作用域,在全局作用内声明的变量叫做全局变量 。全局变量可以在任意地方访问。
用户3461357
2019/08/02
6960
JavaScript基础07--函数
封装了一段可被重复调用执行的代码块,通过函数可以实现大量代码的重复使用。函数是一种数据类型。
软件架构师Michael
2022/08/02
2120
JavaScript——函数
在JS里面,可能会定义非常多的相同代码或者功能相似的代码,这些代码可能需要大量重复使用。
岳泽以
2022/10/26
9830
Javascript提升阶段学习
JavaScript 1:javascript简介   JavaScript是一种脚本语言,能实现网页内容的交互显示,当用户在客户端显示该网页时,浏览器就会执行JavaScript程序,用户通过交互
别先生
2017/12/29
1.4K0
「JavaScript」数组与函数
请注意,本文编写于 2099 天前,最后修改于 174 天前,其中某些信息可能已经过时。
曼亚灿
2023/05/17
6140
「JavaScript」数组与函数
翻译连载 |《你不知道的JS》姊妹篇 |《JavaScript 轻量级函数式编程》- 第 2 章:函数基础
原文地址:Functional-Light-JS 原文作者:Kyle Simpson-《You-Dont-Know-JS》作者 第 2 章:函数基础 函数式编程不是仅仅用 function 这个关键词
iKcamp
2018/01/04
1.7K0
翻译连载 |《你不知道的JS》姊妹篇 |《JavaScript 轻量级函数式编程》- 第 2 章:函数基础
前端基础-JavaScript函数进阶
这种写法将一个匿名函数赋值给变量。这时,这个匿名函数又称函数表达式(Function Expression)
cwl_java
2020/03/26
5800
后端眼中的JavaScript长啥样?这篇文章告诉你。
数组是指一组数据的集合,其中的每个数据被称作元素,在数组中可以存放任意类型的元素。数组是一种将一组数据存储在单个变量名下的优雅方式。数组可以把一组相关的数据一起存放,并提供方便的访问(获取)方式。
上分如喝水
2022/02/26
9100
后端眼中的JavaScript长啥样?这篇文章告诉你。
前端js基础教程
Netscape在最初将其脚本语言命名为LiveScript,后来Netscape在与Sun合作之后将其改名为JavaScript。JavaScript最初受Java启发而开始设计的,目的之一就是“看上去像Java”,因此语法上有类似之处,一些名称和命名规范也借自Java。JavaScript与Java名称上的近似,是当时Netscape为了营销考虑与Sun微系统达成协议的结果。Java和JavaScript的关系就像张雨生和张雨的关系,只是名字很像。
张哥编程
2024/12/13
2920
前端js基础教程
JavaScript基础
「计算机语言」分为机器语言,汇编语言,高级语言。计算机内部最终执行的都是机器语言,由0和1这样的二进制数构成。
小城故事
2023/03/10
1.1K0
JavaScript基础
JavaSprict函数
盛透侧视攻城狮
2024/10/21
810
JavaScript进阶-01
作用域(scope)规定了变量能够被访问的“范围”,离开了这个“范围”变量便不能被访问,作用域分为全局作用域和局部作用域。
yuanshuai
2022/08/23
7830
JavaScript 进阶 - 第1天
作用域(scope)规定了变量能够被访问的“范围”,离开了这个“范围”变量便不能被访问,作用域分为全局作用域和局部作用域。
用户10169043
2022/11/18
8860
相关推荐
JavaScript 第四天
更多 >
LV.1
这个人很懒,什么都没有留下~
目录
  • 一、如何私有化部署DeepSeek
  • 二、私有化部署DeepSeek与第三方API使用区别
  • 三、Ollama URL 地址
    • 3.1、Ollama地址
    • 3.2 Linux Ollama开通外部访问
    • 3.3 Windowns Ollama开通外部访问
  • 四、Page Assist插件配置
    • 4.1、安装Page Assist
    • 4.2、打开Page Assist插件
    • 4.3、设置Page Assist插件语言
    • 4.4、主界面介绍
    • 4.5、Ollama设置
    • 4.6、RAG设置
    • 4.7、管理模型
    • 4.8、管理知识
    • 4.9、管理提示词
    • 4.10、联网功能
    • 4.11、Page Assist使用总结
  • 五、Cherry Studio配置
  • 六、AnythingLLM配置
    • 6.1、主界面功能区
    • 6.2、软件设置
    • 6.3、知识库
  • 七、选择什么样的模型
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档