在win11系统笔记本中使用Ollama部署deepseek制作一个本地AI小助手!原来如此简单!!!

news2025/1/30 2:37:47

大家新年好啊,明天就是蛇年啦,蛇年快乐

最近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\maxkbD:\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的设备上;也可以使用ngrokfrp、花生壳等软件进行内网穿透。

(4)卸载Ollama与移除模型

如果要卸载ollama并移除下载的本地模型,需要首先移除模型,在命令行执行如下代码:

ollama rm deepseek-v2:16b

卸载Ollma通过控制面板或者卸载工具进行卸载即可。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2285213.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Super Tilemap Editor使用详解】(十五):从 TMX 文件导入地图(Importing from TMX files)

Super Tilemap Editor 支持从 TMX 文件(Tiled Map Editor 的文件格式)导入图块地图。通过导入 TMX 文件,你可以将 Tiled 中设计的地图快速转换为 Unity 中的图块地图,并自动创建图块地图组(Tilemap Group)。以下是详细的导入步骤和准备工作。 一、导入前的准备工作 在导…

低代码系统-产品架构案例介绍、明道云(十一)

明道云HAP-超级应用平台(Hyper Application Platform),其实就是企业级应用平台,跟微搭类似。 通过自设计底层架构,兼容各种平台,使用低代码做到应用搭建、应用运维。 企业级应用平台最大的特点就是隐藏在冰山下的功能很深&#xf…

python:taichi 绘制太极图

安装 pip install taichi pip install opencv-python pycairo where ti # -- taichi 高性能可视化 Demo 展览 ti gallery D:\Python39\Lib\site-packages\taichi\examples\algorithm\circle-packing\ 点击图片,执行 circle_packing_image.py 可见 编写 taijitu.py 如…

Linux(19)——使用正则表达式匹配文本

新年快乐! 目录 一、正则表达式: 二、通过 grep 匹配正则表达式: 三、查找匹配项: 一、正则表达式: 正则表达式使用模式匹配机制查找特定内容,vim、grep 和 less 命令都可以使用正则表达式,P…

USB 3.1-GL3510-52芯片原理图设计

USB 3.1-GL3510-52芯片原理图设计 端口功能与兼容性物理层集成与性能电源相关特性充电功能其他特性原理图接口防护ESD 保护要求 GL3510-52是一款由Genesys Logic(创惟科技)研发的USB转换芯片,具有以下特点: 端口功能与兼容性 它…

DevEco Studio 4.1中如何创建OpenHarmony的Native C++ (NAPI)程序

目录 引言 操作步骤 结语 引言 OpenHarmony的开发工具变化很快,有的时候你安装以前的教程进行操作时会发现界面和操作方式都变了,进行不下去了。比如要在OpenHarmony中通过NAPI调用C程序,很多博文(如NAPI篇【1】——如何创建含…

deepseek R1的确不错,特别是深度思考模式

deepseek R1的确不错,特别是深度思考模式,每次都能自我反省改进。比如我让 它写文案: 【赛博朋克版程序员新春密码——2025我们来破局】 亲爱的代码骑士们: 当CtrlS的肌肉记忆遇上抢票插件,当Spring Boot的…

【PyQt5】数据库连接失败: Driver not loaded Driver not loaded

报错内容如下: 可以看到目前所支持的数据库驱动仅有[‘QSQLITE’, ‘QMARIADB’, ‘QODBC’, ‘QODBC3’, ‘QPSQL’, ‘QPSQL7’] 我在网上查找半天解决方法未果,其中有一篇看评论反馈是可以使用的,但是PyQt5的版本有点低,5.12…

文献阅读 250128-Tropical forests are approaching critical temperature thresholds

Tropical forests are approaching critical temperature thresholds 来自 <Tropical forests are approaching critical temperature thresholds | Nature> 热带森林正在接近临界温度阈值 ## Abstract: The critical temperature beyond which photosynthetic machinery…

升级到Mac15.1后pod install报错

升级Mac后&#xff0c;Flutter项目里的ios项目运行 pod install报错&#xff0c; 遇到这种问题&#xff0c;不要着急去百度&#xff0c;大概看一下报错信息&#xff0c;每个人遇到的问题都不一样。 别人的解决方法并不一定适合你&#xff1b; 下面是报错信息&#xff1a; #…

[c语言日寄]越界访问:意外的死循环

【作者主页】siy2333 【专栏介绍】⌈c语言日寄⌋&#xff1a;这是一个专注于C语言刷题的专栏&#xff0c;精选题目&#xff0c;搭配详细题解、拓展算法。从基础语法到复杂算法&#xff0c;题目涉及的知识点全面覆盖&#xff0c;助力你系统提升。无论你是初学者&#xff0c;还是…

新时代架构SpringBoot+Vue的理解(含axios/ajax)

文章目录 引言SpringBootThymeleafVueSpringBootSpringBootVue&#xff08;前端&#xff09;axios/ajaxVue作用响应式动态绑定单页面应用SPA前端路由 前端路由URL和后端API URL的区别前端路由的数据从哪里来的 Vue和只用三件套axios区别 引言 我是一个喜欢知其然又知其所以然的…

ts 基础核心

吴悠讲编程 : 20分钟学会TypeScript 无废话速成TS https://www.bilibili.com/video/BV1gX4y177Kf

FaceFusion

文章目录 一、关于 FaceFusion预览 二、安装三、用法 一、关于 FaceFusion FaceFusion 是行业领先的人脸操作平台 github : https://github.com/facefusion/facefusion官方文档&#xff1a;https://docs.facefusion.io/Discord : https://discord.com/invite/facefusion-1141…

使用github提交Pull Request的完整流程

文章目录 1.Fork仓库2. git clone 仓库在本地3.对项目进行修改开发4.上传项目到远程仓库操作补充1. git add .2. git commit -m "提交信息"3. git pull4. git push总结完整工作流程示例 5.将更新的项目pull Request给原来的仓库主人 当多人进行项目的开发的时候&…

游戏与硬件深度协同,打造更精细的体验优化

高画质的游戏往往带来手机的发热和卡顿从而影响游戏体验。开发者希望能够获取到手机运行的实时状态&#xff0c;从而能够进行主动的负载调节&#xff0c;将手机发热时游戏体验影响降到最低&#xff1b;同时手机也可以通过游戏传入的关键场景如"正在下载资源"“团战中…

SpringCloud系列教程:微服务的未来(十七)监听Nacos配置变更、更新路由、实现动态路由

前言 在微服务架构中&#xff0c;API 网关是各个服务之间的入口点&#xff0c;承担着路由、负载均衡、安全认证等重要功能。为了实现动态的路由配置管理&#xff0c;通常需要通过中心化的配置管理系统来实现灵活的路由更新&#xff0c;而无需重启网关服务。Nacos 作为一个开源…

复古壁纸中棕色系和米色系哪个更受欢迎?

根据最新的搜索结果&#xff0c;我们可以看到棕色系和米色系在复古壁纸设计中都非常受欢迎。以下是对这两种颜色系受欢迎程度的分析&#xff1a; 棕色系 受欢迎程度&#xff1a;棕色系在复古壁纸中非常受欢迎&#xff0c;因为它能够营造出温暖、质朴和自然的氛围。棕色系的壁纸…

Linux 非阻塞IO

Linux 非阻塞IO 1. fcntl() 在Linux操作系统中&#xff0c;fcntl() 是一个用于操作文件描述符的系统调用。它提供了多种功能&#xff0c;包括控制文件描述符的属性、管理文件锁定、设置文件的非阻塞模式等。 本文只截取了用于IO模型的 fcntl() 部分内容&#xff0c; fcntl() …

go入门Windows环境搭建

简介 Go 即 Golang&#xff0c;是 Google 公司 2009 年 11 月正式对外公开的一门编程语言。 根据 Go 语言开发者自述&#xff0c;近 10 多年&#xff0c;从单机时代的 C 语言到现在互联网时代的 Java&#xff0c;都没有令人满意的开发语言&#xff0c;而 C往往给人的感觉是&a…