2 本地部署DeepSeek模型构建本地知识库+联网搜索详细步骤

1 使用ollama完成DeepSeek本地部署中使用ollama完成deepSeek的本地部署和运行,此时我可以在PowerShell中通过对话的方式与DeepSeek交流,但此时本地模型不具备联网搜索能力,无法根据网上信息来回答我的问题,同时我也无法将我自己的知识给他参考,这样本地模型相比直接使用官网的访问接口没有任何优势,接下来我需要做两件事情,来发挥出本地模型的优势:

(1)建立本地知识库,然后将我自己的资料和数据文件放入知识库中,让模型在回答问题是可以参考我本地知识来组织答案;这可以在避免私人数据泄露的同时让模型变成了自己的专有模型,根据知识库的内容实现定向知识领域应用。

(2)通过第三方工具或脚本实现本地模型的联网搜索能力,这样本地模型就能够完全具备官网接口的能力,且本地模型搜索时不会受平台接口搜过内容过滤的限制。

总结网上的实现方案,当前有两种比较有意义的部署方案:

(1)方案一ollama+anythingLLM:开源模型本地部署+本地知识库构建,完全离线运行,适合不需要联网完全本地运行的场景;

(2)方案二ollama+浏览器Page Assist插件:开源模型本地部署+本地知识库构建+联网搜索功能,适合需要联网搜索的场景。

1 方案一:使用anythingLLM实现本地知识库构建

安装anythingLLM有两种方式,一种是直接安装桌面版,一种是通过Docker安装;第一种方式安装方便,已经能满足一般用户的使用要求,但安装过程中需要下载库和相关依赖,由于下载速度很慢这个过程十分漫长(可以考虑自己上点□□上网手段),我等待了应该有三四个小时;第二种方式相比于第一种方式功能更多一些,支持多用户访问、嵌入聊天部件、密码保护和用户管理且方便移植,且docker安装anythingLLM可以更换国内镜像源,安装速度要快一些。

1.1 安装anythingLLM桌面版

下载地址:https://anythingllm.com/desktop

双击安装包选择自己的安装位置即可安装,保持联网状态,等待自动下载相关依赖和库就可以;

软件介绍和使用说明可以参考官网:https://docs.anythingllm.com/introduction

1.2 通过Docker安装anythingLLM

Docker是一种虚拟化的容器技术,能够实现运行环境与运行设备基础架构的隔离,允许用户将应用和依赖打包部署在一个可移植的容器内,在任何支持Docker的环境中运行,方便移植和部署。

(1)去docker官网可以下载Docker安装包:https://www.docker.com

双击安装程序,勾选使用WSL 2代替Hyper-V,点击OK等待安装完成。

安装完成后需要重启电脑。

(2)运行docker,若运行失败,可以打开PowerShell,更新一下wsl版本:输入wsl --update,若仍然失败,重装一下docker。

Docker说明:

(A) Docker是依赖Linux环境的,无法直接在Windows系统上运行,所以通过WSL2和Hypera-V可以搭建Docker所需的虚拟运行环境;

(B)WSL2是一个轻量级的虚拟化技术,底层利用Hyper-V技术运行了Linux内核来提供完整的调用,无需模拟整个硬件环境,资源占用少,WSL2更适合那些需要在Windows上便捷地使用Linux环境的用户;

(C)Hyper-V是一个全面完整的虚拟化技术和虚拟机管理器,模拟了整个Linux的硬件环境,支持运行独立的操作系统,则适用于需要完整虚拟化功能的场景;

(D)我仅需一个Linux环境运行Docker,所以选择WSL2,节约硬件资源。

(3)打开Docker软件,点击右上角设置,再点击Docker Engine,并添加国内镜像源,然后点击左下角的Apply&Restart;

复制代码
"registry-mirrors": [
    "https://docker.m.daocloud.io/",
    "https://huecker.io/",
    "https://dockerhub.timeweb.cloud",
    "https://noohub.ru/",
    "https://dockerproxy.com",
    "https://docker.mirrors.ustc.edu.cn",
    "https://docker.nju.edu.cn",
    "https://xx4bwyg2.mirror.aliyuncs.com",
    "http://f1361db2.m.daocloud.io",
    "https://registry.docker-cn.com",
    "http://hub-mirror.c.163.com"
  ]


(4)点击右下角的Terminal或者通过cmd运行PowerShell,然后输入命令docker pull mintplexlabs/anythingllm下载anythingllm;

(5)下载完成后再Termical或PowerShell中输入一下代码并运行即可将anythingLLM运行起来;

复制代码
$env:STORAGE_LOCATION="$HOME\Documents\anythingllm"; `
If(!(Test-Path $env:STORAGE_LOCATION)) {New-Item $env:STORAGE_LOCATION -ItemType Directory}; `
If(!(Test-Path "$env:STORAGE_LOCATION\.env")) {New-Item "$env:STORAGE_LOCATION\.env" -ItemType File}; `
docker run -d -p 3001:3001 `
--cap-add SYS_ADMIN `
-v "$env:STORAGE_LOCATION`:/app/server/storage" `
-v "$env:STORAGE_LOCATION\.env:/app/server/.env" `
-e STORAGE_DIR="/app/server/storage" `
mintplexlabs/anythingllm;

点击端口3001:3001或在浏览器访问http://localhost:3001/ 即可进入anythingLLM界面。

1.3 anythingLLM配置本地知识库------基于桌面版

1.3.1 将ollama serve运行起来

WIN+R快捷键,输入cmd打开PowerShell,输入ollama serve可以将ollama运行起来,默认ollama可以通过本地的11434端口访问,新开一个PowerShell窗口输入curl http://localhost:11434可以验证。

1.3.2 配置本地anythingLLM

运行anythingLLM软件,第一次运行会有一些提示,可以全部跳过,进入如下界面,点击下方的设置可以配置自己的模型。

(1)首先点击LLM首选项,选择自己的模型提供商为ollama,然后在下方Ollama Base URL处填上ollama的访问地址:http://127.0.0.1:11434 ,Ollama Keep Alive选择Forever使模型一直保持激活状态;

(2)向量数据库用于存储自己知识库转化得到的模型可识别的向量数据,使用默认的LanceDB即可;

(3)先打开PowerShell输入ollama pull nomic-embed-text下载文本嵌入模型用于将文本转化为向量以及进行相似度计算;在anythingLLM设置的Embedder首选项中选择Ollama并选择刚刚下载的模型,然后保存更改;

(4)返回聊天界面新建工作区,并点击上传文件;

(5)上传要放入知识库中的文件,然后选中并点击Move to Workspace,将文件导入工作空间,然后下划到工作空间,点击Save and Embeded;


(6)嵌入完成后点击pin to workspace即可返回聊天界面,此时向模型提问deepseek即可根据知识库中的知识进行回答。

2 方案二:使用Page Assist插件实现本地知识库构建+联网搜索

2.1 安装浏览器

已知Firefox和Chrome浏览器都支持Page Assist插件,edge暂不支持,我测试了火狐浏览器安装Page Assist,火狐浏览器可以去官网下载:https://www.firefox.com.cn/

2.2 安装Page Assist插件

(1)打开火狐浏览器,点击右上角拓展------管理拓展;

(2)搜索Page Assist,出来的第一个就是,点击添加等待下载完成会弹窗询问是否添加Page Assist,选择添加;


2.3 接入本地模型

(1)在配置Page Assist之前先在PowerShell中输入ollama serve将ollama运行起来;

(2)点击拓展中的Page Assist插件进入Page Assist界面,点击右上角设置,先在一般设置里将语言设置为简体中文,ollama设置中已经默认配置好ollama的默认端口,无需更改;


(3)返回聊天界面,在顶部选择你本地部署的模型,此时即可与本地模型进行对话;

2.4 开启本地模型联网搜索功能

打开左下角的联网功能,即可开启模型的联网搜索功能,本地模型可以根据搜索到的信息来回答我的提问;在一般设置里的管理网络设置中,可以设置使用的搜索引擎和搜索的结果数;

2.5 配置本地知识库

(1)首先打开PowerShell输入ollama pull nomic-embed-text下载文本嵌入模型用于将文本转化为向量以及进行相似度计算;

(2)在Page Assist设置------RAG设置中选择刚刚安装的nomic-embed-text模型并保存;

(3)在管理知识中点添加新知识,为新知识起一个标题,然后将需要放入知识库的文档拖入并提交;

(4)返回聊天界面,在输入窗中选择知识库,然后提问知识库中的相关知识,模型即可根据本地知识库进行回答。

相关推荐
belingud5 小时前
不同模型回答差异的简单探讨
chatgpt·claude·deepseek
AI大模型1 天前
基于 Ollama 本地 LLM 大语言模型实现 ChatGPT AI 聊天系统
程序员·llm·ollama
云道轩1 天前
DeepSeek补全IBM MQ 9.4 REST API 执行命令的PPT
deepseek·ibm mq
算家计算2 天前
DeepSeek R2因芯片问题再次延迟发布!千亿级大模型训练的算力之困
人工智能·芯片·deepseek
AI大模型3 天前
手把手教你本地部署DeepSeek:解锁私有化AI的无限可能
程序员·llm·deepseek
量子位3 天前
被曝蒸馏DeepSeek还造假!欧版OpenAI塌房了
openai·deepseek
李大腾腾3 天前
3、JSON处理( n8n 节点用于交换信息的语言)
openai·workflow·ollama
陈佬昔没带相机3 天前
ollama 终于有UI了,但我却想弃坑了
人工智能·llm·ollama
李大腾腾4 天前
2、n8n 构建你的第一个 AI Agent
openai·agent·ollama
Spider_Man4 天前
和AI畅聊不掉线:本地部署LLM聊天界面全攻略
javascript·llm·deepseek