当前位置: 首页 > news >正文

【Mac电脑本地部署Deepseek-r1:详细教程与Openwebui配置指南】

文章目录

    • 前言
      • 电脑配置:
      • 安装的Deepseek版本:
      • 使用的UI框架:
      • 体验效果展示:
      • 本地部署体验总结
    • 部署过程
      • Ollama部署
      • 拉取模型
      • 运行模型
      • Openwebui部署
      • 运行Ollama服务
      • 在Openwebui中配置ollama的服务
    • 后话

前言

deepseek最近火的一塌糊涂,谁还不知道deepseek感觉就已经是上古时期的人了,趁着有时间我赶紧研究了一下本地部署,deepseek有很多蒸馏版的模型,对硬件要求不是很高,这就让本地部署变成了可能,于是我迫不及待的在我的mac电脑上试了一下,嘿,还挺丝滑。

现在将部署的过程分享如下:

电脑配置:

芯片 Apple M1 pro

内存 16G

macOs Sequoia 版本15.3.1

安装的Deepseek版本:

Deepseek-r1:8b(我之前装的是8b版本)

Deepseek-r1:7b(为了演示截图,我再装一个7b版本)

使用的UI框架:

Openwebui(基于docker部署的)

体验效果展示:

deepseek本地部署聊天界面

deepseek调用comfyui绘画

deepseek调用文心一言api

openwebui调用文生图api生成图片

调用文生图api生成的图片

支持联网搜索功能

整体来说部署到本地是可以玩的,响应的速度也在可以接受的范围内,配合上openwebui,还可以有文生图,联网搜索,调用API接口等玩法。

本地部署体验总结

由于机器配置有限,我仅仅部署了7b的模型,智商非常有限,所以仅限于玩玩了,如果有比较土豪的大佬,部署更大参数的模型,那部署在本地,作为生产力工具也是可以的。

但是真正的处理工作啥的,我建议还是老实用线上版本,毕竟线上是满血版,不是咱们这些小破电脑能跑起来的。

deepseek线上版:https://chat.deepseek.com/

如果老是显示服务器繁忙,也可以找平替,有很多大厂都已经接入了deepseek,响应速度都还非常不错,比如:

百度搜索:https://chat.baidu.com/

腾讯元宝:https://yuanbao.tencent.com/(默认是混元大模型,需要自己手动切换成deepseek-r1)

秘塔AI搜索:https://metaso.cn/

360纳米AI搜索:https://www.n.cn/

天工AI:https://www.tiangong.cn/

部署过程

废话不多说,直接来跟着我一步步进行部署:

Ollama部署

直接上官网:https://ollama.com/download,然后下载自己电脑适合的版本,安装即可。

下载完成后,解压,然后安装:

安装成功后,即可在终端进行调用了。

# 查看 Ollama 版本
ollama --version
# Ollama 命令帮助
ollama -h

如此,ollama的安装就搞定了。

接下来我们就来拉取deepseek的模型

拉取模型

# 拉取模型(我这里用的是先拉取,再运行)
ollama pull deepseek-r1:7b

运行模型

等待拉取结束,运行模型

#运行 deepseek-r1:7b模型
ollama run deepseek-r1:7b

可以看到已经模型已经正常运行了,可以正常进行对话了。输入 /bye 可以结束在终端的对话。

此时已经成功将deepseek-r1:7b模型在本地跑起来了,但是这和别人用的都不太一样,而且在终端对话始终不是那么的方便,那么怎么办呢?

Openwebui部署

接下来就祭出 Openwebui,相对可玩性比较高的一个大语言模型的UI框架,我们来用ollama作为服务端,Openwebui作为前端,部署起来进行访问。

这里我只介绍使用docker进行部署,因为比较方便,其他方式有兴趣的朋友自己研究即可。

什么?电脑没有安装docker?mac电脑安装docker可以说是有手就会,我就不过多介绍了,实在不会的,参考这个教程:https://www.runoob.com/docker/macos-docker-install.html

docker安装成功后,我们来使用docker安装Openwebui

# 拉取镜像并映射端口运行
docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v $HOME/Documents/myDockerData/openwebui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main

可以看到 已经拉取镜像成功,并且端口映射好,而且启动起来了

此时访问 http://localhost:3000/ 就可以进入到Openwebui的界面了。

首次进入可能需要稍微等待几分钟,然后就会出来界面,

点击开始使用,然后进行注册,登录即可使用。首次注册的账号即为管理员账号。

运行Ollama服务

我们需要使用Ollama作为后端,提供API接口的服务,所以需要将这个服务启动起来。

#启动ollama服务,默认监听端口是11434
ollama serve

访问http://localhost:11434/可以看到服务是否启动成功:

显示Ollama is running 说明服务已经成功启动了。

在Openwebui中配置ollama的服务

在个人头像-设置-管理员面板-外部连接页面,打开Ollama API的开关,填写API的地址:http://host.docker.internal:11434

注意:由于此处是在docker中进行运行的Openwebui,但是ollama是在本地直接运行的,所以配置到这里必须这样配置才可以生效,如果配置为localhost:3000 是不起作用的。

配置完成之后,就可以测试聊天了。

选择相应的模型,然后直接开始对话即可。

至此,大功告成!你已经可以在本地运行大模型,并且可以使用网页进行对话了。

后话

至于文章开始展示的集成本地文生图模型、调用api文生图功能,或者调用api接口chat,以及调用联网搜索功能的这些分支,还需要再逐一进行讲解。

如果你有以上某方面的需要,请在评论区进行留言,我将视情况再做后续的文章更新。

感谢各位大佬的观看~ 下期再见~

相关文章:

【Mac电脑本地部署Deepseek-r1:详细教程与Openwebui配置指南】

文章目录 前言电脑配置:安装的Deepseek版本:使用的UI框架:体验效果展示:本地部署体验总结 部署过程Ollama部署拉取模型运行模型Openwebui部署运行Ollama服务在Openwebui中配置ollama的服务 后话 前言 deepseek最近火的一塌糊涂&a…...

DeepSeek开源技术全景解析:从硬件榨取到AI民主化革命

DeepSeek开源技术全景解析:从硬件榨取到AI民主化革命 一、开源周核心成果概览 2025年2月24日启动的"开源周"计划,DeepSeek团队连续发布三项底层技术突破: FlashMLA(2.24):动态资源调度算法&am…...

WPF12-MVVM

目录 1. 什么是MVVM2. 实现简单MVVM2.1. Part 12.2. Part 21. 什么是MVVM MVVM 是 Model-View-ViewModel 的缩写,是一种用于构建用户界面的设计模式,是一种简化用户界面的事件驱动编程方式。 MVVM 的目标是实现用户界面和业务逻辑之间的彻底分离,以便更好地管理和维护应用…...

一个原教旨的多路径 TCP

前面提到过 ECMP 和 TCP 之间的互不友好,pacing 收益和中断开销的互斥,在事实上阻碍了 packet-based LB 的部署,也限制了交换机,服务器的并发性能,同时潜在增加了 bufferbloat 的概率,而适用 packet-based …...

跟着AI学vue第十三章

第十三章:技术传承与行业影响力塑造 到了这个阶段,你已经在Vue技术领域积累了深厚的经验,拥有了较强的技术实力。此时,你的重点将是把自己的知识和经验传递给更多人,在行业内树立起影响力,推动整个Vue技术…...

labview中VISA串口出现异常的解决方案

前两天在做项目时发现,当用VISA串口读取指令时出现了回复异常的情况,不管发什么东西就一直乱回,针对这个情况,后面在VISA串口中加了一个VISA寄存器清零的函数。加了之后果然好多了,不会出现乱回的情况,但是…...

StableDiffusion本地部署 2

StableDiffusion本地部署 为了做这个事,这是第5篇文章了,可谓是做足了准备。开干! 强烈建议把我之前发的文章看一看,不然你会有点迷迷糊糊的。 整体思路 捋一捋思路: 下载三个东西,webui,py…...

unity学习61:UI布局layout

目录 1 布局 layout 1.1 先准备测试UI,新增这样一组 panel 和 image 1.2 新增 vertical layout 1.3 现在移动任意一个image 都会影响其他 1.3.1 对比 如果没有这个,就会是覆盖效果了 1.3.2 对比 如果没有这个,就会是覆盖效果了 1.4 总结&#xf…...

BRD4缺失通过GRP78灭活内质网应激,延缓脱氢表雄酮诱导的卵巢颗粒细胞凋亡

近日,一项由宁波大学医学院附属妇女儿童医院与同济大学附属东方医院妇产科合作的研究,揭示了BRD4(Bromodomain-containing protein 4)在PCOS中的重要作用,以及其与内质网应激(ERS)的复杂关系。值…...

Jmeter插件下载及安装

1、在Jmeter官网(Install :: JMeter-Plugins.org)下载所需插件 2、将下载的插件复制到jmeter文件下的lib/ext文件里(PS:D:\Jmeter\apache-jmeter-5.6.2\lib\ext) 3、打开Jmeter,选择 选项----Plugins Manag…...

【Swift 算法实战】判断数组中是否存在重复元素

网罗开发 (小红书、快手、视频号同名) 大家好,我是 展菲,目前在上市企业从事人工智能项目研发管理工作,平时热衷于分享各种编程领域的软硬技能知识以及前沿技术,包括iOS、前端、Harmony OS、Java、Python等…...

Spock框架:让单元测试更优雅的高效武器

📖 前言:为什么选择Spock? 在软件开发领域,单元测试是保证代码质量的基石。但传统的JUnit/TestNG测试框架在面对复杂测试场景时,往往会显得力不从心。Spock框架作为新一代测试框架的佼佼者,以其独特的BDD&…...

【前端基础】Day 4 CSS盒子模型

目录 1. 盒子模型 1.1 盒子模型布局 1.2 盒子模型组成 1.3 边框 1.4 表格细线边框 1.5 边框会影响盒子实际大小 1.6 内边距 1.7 外边距 1.8 外边距合并 1.9 清除内外边距 2. PS基本操作 3. 综合案例 3.1 案例1 3.2 案例2-快报模块 4. 圆角边框 5. 盒子阴影 6…...

补题蓝桥杯14届JavaB组第4题

算法:动态规划 需要两个一维数组来进行dp 一个用来记录到当前位置的最短时间,另一个用来记录到达当前位置传送门的最短时间 到达传送门的时间需要进行判断,如果上一次传送到达传送门,需要判断上一次传送到这的位置在当前传送门…...

kotlin的函数标准库使用

摘要说明 函数标准库常用的有: 1、apply: apply函数作为一个配置函数,可以传入一个接收者,然后调用一系列函数来配置它以方便使用,如果提供lambda给apply函数执行,它会返回配置好的接收者 使用介绍&#x…...

Visual Studio Code 跨平台安装与配置指南(附官方下载链接)

一、软件定位与核心功能 Visual Studio Code(简称VS Code)是微软开发的开源跨平台代码编辑器,支持超过50种编程语言的智能补全、调试和版本控制功能。2025版本新增AI辅助编程模块,可自动生成单元测试代码和API文档注释。 二、下载…...

STM32学习【4】ARM汇编(够用)

目录 ARM汇编语言基础写在前面 1. ARM汇编的分类2. 关于指令集指令集切换Thumb2指令集统一汇编语言(UAL)常用汇编指令 3. 汇编格式立即数与伪指令 4. 操作内存的汇编指令LDR:从内存加载数据到CPU寄存器STR:将数据从寄存器存储到内…...

Linux驱动开发实战(一):LED控制驱动详解

Linux驱动开发野火实战(一):LED控制驱动详解 文章目录 Linux驱动开发野火实战(一):LED控制驱动详解引言一、基础知识1.1 什么是字符设备驱动1.2 重要的数据结构read 函数write 函数open 函数release 函数 二…...

windows下安装pyenv+virtualenv+virtualenvwrapper

1、下载pyenv 进入git官网,打包下载zip到本地 2、解压到安装目录 解压下载好的pyenv-win-master.zip到自己的安装目录,如D:\Program Files 3、配置环境变量 右击桌面 此电脑 --> 属性 --> 高端系统设置 --> 环境变量 --> 新建系统变量…...

Cherno 游戏引擎笔记(91~111)

好久不见! 个人库的地址:(GitHub - JJJJJJJustin/Nut: The game_engine which learned from Cherno),可以看到我及时更新的结果。 -------------------------------Saving & Loading scene-----------------------…...

Python爬虫实战:研究MechanicalSoup库相关技术

一、MechanicalSoup 库概述 1.1 库简介 MechanicalSoup 是一个 Python 库,专为自动化交互网站而设计。它结合了 requests 的 HTTP 请求能力和 BeautifulSoup 的 HTML 解析能力,提供了直观的 API,让我们可以像人类用户一样浏览网页、填写表单和提交请求。 1.2 主要功能特点…...

Python|GIF 解析与构建(5):手搓截屏和帧率控制

目录 Python|GIF 解析与构建(5):手搓截屏和帧率控制 一、引言 二、技术实现:手搓截屏模块 2.1 核心原理 2.2 代码解析:ScreenshotData类 2.2.1 截图函数:capture_screen 三、技术实现&…...

JavaScript 中的 ES|QL:利用 Apache Arrow 工具

作者:来自 Elastic Jeffrey Rengifo 学习如何将 ES|QL 与 JavaScript 的 Apache Arrow 客户端工具一起使用。 想获得 Elastic 认证吗?了解下一期 Elasticsearch Engineer 培训的时间吧! Elasticsearch 拥有众多新功能,助你为自己…...

中南大学无人机智能体的全面评估!BEDI:用于评估无人机上具身智能体的综合性基准测试

作者:Mingning Guo, Mengwei Wu, Jiarun He, Shaoxian Li, Haifeng Li, Chao Tao单位:中南大学地球科学与信息物理学院论文标题:BEDI: A Comprehensive Benchmark for Evaluating Embodied Agents on UAVs论文链接:https://arxiv.…...

【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 初始化服务器)

服务端执行命令请求的过程 【专栏简介】【技术大纲】【专栏目标】【目标人群】1. Redis爱好者与社区成员2. 后端开发和系统架构师3. 计算机专业的本科生及研究生 初始化服务器1. 初始化服务器状态结构初始化RedisServer变量 2. 加载相关系统配置和用户配置参数定制化配置参数案…...

1688商品列表API与其他数据源的对接思路

将1688商品列表API与其他数据源对接时,需结合业务场景设计数据流转链路,重点关注数据格式兼容性、接口调用频率控制及数据一致性维护。以下是具体对接思路及关键技术点: 一、核心对接场景与目标 商品数据同步 场景:将1688商品信息…...

如何在看板中有效管理突发紧急任务

在看板中有效管理突发紧急任务需要:设立专门的紧急任务通道、重新调整任务优先级、保持适度的WIP(Work-in-Progress)弹性、优化任务处理流程、提高团队应对突发情况的敏捷性。其中,设立专门的紧急任务通道尤为重要,这能…...

鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院查看报告小程序

一、开发环境准备 ​​工具安装​​: 下载安装DevEco Studio 4.0(支持HarmonyOS 5)配置HarmonyOS SDK 5.0确保Node.js版本≥14 ​​项目初始化​​: ohpm init harmony/hospital-report-app 二、核心功能模块实现 1. 报告列表…...

Android第十三次面试总结(四大 组件基础)

Activity生命周期和四大启动模式详解 一、Activity 生命周期 Activity 的生命周期由一系列回调方法组成,用于管理其创建、可见性、焦点和销毁过程。以下是核心方法及其调用时机: ​onCreate()​​ ​调用时机​:Activity 首次创建时调用。​…...

处理vxe-table 表尾数据是单独一个接口,表格tableData数据更新后,需要点击两下,表尾才是正确的

修改bug思路: 分别把 tabledata 和 表尾相关数据 console.log() 发现 更新数据先后顺序不对 settimeout延迟查询表格接口 ——测试可行 升级↑:async await 等接口返回后再开始下一个接口查询 ________________________________________________________…...