大家新年好啊,明天就是蛇年啦,蛇年快乐!
最近DeepSeek真的太火了,我也跟随B站,使用Ollama在一台Win11系统的笔记本电脑部署了DeepSeek。由于我的云服务器性能很差,虽然笔记本的性能也一般,但是还是可以在笔记本电脑上去尝试一下的。官方也提供了在Ollama上运行DeepSeek V3:本地部署高级AI指南。
https://www.deepseekv3.com/cn/blog/deep-seek-ollama-guide
这里也推荐一个B站视频,我参考了这个模型
https://www.bilibili.com/video/BV1JTSqYqErn/?spm_id_from=333.337.search-card.all.click&vd_source=51d15aaa7e2e1f72f87356e06140ae6b
DeepSeek V3在AI模型架构上实现了重大突破,采用了复杂的混合专家系统(MoE)设计,总参数量达671B,每个token激活37B参数。由于我笔记本的 计算资源和存储空间都有限,我这里安装的 Deepseek-v2 16B 玩一玩、试一试而已。
笔记本电脑配置:3050显卡4G;CPU12500H。
(1)安装Ollama
Ollama是一个开源的大型语言模型(LLM)服务工具,旨在简化在本地机器上运行大语言模型的过程;它支持多种操作系统,提供了一个直观的命令行界面。Ollama的主要特点包括:本地部署:用户可以在自己的设备上运行模型,保护数据隐私;多模型支持:支持多种流行的LLM模型;Ollama还提供了丰富的API和库支持;支持从多种格式导入模型,如PyTorch,同时也提供了模型库。Ollama官方提供了支持文档,包括在不同系统下安装、导入大模型等,网址如下所示:
https://ollama.readthedocs.io/quickstart/
在官网首页可以看到,它支持多种模型。
首先下载安装包,官方提供的下载链接比较慢,如果开了科学上网就会很快。
下载完成后,双击启动安装程序,点击安装即可。安装过程比较简单,也不能设置安装路径等,安装完成后能够找到Ollama图标。
Ollama的默认安装路径为C:\Users\{用户名}\AppData\Local\Programs\Ollama
,可以将该文件夹移动至指定位置;若选择将该文件夹移动至他处,需在环境变量中修改Path选项,添加Ollama文件绝对路径。如在安装时,要将Ollama安装到D盘某路径,可以在安装时,在终端或者CMD中先cd
到安装包所在的文档,再使用如下代码:.\OllamaSetup.exe /DIR="D:\Programs\Ollama"
。
(2)下载DeepSeek模型
下载模型可以通过Ollama官网,也可以通过DeepSeek官网。如果机子给力的话,也可以试一下deepseek-v3。
但是无奈deepseek-v3太大了,我的硬盘空间都不够。
我这里部署的deepseel-v2,并且选择了16B参数版本,没有选236B参数。
如果不需要修改模型默认下载位置,就可以打开终端或者cmd,输入如下代码,会将模型安装到默认的位置。
ollama run deepseek-v2:16b
如果需要修改模型下载位置等,官网也提供了教程。
在代码执行过程中,首先会拉取模型文件,在都加载后,弹出success
,便可以进行交互了。
如果同时安装了多个模型,可以使用ollama list
进行列表查看。
(3)部署UI界面
我们部署的模型可以直接通过命令行交互,但是这样不方便,也不便于应用于自己的网站等,因为我们可以使用一个UI界面工具,可以使用MaxKB:https://maxkb.cn/
或者 OpenWebUI:https://openwebui.com/
。MaxKB(Max Knowledge Base)是一款基于大语言模型和RAG(检索增强生成)的开源知识库问答系统,OpenWebUI(前身为Ollama WebUI)是一个可扩展的、功能丰富的、用户友好的自托管Web界面,设计用于完全离线运行。MaxKB和OpenWebUI都是基于大语言模型的工具,但它们的功能定位和使用场景有所不同。MaxKB更适合企业级知识管理和智能问答,而OpenWebUI则更适合模型管理和交互。
第一步是安装MaxKB。我这里使用了Docker进行了MaxKB的安装,可以使用Docker desktop可视化操作,也可以在终端中直接执行下面的代码,但是需要将D:\maxkb\maxkb和D:\maxkb\python-package修改成你自己电脑上的某个路径。
在代码中,docker run
用于创建并启动一个新的Docker容器。-d
表示在后台运行容器(detached mode)。--name=maxkb
用于指定容器的名称为maxkb,便于后续管理和引用。--restart=always
用于设置容器在退出后自动重启,确保服务始终运行。-p 8080:8080
将容器内部的8080端口映射到宿主机的8080端口,使得可以通过宿主机的8080端口访问MaxKB服务。后面的代码是用于挂载数据库和python包到本地。
docker run -d --name=maxkb --restart=always -p 8080:8080 -v D:\Programs\maxkb\maxkb:/var/lib/postgresql/data -v D:\Programs\maxkb\python-package:/opt/maxkb/app/sandbox/python-packages cr2.fit2cloud.com/1panel/maxkb
安装成功后,进入地址:http://localhost:8080/
,默认用户名为admin
,默认密码为MaxKB@123..
。首次登陆时,会提示修改密码。MaxKB官网提供了入门手册:https://maxkb.cn/docs/quick_start/
,也可以结合B站视频等进行设置。
第二步是添加模型。 在MaxKB的模型设置页面中,点击“添加模型”按钮,选择供应商为“Ollama”;填写模型名称,确保与ollama list
中显示的模型名称一致;API域名填写http://host.docker.internal:11434
,因为MaxKB是通过Docker部署的,而Ollama是本机部署的,不在同一网络环境;API Key可以随意填写。
这里因为是使用的已经部署好的模型,所以很快加载。如果是要新下载一个模型,就会很慢。
第三步是创建应用。首先设置应用名称,选择应用类型。
接下来,在AI模型中选择我们添加的本地模型,自定义一下 应用描述、角色设定、提示词等信息,如果模型支持语音输入的话,还可以设置语音输入与语音播放。设置完成后,点击保存并发布。
最后查看概述,可以复制访问链接到浏览器中,直接打开,进行交互;还可以嵌入第三方、设置访问限制等。
这样,我们就创建了一个基于本地大模型的AI工具。如果要把这个AI工具共享到朋友,需要部署在服务器或者具有公网IP的设备上;也可以使用ngrok、frp、花生壳等软件进行内网穿透。
(4)卸载Ollama与移除模型
如果要卸载ollama并移除下载的本地模型,需要首先移除模型,在命令行执行如下代码:
ollama rm deepseek-v2:16b
卸载Ollma通过控制面板或者卸载工具进行卸载即可。