DeepSeek在linux下的安装部署与应用测试

ops/2025/2/22 3:05:48/

       结合上一篇文章,本篇文章主要讲述在Redhat linux环境下如何部署和使用DeepSeek大模型,主要包括ollama的安装配置、大模型的加载和应用测试。关于Open WebUI在docker的安装部署,Open WebUI官网也提供了完整的docker部署说明,大家可参考github,但对于Open WebUI前后端分离的部署没有详细说明,这需要修改一部分前后端代码,后面会陆续分享给大家。

ollama安装部署
一、ollama下载解压

下载ollama-linux-amd64.tgz,地址详见ollama官网,注意要下载低一些的版本,比如ollama-0.3.6版本。
解压:tar -zxvf ollama-linux-amd64.tgz
拷贝文件:cp ollama /usr/local/bin

二、ollama服务启动配置

创建Ollama用户:sudo useradd -r -s /bin/false -m -d /usr/share/ollama ollama
如果有该用户,就不需要创建,或者直接改为超级用户进行启动。
打开配置文件:vi /etc/systemd/system/ollama.service,修改内容如下:

[Unit]
Description=Ollama Service
After=network-online.target[Service]
ExecStart=/usr/bin/ollama serve
User=root
Group=root
Restart=always
RestartSec=3
Environment="PATH=/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin"
Environment="OLLAMA_HOST=0.0.0.0:11434" #允许外部访问
Environment="OLLAMA_MODELS=/data/olla-models" # 指定模型文件存储路径
Environment="HTTP_PROXY=http://user:pwd@ip:port" #配置访问外网的代理,如果需要才配置该选项
Environment="CUDA_VISIBLE_DEVICES=0,1" # 配置GPU,序号从01开始[Install]
WantedBy=default.target

执行如下命令进行服务启用和状态查看等
systemctl daemon-reload
systemctl enable ollama
systemctl start ollama
systemctl status ollama

三、ollama命令行启动配置

如果不使用第二步的ollama服务启动方式,也可以通过命令行启动,但部分配置需要通过用环境变量传入,如下。

export OLLAMA_MODELS=/data/Ollama/models
export OLLAMA_GPU_LAYER=cuda
export CUDA_VISIBLE_DEVICES=0  # 强制使用NVIDIA GPU 第一块

命令行启动ollama服务,如下
ollama serve

四、卸载或停止ollama服务
systemctl stop ollama
systemctl disable ollama

删除服务文件和Ollama二进制文件进行服务停止

sudo rm /etc/systemd/system/ollama.service 
sudo rm $(which ollama)

清理Ollama用户和组(如果前面没有创建,可不做):

sudo rm -r /usr/share/ollama
sudo userdel ollama
sudo groupdel ollama
DeepSeek大模型加载运行与应用测试
一、下载模型

下载并运行模型:ollama run deepseek-r1:7b
加载模型:ollama pull deepseek-r1:7b
配置代理:如果内网需要通过代理访问,请在第二步配置文件中增加代理设置。

二、删除模型

删除指定模型:ollama rm deepseek-r1:7b

三、查看已安装模型列表

查看列表:ollama list

四、利用GPU加载模型

运行命令:ollama run --gpu deepseek-r1:7b ,经测试,需要降低ollama版本,调整为ollama0.3.6即可使用gpu卡。
使用环境变量设置:
export OLLAMA_MODELS=/data/olla-models
目前生效的参数是在第二步设置的Environment变量。详见前一节的第二步。

经过前面的成功部署和运行,结合客户端应用(如Open WebUI、CherryStudio等)配置该运行服务到OLLAMA_BASE_URL,即可进行应用测试,具体如下。


http://www.ppmy.cn/ops/160406.html

相关文章

python烟花程序代码2.0

效果展示 烟花效果的关键点: 烟花发射:从地面发射出烟花并上升。 爆炸效果:烟花到达最高点后爆炸,产生不同颜色的光点。 颜色变化:爆炸产生的光点有不同的颜色和透明度变化。 粒子扩散:爆炸后的粒子向四面八方扩散,并且随着时间的推移逐渐消失。 我将首先给出一个基本的…

Docker 多阶段构建:优化镜像大小

在 Docker 中,构建镜像时,我们通常会将应用及其所有依赖打包到镜像中。然而,随着时间的推移,镜像的大小会随着依赖项和构建工具的增加而变得越来越大,这不仅增加了存储成本,还会降低容器启动速度。多阶段构…

nlp|微调大语言模型初探索(3),qlora微调deepseek记录

前言 上篇文章记录了使用lora微调llama-1b,微调成功,但是微调llama-8b显存爆炸,这次尝试使用qlora来尝试微调参数体量更大的大语言模型,看看64G显存的极限在哪里。 1.Why QLora? QLoRA 在模型加载阶段通过 4-bit 量化大幅减少了模型权重的显存占用。QLoRA 通过 反量化到 …

14、《SpringBoot+MyBatis集成(2)——进阶配置XML与注解的灵活运用》

SpringBootMyBatis集成进阶配置 - XML与注解的灵活运用 前言 在Spring Boot与MyBatis的集成开发中,开发者常面临XML映射文件与注解两种SQL定义方式的选择,以及复杂场景下的动态SQL、多数据源等进阶需求。本文将从核心配置的灵活性出发,对比X…

一周学会Flask3 Python Web开发-response响应格式

锋哥原创的Flask3 Python Web开发 Flask3视频教程: 2025版 Flask3 Python web开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili 在HTTP响应中,数据可以通过多种格式传输。大多数情况下,我们会使用HTML格式,这也是Flask中…

< OS 有关 > Ubuntu 24 SSH 服务器更换端口 in jp/us VPSs

原因: 两台 VPS 的 ssh 端口一直被密码重试, us 这台已经封了 632, jp 这台两周前清过一次 sqlite3 数据,现在赞到 1008 Fail2Ban 是使用 sqlite3 来记录,数据量大后,硬盘的 I/O 会飙升,我有写过一个 app…

IntelliJ IDEA 插件推荐篇 - 2025年

IntelliJ IDEA 开发插件推荐 IntelliJ IDEA 是许多开发者的首选集成开发环境(IDE),其强大的功能和灵活的插件生态系统使其在 Java、Kotlin 等语言开发中备受青睐。通过安装合适的插件,你可以进一步提升开发效率、优化工作流程并增…

Golang深度学习

前言 在2009年,Google公司发布了一种新的编程语言,名为Go(或称为Golang),旨在提高编程效率、简化并发编程,并提供强大的标准库支持。Go语言的设计者们希望通过Go语言能够解决软件开发中的一些长期存在的问…