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

Deepseek本地部署指南:在linux服务器部署,在mac远程web-ui访问

1. 在Linux服务器上部署DeepSeek模型

要在 Linux 上通过 Ollama 安装和使用模型,您可以按照以下步骤进行操作:

步骤 1:安装 Ollama

  1. 安装 Ollama
    使用以下命令安装 Ollama:

    curl -sSfL https://ollama.com/install.sh | sh
    
  2. 验证安装
    安装完成后,您可以通过以下命令验证 Ollama 是否安装成功:

    ollama --version
    

在这里插入图片描述

步骤 2:下载模型

ollama run deepseek-r1:32b

这将下载并启动DeepSeek R1 32B模型。
在这里插入图片描述

DeepSeek R1 蒸馏模型列表

模型名称参数量基础架构适用场景
DeepSeek-R1-Distill-Qwen-1.5B1.5BQwen2.5适合移动设备或资源受限的终端
DeepSeek-R1-Distill-Qwen-7B7BQwen2.5适合普通文本生成工具
DeepSeek-R1-Distill-Llama-8B8BLlama3.1适合小型企业日常文本处理
DeepSeek-R1-Distill-Qwen-14B14BQwen2.5适合桌面级应用
DeepSeek-R1-Distill-Qwen-32B32BQwen2.5适合专业领域知识问答系统
DeepSeek-R1-Distill-Llama-70B70BLlama3.3适合科研、学术研究等高要求场景

RTX 4090 显卡显存为 24GB,32B 模型在 4-bit 量化下约需 22GB 显存,适合该硬件。32B 模型在推理基准测试中表现优异,接近 70B 模型的推理能力,但对硬件资源需求更低。

步骤 3:运行模型

 ollama run deepseek-r1:32b

在这里插入图片描述
通过上面的步骤,已经可以直接在 Linux服务器通过命令行的形式使用Deepseek了。但是不够友好,下面介绍更方便的形式。

2. 在linux服务器配置Ollama服务

1. 设置Ollama服务配置
设置OLLAMA_HOST=0.0.0.0环境变量,这使得Ollama服务能够监听所有网络接口,从而允许远程访问。

sudo vi /etc/systemd/system/ollama.service
[Unit]
Description=Ollama Service
After=network-online.target[Service]
ExecStart=/usr/local/bin/ollama serve
User=ollama
Group=ollama
Restart=always
RestartSec=3
Environment="OLLAMA_HOST=0.0.0.0"
Environment="PATH=/usr/local/cuda/bin:/home/bytedance/miniconda3/bin:/home/bytedance/miniconda3/condabin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin"[Install]
WantedBy=default.target

2. 重新加载并重启Ollama服务

sudo systemctl daemon-reload
sudo systemctl restart ollama
  1. 验证Ollama服务是否正常运行
    运行以下命令,确保Ollama服务正在监听所有网络接口:
sudo netstat -tulpn | grep ollama

您应该看到类似以下的输出,表明Ollama服务正在监听所有网络接口(0.0.0.0):

tcp        0      0 0.0.0.0:11434           0.0.0.0:*               LISTEN      -                   ollama

4. 配置防火墙以允许远程访问

为了确保您的Linux服务器允许从外部访问Ollama服务,您需要配置防火墙以允许通过端口11434的流量。

sudo ufw allow 11434/tcp
sudo ufw reload

5. 验证防火墙规则
确保防火墙规则已正确添加,并且端口11434已开放。您可以使用以下命令检查防火墙状态:

sudo ufw status
状态: 激活至                          动作          来自
-                          --          --
22/tcp                     ALLOW       Anywhere                  
11434/tcp                  ALLOW       Anywhere                  
22/tcp (v6)                ALLOW       Anywhere (v6)             
11434/tcp (v6)             ALLOW       Anywhere (v6) 

6. 测试远程访问
在完成上述配置后,您可以通过远程设备(如Mac)测试对Ollama服务的访问。
在远程设备上测试连接:
在Mac上打开终端,运行以下命令以测试对Ollama服务的连接:

curl http://10.37.96.186:11434/api/version

显示

{"version":"0.5.7"}

测试问答

curl -X POST http://10.37.96.186:11434/api/generate \-H "Content-Type: application/json" \-d '{"model": "deepseek-r1:32b", "prompt": "你是谁?"}'

显示

{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.118616168Z","response":"\u003cthink\u003e","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.150938966Z","response":"\n\n","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.175255854Z","response":"\u003c/think\u003e","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.199509353Z","response":"\n\n","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.223657359Z","response":"您好","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.24788375Z","response":"!","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.272068174Z","response":"我是","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.296163417Z","response":"由","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.320515728Z","response":"中国的","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.344646528Z","response":"深度","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.36880216Z","response":"求","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.393006489Z","response":"索","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.417115966Z","response":"(","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.441321254Z","response":"Deep","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.465439117Z","response":"Seek","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.489619415Z","response":")","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.51381827Z","response":"公司","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.538012781Z","response":"开发","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.562186246Z","response":"的","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.586331325Z","response":"智能","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.610539651Z","response":"助手","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.634769989Z","response":"Deep","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.659134003Z","response":"Seek","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.683523205Z","response":"-R","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.70761762Z","response":"1","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.731953604Z","response":"。","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.756135462Z","response":"如","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.783480232Z","response":"您","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.807766337Z","response":"有任何","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.831964079Z","response":"任何","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.856229156Z","response":"问题","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.880487159Z","response":",","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.904710537Z","response":"我会","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.929026993Z","response":"尽","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.953239249Z","response":"我","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:15.977496819Z","response":"所能","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:16.001763128Z","response":"为您提供","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:16.026068523Z","response":"帮助","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:16.050242581Z","response":"。","done":false}
{"model":"deepseek-r1:32b","created_at":"2025-02-06T00:47:16.074454593Z","response":"","done":true,"done_reason":"stop","context":[151644,105043,100165,30,151645,151648,271,151649,198,198,111308,6313,104198,67071,105538,102217,30918,50984,9909,33464,39350,7552,73218,100013,9370,100168,110498,33464,39350,12,49,16,1773,29524,87026,110117,99885,86119,3837,105351,99739,35946,111079,113445,100364,1773],"total_duration":3872978599,"load_duration":2811407308,"prompt_eval_count":6,"prompt_eval_duration":102000000,"eval_count":40,"eval_duration":958000000}

通过上述步骤,已经成功在Linux服务器上配置了Ollama服务,并通过Mac远程访问了DeepSeek模型。接下来,将介绍如何在Mac上安装Web UI,以便更方便地与模型进行交互。

3. 在Mac上安装Web UI

为了更方便地与远程Linux服务器上的DeepSeek模型进行交互,可以在Mac上安装一个Web UI工具。这里我们推荐使用 Open Web UI,它是一个基于Web的界面,支持多种AI模型,包括Ollama。

1. 通过conda安装open-webui
打开终端,运行以下命令创建一个新的conda环境,并指定Python版本为3.11:

conda create -n open-webui-env python=3.11
conda activate open-webui-env
pip install open-webui  

2. 启动open-webui

open-webui serve

在这里插入图片描述

3. 浏览器访问

http://localhost:8080/
  1. 使用管理员身份(第一个注册用户)登录

  2. 在Open webui界面中,依次点击“展开左侧栏”(左上角三道杠)–>“头像”(左下角)–>管理员面板–>设置(上侧)–>外部连接

  3. 在外部连接的Ollama API一栏将switch开关打开,在栏中填上http://10.37.96.186:11434(这是我的服务器地址)

  4. 点击右下角“保存”按钮

  5. 点击“新对话”(左上角),确定是否正确刷出模型列表,如果正确刷出,则设置完毕。
    在这里插入图片描述

4. 愉快的使用本地deepseek模型
在这里插入图片描述

相关文章:

Deepseek本地部署指南:在linux服务器部署,在mac远程web-ui访问

1. 在Linux服务器上部署DeepSeek模型 要在 Linux 上通过 Ollama 安装和使用模型,您可以按照以下步骤进行操作: 步骤 1:安装 Ollama 安装 Ollama: 使用以下命令安装 Ollama: curl -sSfL https://ollama.com/install.s…...

基于 DeepSeek+AutoGen 的智能体协作系统

用 AutoGen 实现智能体协作流程,假设团队里的 3 个角色,让 3 个角色相互交流后并给出不同方案,最后进行总结。下面是实现的思路,欢迎一起学习交流。  一、系统设计 1. sre_engineer_01 - 问题诊断与初步解决方案 职责&#xff1a…...

博客系统笔记总结 2( Linux 相关)

Linux 基本使用和程序部署 基本命令 文件操作 显示当前目录下的文件 ls:显示当前目录下的文件 ll:以列表的形式展示,包括隐藏文件 进入目录 && 显示当前路径 cd:进入目录(后面跟相对路径或者绝对路径&…...

计算机毕业设计SpringBoot+Vue.js电影评论网站系统(源码+文档+PPT+讲解)

温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 作者简介:Java领…...

精美登录注册UI,登录页面设计模板

精美登录注册UI,登录页面设计模板 引言 在网页设计中,按钮是用户交互的重要元素之一。一个炫酷的按钮特效不仅能提升用户体验,还能为网页增添独特的视觉吸引力。今天,我们将通过CSS和JavaScript来实现一个“精美登录注册UI,登录页面设计模板”。该素材呈现了数据符号排版…...

《Linux系统编程篇》共享内存(Linux 进程间通信(IPC))——基础篇

文章目录 引言什么是共享内存System V 共享内存 API 引入1. shmget2. shmat3. shmdt4. shmctl5. 结构体 shmid_ds 开始实操注意 结束 今天的你有没有前进一小步呢 ——家驹(StrangeHead) 引言 那么共享内存,我们如何去使用他呢,先来听笔者啰嗦一段话吧…...

【EB-03】 AUTOSAR builder与EB RTE集成

AUTOSAR builder与EB RTE集成 1. Import Arxml files to Tresos2. Run MultiTask Script3. Add Components3.1 Run EcuExtractCreator Script4. Mapping Component to Partitions5. Event Mapping/Runnables Mapping to Tasks6. Port Connect7. Run SvcAs_Trigger Script8. Ver…...

HTML——前端基础1

目录 前端概述 前端能做的事情​编辑 两步完成一个网页程序 前端工具的选择与安装 HTML HTML5介绍 HTML5的DOCTYPE声明 HTML基本骨架 文字标签 标题之标签 标签之段落、换行、水平线 标签之图片 标签之超文本链接 标签之文本 列表标签之有序列表 列表标签之无序…...

AI回答:Linux C/C++编程学习路线

Linux C/C编程学习路线需要结合Linux系统特性和C/C语言的特点,以下是一个系统化的学习路径,适合从初学者到进阶者: 第一阶段:Linux基础 Linux操作系统基础 学习Linux基本命令:ls、cd、mkdir、rm、grep、find等。 理解…...

螺旋数字矩阵

螺旋数字矩阵 真题目录: 点击去查看 E 卷 100分题型 题目描述 疫情期间,小明隔离在家,百无聊赖,在纸上写数字玩。他发明了一种写法: 给出数字个数n和行数m(0 < n ≤ 999,0 < m ≤ 999),从左上角的1开始,按照顺时针螺旋向内写方式,依次写出2,3…n,最终形成一…...

Jupyter Notebook切换虚拟环境(Kernel管理)

我们在使用Jupyter Notebook的时候&#xff0c;打开文件发现只有一个Python3(ipykernel)&#xff0c;我们自己在conda中创建的虚拟环境为什么没有显示出来&#xff0c;今天我就来和大家一起讨论一下&#xff01; 在 Jupyter Notebook 中&#xff0c;kernel 是执行代码的核心。管…...

linux下软件安装、查找、卸载

目录 常见安装方式有三种&#xff1a; 1.源码安装。 2.rpm安装方式。 3.yum/apt工具级别安装。 对于前两种安装方式&#xff0c;因为软件可能有依赖关系&#xff08;安装的软件依赖于某些库&#xff0c;而这些库又依赖于某些库&#xff0c;这些都需要手动安装&#xff09;…...

vuetify项目添加代理跨域请求

vuetify项目添加代理转发后端接口实现跨域请求 配置一&#xff08;推荐&#xff09;配置二 在项目根目录下找到vite.config.mts文件并在里面的server下配置代理&#xff0c; 具体实现代码如下&#xff1a; 配置一&#xff08;推荐&#xff09; server: {port: 3000,// 配置代理…...

H5 火柴人科目三和GitHub获取仓库点星星的用户列表发生了艺术的碰撞

先看效果&#xff0c;代码写的比较乱&#xff0c;有待优化 效果 https://linyisonger.github.io/H5.Examples/?name./089.%E7%9C%8B%E6%98%9F%E6%98%9F%E7%9A%84%E8%88%9E%E8%80%85.html 思路 看起来很简单&#xff0c;实则也不是很难&#xff0c;就是需要思路要打开。 一…...

【Azure 架构师学习笔记】- Azure Databricks (12) -- Medallion Architecture简介

本文属于【Azure 架构师学习笔记】系列。 本文属于【Azure Databricks】系列。 接上文 【Azure 架构师学习笔记】- Azure Databricks (11) – UC搭建 前言 使用ADB 或者数据湖&#xff0c;基本上绕不开一个架构“Medallion”&#xff0c; 它使得数据管理更为简单有效。ADB 通过…...

基础知识|原型在什么时候用和类的区别

在 JavaScript 中&#xff0c;原型和类是两个密切相关但有所不同的概念。理解这两者之间的差异有助于更好地掌握面向对象编程&#xff08;OOP&#xff09;在 JavaScript 中的实现。 1. 原型&#xff08;Prototype&#xff09; 原型是 JavaScript 中实现继承和共享行为的核心机…...

【FFmpeg】拉流

概述 项目实践中涉及到使用ffmpeg进行推流和拉流操作&#xff0c;本文主要对一些基本操作做一个学习总结&#xff0c;后续再学习其源码架构&#xff1b;总结方法遵循实现功能配合函数具体实现 基本使用 拉流 avformat_network_init();//日志输出等级set_ffmpeg_log_level();…...

LangChain构建行业知识库实践:从架构设计到生产部署全指南

文章目录 引言:行业知识库的进化挑战一、系统架构设计1.1 核心组件拓扑1.2 模块化设计原则二、关键技术实现2.1 文档预处理流水线2.2 混合检索增强三、领域适配优化3.1 医学知识图谱融合3.2 检索结果重排序算法四、生产环境部署4.1 性能优化方案4.2 安全防护体系五、评估与调优…...

解决jupyter notebook不是内部或外部命令问题

我们打开cmd有的时候&#xff0c;输入jupyter notebook&#xff0c;发现会提示jupyter 不是内部或外部命令&#xff0c;也不是可运行的程序或批处理文件。遇到这个问题我们应该怎么解决呢? 没错就是添加环境变量&#xff01; Step01&#xff1a;在电脑中找到jupyter notebook的…...

MySQL----case的用法

在 MySQL 中&#xff0c;CASE 表达式是一个用于条件判断的功能&#xff0c;可以根据不同的条件返回不同的结果。CASE 表达式通常用于 SELECT 查询语句中&#xff0c;可以在 SQL 中灵活地进行条件判断和数据转换。CASE 有两种基本的语法形式&#xff1a; 简单 CASE 表达式&…...

后进先出(LIFO)详解

LIFO 是 Last In, First Out 的缩写&#xff0c;中文译为后进先出。这是一种数据结构的工作原则&#xff0c;类似于一摞盘子或一叠书本&#xff1a; 最后放进去的元素最先出来 -想象往筒状容器里放盘子&#xff1a; &#xff08;1&#xff09;你放进的最后一个盘子&#xff08…...

SkyWalking 10.2.0 SWCK 配置过程

SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外&#xff0c;K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案&#xff0c;全安装在K8S群集中。 具体可参…...

【JavaEE】-- HTTP

1. HTTP是什么&#xff1f; HTTP&#xff08;全称为"超文本传输协议"&#xff09;是一种应用非常广泛的应用层协议&#xff0c;HTTP是基于TCP协议的一种应用层协议。 应用层协议&#xff1a;是计算机网络协议栈中最高层的协议&#xff0c;它定义了运行在不同主机上…...

【入坑系列】TiDB 强制索引在不同库下不生效问题

文章目录 背景SQL 优化情况线上SQL运行情况分析怀疑1:执行计划绑定问题?尝试:SHOW WARNINGS 查看警告探索 TiDB 的 USE_INDEX 写法Hint 不生效问题排查解决参考背景 项目中使用 TiDB 数据库,并对 SQL 进行优化了,添加了强制索引。 UAT 环境已经生效,但 PROD 环境强制索…...

服务器硬防的应用场景都有哪些?

服务器硬防是指一种通过硬件设备层面的安全措施来防御服务器系统受到网络攻击的方式&#xff0c;避免服务器受到各种恶意攻击和网络威胁&#xff0c;那么&#xff0c;服务器硬防通常都会应用在哪些场景当中呢&#xff1f; 硬防服务器中一般会配备入侵检测系统和预防系统&#x…...

Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具

文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...

NFT模式:数字资产确权与链游经济系统构建

NFT模式&#xff1a;数字资产确权与链游经济系统构建 ——从技术架构到可持续生态的范式革命 一、确权技术革新&#xff1a;构建可信数字资产基石 1. 区块链底层架构的进化 跨链互操作协议&#xff1a;基于LayerZero协议实现以太坊、Solana等公链资产互通&#xff0c;通过零知…...

[Java恶补day16] 238.除自身以外数组的乘积

给你一个整数数组 nums&#xff0c;返回 数组 answer &#xff0c;其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法&#xff0c;且在 O(n) 时间复杂度…...

什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南

文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/55aefaea8a9f477e86d065227851fe3d.pn…...

【HarmonyOS 5 开发速记】如何获取用户信息(头像/昵称/手机号)

1.获取 authorizationCode&#xff1a; 2.利用 authorizationCode 获取 accessToken&#xff1a;文档中心 3.获取手机&#xff1a;文档中心 4.获取昵称头像&#xff1a;文档中心 首先创建 request 若要获取手机号&#xff0c;scope必填 phone&#xff0c;permissions 必填 …...