在 Mac 上使用 Ollama 运行 DeepSeek-R1,并通过 Open-WebUI 提供 Web 端访问。

1. 安装 Ollama

Ollama官方:https://ollama.com/

Ollama 是一个轻量级的 AI 推理框架,支持本地运行 LLM(大型语言模型)。首先,下载并安装 Ollama。

mac原生工具brew安装ollama

$ brew install --cask ollama
Running `brew update --auto-update`...
==> Auto-updated Homebrew!
Updated 2 taps (homebrew/core and homebrew/cask).
==> New Formulae
bpmnlint gersemi i686-elf-grub kirimase org-formation rattler-index semver todoist x86_64-elf-grub
cf-terraforming globstar immich-go largetifftools ov rhai sequoia-sqv trdsql yoke
cloudfoundry-cli gotz kafkactl lazyjournal pivy rpds-py sttr typioca ytt
fortitude hishtory kapp mox punktf sdl3_ttf tml unciv
==> New Casks
candy-crisis font-winky-sans opera-air trae-cn
consul fuse-t pairpods ua-midi-control
focu macskk pareto-security veracrypt-fuse-t
font-sf-mono-nerd-font-ligaturized nvidia-nsight-compute trae You have 13 outdated formulae and 1 outdated cask installed. ==> Downloading https://github.com/ollama/ollama/releases/download/v0.5.13/Ollama-darwin.zip
==> Downloading from https://objects.githubusercontent.com/github-production-release-asset-2e65be/658928958/2dc24c17-0bc0-487a-92d1-0265efd65a14?X-Amz-Algorithm=AWS4-
############################################################################################################################################################### 100.0%
==> Installing Cask ollama
==> Moving App 'Ollama.app' to '/Applications/Ollama.app'
==> Linking Binary 'ollama' to '/opt/homebrew/bin/ollama'
ollama was successfully installed!

检查Ollama是否安装成功,成功会显示版本号,如:ollama version is 0.5.13

$ ollama --version
Warning: could not connect to a running Ollama instance
Warning: client version is 0.5.13

2. 下载模型

下载 DeepSeek-R1 模型

模型下载地址:https://ollama.ai/library/deepseek-r1

该命令会自动下载 DeepSeek-R1 1.5B 版本的模型,并存储在本地。

$  ollama pull deepseek-r1:7b
pulling manifest
pulling 96c415656d37... 100% ▕██████████████████████████████████████████████████████████████████████████████████████████████████████▏ 4.7 GB
pulling 369ca498f347... 100% ▕██████████████████████████████████████████████████████████████████████████████████████████████████████▏ 387 B
pulling 6e4c38e1172f... 100% ▕██████████████████████████████████████████████████████████████████████████████████████████████████████▏ 1.1 KB
pulling f4d24e9138dd... 100% ▕██████████████████████████████████████████████████████████████████████████████████████████████████████▏ 148 B
pulling 40fb844194b2... 100% ▕██████████████████████████████████████████████████████████████████████████████████████████████████████▏ 487 B
verifying sha256 digest
writing manifest
success

3.本地运行 DeepSeek-R1

执行后,终端会进入交互模式,可以直接输入文本与模型进行对话。

# 查看已下载的模型
$ ollama list
NAME ID SIZE MODIFIED
deepseek-r1:7b 0a8c26691023 4.7 GB 24 seconds ago
# 运行模型
$ ollama run deepseek-r1:7b
>>> Send a message (/? for help)

4.通过 Open-WebUI 运行

使用 Web 界面交互模型,可以安装 Open-WebUI。该工具提供了一个用户友好的 Web 前端,使得 DeepSeek-R1 更加易用。

克隆 Open-WebUI 仓库

$ git clone https://github.com/open-webui/open-webui.git
Cloning into 'open-webui'...
remote: Enumerating objects: 91391, done.
remote: Counting objects: 100% (131/131), done.
remote: Compressing objects: 100% (74/74), done.
remote: Total 91391 (delta 70), reused 57 (delta 57), pack-reused 91260 (from 2)
Receiving objects: 100% (91391/91391), 177.81 MiB | 3.98 MiB/s, done.
Resolving deltas: 100% (60008/60008), done.
Updating files: 100% (4575/4575), done.

启动 Open-WebUI 容器

mac安装docker,安装完成后应用程序中会有docker程序,点击即可启动

brew install --cask --appdir=/Applications docker

启动docker

docker run -d \
-p 3000:8080 \
--add-host=host.docker.internal:host-gateway \
-v open-webui:/app/backend/data \
--name open-webui \
--restart always \
ghcr.io/open-webui/open-webui:main
Unable to find image 'ghcr.io/open-webui/open-webui:main' locally
main: Pulling from open-webui/open-webui
d51c377d94da: Pull complete
987cac002684: Pull complete
076b75118273: Pull complete
157e623d2984: Pull complete
40d5353a5918: Pull complete
4f4fb700ef54: Pull complete
aebeb0b4e5d0: Pull complete
03f562834d64: Pull complete
dc0f62a912f5: Pull complete
93fdf9ebd111: Pull complete
596be9ce6130: Pull complete
07dc67f42781: Pull complete
7c2ef53b15e7: Pull complete
e5511c24fa69: Pull complete
69de4f91fd38: Pull complete
Digest: sha256:74fc3c741a5f3959c116dd5abc61e4b27d36d97dff83a247dbb4209ffde56372
Status: Downloaded newer image for ghcr.io/open-webui/open-webui:main
26b786db658d187c2b82256fcbf33102c8c10c25b1087393483272e53708908b

• -p 3000:8080:将容器的 8080 端口映射到本机 3000 端口;

• --add-host=host.docker.internal:host-gateway:允许容器访问宿主机网络;

• -v open-webui:/app/backend/data:挂载数据存储目录,保存容器的状态和数据。

• --restart always:确保容器在重启后自动运行;

• ghcr.io/open-webui/open-webui:main:拉取 Open-WebUI 的最新版本镜像。

运行容器后,访问 http://localhost:3000 即可访问 Open-WebUI。

#停止容器
docker stop open-webui
#删除容器
docker rm open-webui
#删除存储数据
docker volume rm open-webui

DeepSeek在M芯片Mac上本地化部署的更多相关文章

  1. 在Mac上关于tomcat服务器的安装、配置、启动、部署web详细流程

    之前在Mac上通过安装mamp来搭建PHP环境服务器,但是对于java来说,目前还是没有找到类似mamp这样强大的软件来构建及管理java环境服务器,所以目前也是通过命令行来进行tomcat服务器的安 ...

  2. 在Mac上使用Nginx和FastCGI部署Flask应用

    最近在学习Flask,本文介绍一下如何部署Flask开发的应用,同时也学习一下Nginx的使用,这只是在Mac上的一个实验. 应用 这里使用的应用就是官方的文档中给出的Flaskr. 安装Nginx ...

  3. MAC上搭建Jenkins + Android + IOS自动开发部署环境

    因为MAC是大小写不敏感的操作系统,很多Linux命令不支持,所以首先要创建大小写敏感的操作系统. 设置静态IP 打开"System Preferences..." 点击" ...

  4. MobSF移动安全扫描平台本地化部署与简单汉化

    在之前的文章MobSF移动安全扫描平台环境搭建与试用中,我们用docker进行了搭建,那么我们如何在本地直接搭建呢,其实也是很简单的. 本地化部署 我们在本地安装 其实是很简单的,里面有两个文件,在不 ...

  5. mac osx 上面部署Django项目 apache+mysql+mod_wsgi

    1.安装Xcode command line tools 首先,编译mysql和Homebrew需要用到Xcode command line tools,所以首先安装command line tool ...

  6. [译]在Mac上运行ASP.NET 5

    原文:http://stephenwalther.com/archive/2015/02/03/asp-net-5-and-angularjs-part-7-running-on-a-mac 这篇文章 ...

  7. 网口扫盲三:以太网芯片MAC和PHY的关系

    转载:http://www.cnblogs.com/jason-lu/articles/3195473.html   问:如何实现单片以太网微控制器? 答:诀窍是将微控制器.以太网媒体接入控制器(MA ...

  8. 在Mac上通过Sublime、Skim编辑LaTeX

    转自:http://painterlin.com/2014/08/10/Using-LaTeX-with-Sublime-and-Skim-for-Mac.html Sublime Text是一款非常 ...

  9. mac上的键盘生活——神级输入法:鼠须管

    好吧,我是今天才知道这个无敌的输入法有多么强悍,传说中的神级输入法,鼠须管~ 在这之前我都一直是用的搜狗输入法,因为以前在win下就一直都用的是搜狗输入法,怎么说,各种国产的输入法做的还是比较有良心的 ...

  10. 【翻译】在Mac上使用VSCode创建你的第一个Asp.Net Core应用

    Setting Up Your Development Environment 设置你的开发环境 To setup your development machine download and inst ...

随机推荐

  1. 架构发展趋势以及 d2js 的未来

    目前架构有几个热点方向:微服务, dubbo, Faas,还有 TiDB. 现在开发模式是前后端分离基本成为行规. 应该说以大部分企业业务量级.人员规模来说,要去和淘宝等大厂去对标是非常傻的.对大部分 ...

  2. Rocky Linux8升级9随记

    发现Rocky Linux已经升级了9.0版本,看着自己用着的8.5版本,跃跃欲试,于是就索性升级了.两者的支持年限没有太大的差别,先说我的想法:升不升级无所谓. 并不是9.0有什么特别牛的特性,只是 ...

  3. Kubernetes 服务发现 监控Endpoints

    监控 Pod之前的apiserver 实际上就是一种特殊的 Endpoints,现在我们同样来配置一个任务用来专门发现普通类型的 Endpoint,其实就是 Service 关联的 Pod 列表,由于 ...

  4. postgres

    10.67 su - app  docker pull postgres:12.15  docker run -d --name pgsql12 -p 5432:5432 -e "POSTG ...

  5. Spring源码阅读(一):使用IDEA搭建Spring5.0.x源码阅读环境

    说明 Spring源码阅读环境配置如下: Spring 5.x版本 Gradle 4.8.1 JDK8 IDEA2020.1 win10 搭建步骤 1. 下载Spring源码 下载地址:Github链 ...

  6. resttemplate的ReadTimeout和ConnectTimeout

    问题描述:今天,在做微服务开发中,A服务区调用B服务,获取数据做导出excel操作.A服务出现了"java.net.SocketTimeoutException: Read timed ou ...

  7. mac上遇到的错误sed command a expects followed by text

    上简单的替换操作 sed -i 's/apple/mac/g' full-path-file 执行后报错,"sed: 1: command a expects \ followed by t ...

  8. JVM实战—1.Java代码的运行原理

    大纲 1.Java代码到底是如何运行起来的 2.JVM类加载机制的一系列概念 3.JVM中有哪些内存区域及各自的作用 4.JVM的垃圾回收机制的作用 5.问题汇总 1.Java代码到底是如何运行起来的 ...

  9. [Symfony\Component\Process\Exception\RuntimeException] The Process class relies on proc_open, which is not available on your PHP installation.

    [Symfony\Component\Process\Exception\RuntimeException] The Process class relies on proc_open, which ...

  10. Qt/C++编写超精美自定义控件(历时9年更新迭代/超202个控件/祖传原创)

    一.前言 无论是哪一门开发框架,如果涉及到UI这块,肯定需要用到自定义控件,越复杂功能越多的项目,自定义控件的数量就越多,最开始的时候可能每个自定义控件都针对特定的应用场景,甚至里面带了特定的场景的一 ...