Linux部署DeepSeek r1 模型训练

之前写过一篇windows下部署deepseekR1的文章,有小伙伴反馈提供一篇linux下部署DeepSeek r1 模型训练教程,在 Linux 环境下,我找了足够的相关资料,花费了一些时间,我成功部署了 DeepSeek R1 模型训练任务,结合了 Ollama、DeepSeekR1 和 RAGFlow 三大工具,实现了高效的模型训练与推理。

小贴士:AI学习资料pdf文档下载 点击下载AI学习资料

一、安装ollama ⼯具

介绍

Ollama是一个开源软件,主要用于在本地电脑设备上下载、部署和使用大模型(LLM)。它提供了丰富的LLM库,如llama、qwen、mistral以及DeepSeek R1等,并且支持不同参数规模的模型,以适配不同性能的电脑设备‌。Ollama虽然支持直接使用LLM,但仅能在命令行中进行对话,交互功能有限,因此需要配合其他工具使用‌。通俗理解为用于方便本地部署大模型使用的工具,实现离线使用和数据得到安全保护。

安装

# curl下载ollama⼆进制⽂件
$ sudo curl -L https://ollama.com/download/ollama-linux-amd64 -o /usr/bin/ol
lama
$ sudo chmod +x /usr/bin/ollama
# github下载:https://github.com/ollama/ollama/
$ tar -zxvf ollama-linux-amd64.tgz -C /usr
$ ollama --help
$ ollama --version

在这里插入图片描述
在这里插入图片描述
或者直接下载脚本安装

$ curl -fsSL https://ollama.com/install.sh | sh

在这里插入图片描述

在Service中增加下⾯两⾏

$ vi /etc/systemd/system/ollama.service
Environment="OLLAMA_HOST=0.0.0.0"
Environment="OLLAMA_ORIGINS=*"

然后重启ollama服务

$ systemctl daemon-reload
$ systemctl restart ollama
验证服务是否开启,11434是核⼼端⼝,必须开启。
netstat -nultp |grep 11434

在这里插入图片描述
输入自己本地电脑的IP+11434端口访问
在这里插入图片描述
第⼆步:将Ollama添加为启动服务

sudo useradd -r -s /bin/false -m -d /usr/share/ollama ollama

写⼀个启动脚本

$ sudo vim /etc/systemd/system/ollama.service
[Unit]
Description=Ollama Service
After=network-online.target
[Service]
ExecStart=/usr/bin/ollama serve
User=ollama
Group=ollama
Restart=always
RestartSec=3
[Install]
WantedBy=default.target

$ chmod +x /etc/systemd/system/ollama.service

ollama.service配置⽂件中注意事项:
ollama默认只⽀持localhost访问,如果想要开放外⽹访问,可以在[service]下⾯添加⼀个环境变量

[Service]
Environment="OLLAMA_HOST=0.0.0.0:11434"

默认情况下,通过ollama部署的⼤模型是阻塞的,为了提⾼⼤模型的并发性,
可以通过添加OLLAMA_NUM_PARALLEL来配置同时并发的数量

[Service]
Environment="OLLAMA_NUM_PARALLEL=4"

4表示同时运⾏4个并发线程数,默认情况下,ollama会默认保持5分钟的活跃状态,超过五分钟没有操作,
服务会⾃动退出,为了避免在调⽤⼤模型服务时的冷启动,可以通过环境变量
OLLAMA_KEEP_ALIVE来设置活跃状态的时间

[Service]
Environment="OLLAMA_KEEP_ALIVE=-1"
# -1表示⼀直处于连接状态。

第四步:启动服务

$ sudo systemctl daemon-reload
$ sudo systemctl enable ollama

注意:每次修改配置⽂件后,需要关停ollama服务,重启后才⽣效.
关停命令

$ sudo systemctl stop ollama

启动:

 $ sudo systemctl start ollama

安装 deepseek R1

# deepseek 版本信息查看此地址 https://ollama.com/library/deepseek-r1
$ ollama run deepseek-r1:14b

在这里插入图片描述

二、部署⼀个客户端⼯具

下面客户端选择任意一个客户端安装

安装配置 Cherry Studio

介绍

Cherry Studio 是一个用于创建和部署桌面应用程序的开发框架,特别适用于开发跨平台应用。它通过提供简洁易用的工具和可视化界面,使开发者能够以较少的代码量快速构建具有高性能和美观界面的应用程序。Cherry Studio 结合了强大的图形界面设计功能和模块化架构,允许开发者灵活地定制界面布局和交互逻辑。

该框架支持多种主流操作系统,如 Windows、macOS 和 Linux,使得开发者能够创建具有广泛兼容性的桌面应用。此外,Cherry Studio 提供了丰富的插件和扩展功能,支持自定义组件、第三方库的集成,以及与后端服务的连接。其目标是简化开发流程,提升应用开发的效率,尤其适合那些希望快速构建用户友好的桌面应用的开发者。通过 Cherry Studio,开发者能够更轻松地专注于应用逻辑的实现,而无需过多关心平台兼容性和底层细节。

安装

下载linux 安装包 下载官⽹:https://cherry-ai.com/
在这里插入图片描述
双击exe文件安装完成,从设置⾥⾯找到模型服务, ollama 的模型为 deepseek-r1
在这里插入图片描述
设置默认模型
在这里插入图片描述
打开一个聊天窗口进行测试
在这里插入图片描述

安装配置chatbox 客户端

介绍

Chatbox 是一种基于聊天界面的应用程序或工具,旨在通过自动化的方式与用户进行互动,通常用于客户支持、信息查询或作为智能助手。它可以通过文本、语音或其他多种形式与用户进行交流。Chatbox 通常结合自然语言处理(NLP)技术,使得它能够理解和生成自然语言,从而提供智能响应。现代的聊天框架如 ChatGPT 或 Dialogflow 使得 Chatbox 更加灵活和强大,可以实现复杂的对话流程和多轮对话。

Chatbox 的应用场景非常广泛,涵盖了电子商务、在线教育、客户服务、健康咨询等领域。它能够提供即时响应,帮助企业提升客户体验并减少人工客服压力。同时,Chatbox 也能通过不断学习和优化,逐步提高对话质量,提供更贴近用户需求的服务。随着技术的进步,Chatbox 正变得越来越智能,能够处理更为复杂的问题,并在多个平台上无缝集成,满足不同用户的需求。

安装

下载linux chatbox安装包⽂件,地址: https://chatboxai.app/zh
在这里插入图片描述
配置ollama 模型地址,本机电脑IP+11434端口,选择deepseek你的模型
在这里插入图片描述
新建对话,按照图中的配置选择模型
在这里插入图片描述
保存就可以测试对话了
在这里插入图片描述

安装配置Open-WebUI

介绍

Open-WebUI 是一个开源项目,旨在提供一个易于使用、可定制的Web界面,用于与各种AI和机器学习模型进行交互。该项目的目标是让用户能够通过直观的图形界面,轻松管理和运行复杂的机器学习任务,而无需深入编写代码。Open-WebUI 支持多个主流的AI模型,包括文本生成、图像生成、翻译、语音识别等,允许用户通过简单的操作配置和调用这些模型。

其特点包括高度的可扩展性,支持插件化架构,可以根据需求扩展新功能;界面简洁且响应式,适应不同设备的屏幕;并且提供了集成的日志系统和任务管理工具,帮助用户更好地监控和管理后台运行的模型任务。通过 Open-WebUI,开发者和研究人员可以快速搭建自己的AI应用,提升开发效率并降低入门门槛。该项目的开源性质也促进了社区的活跃参与,使其能够不断得到改进和优化。

安装

使⽤docker ⽅式安装客户端⼯具

$ docker pull ghcr.mirrorify.net/open-webui/open-webui:main
$ docker run -d -p 3000:8080 -e OLLAMA_BASE_URL=http://10.1.192.54:11434 --privileged=true -v open-webui:/app/backend/data --name open-webui --restart always ghcr.mirrorify.net/open-webui/open-webui:main

在这里插入图片描述
打开open-webui界面,自己电脑的ip地址+3000端口
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
首次打开需要注册登录,按提示注册就好,然后登录进去开始对话

在这里插入图片描述

三、RAGFlow的安装和部署

介绍

RAGFlow 是一个开源的框架,旨在简化和优化信息检索与生成的工作流程。它基于检索增强生成(RAG,Retrieval-Augmented Generation)的思想,将信息检索与文本生成结合起来,以提高生成模型的准确性和效率。RAGFlow 通过引入外部数据源(如知识库或文档库),在生成过程中动态地获取相关信息,弥补传统生成模型仅依赖训练数据的局限性。

该框架的核心优势在于它的灵活性与扩展性,可以与现有的语言模型(如 GPT、BERT 等)结合使用,支持多种自定义配置与优化策略,适应不同的业务需求。RAGFlow 的设计理念是简化复杂的工作流程,让开发者能够高效构建基于检索增强生成的应用场景,如问答系统、内容生成、数据分析等。它的开放性和模块化架构使得其在不同领域的适用性更强。

安装

部署的环境前置条件
CPU >= 4 核
内存 >= 16 GB
硬盘 >= 50 GB
Docker版本 >= 24.0.0 & Docker Compose >= v2.26.1

1.安装

# 克隆仓库
$ git clone https://github.com/infiniflow/ragflow.git
$ cd ragflow-main/docker/

# 如果你遇到 Docker 镜像拉不下来的问题,可以在 #docker/.env ⽂件内根据变量
# RAGFLOW_IMAGE 的注释提示选择华为云或者阿⾥云的相应镜像。
# 华为云镜像名:swr.cn-north-4.myhuaweicloud.com/infiniflow/ragflow
# 阿⾥云镜像名:registry.cn-hangzhou.aliyuncs.com/infiniflow/ragflow
$ vim .env

RAGFLOW_IMAGE=registry.cn-hangzhou.aliyuncs.com/infiniflow/ragflow:v0.16.0

# 构建:
$ docker compose -f docker-compose.yml up -d

在这里插入图片描述

在这里插入图片描述

查看容器服务运行状态

$ docker ps -a

在这里插入图片描述

查看服务日志

docker logs -f ragflow-server

在这里插入图片描述

访问RAGFlow界面,http://本地电脑ip

我这里地址是:http://192.168.2.36
在这里插入图片描述

注册一个账号,按照提示操作即可
在这里插入图片描述

添加自己的deepseek模型(自己电脑ip+11434端口)

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

设置系统模型

在这里插入图片描述
新建知识库
在这里插入图片描述
新增文件,代表数据源,对数据进行训练,提供AI使用
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
点击解析一下,进行解析文件里面的内容数据,让AI学习
在这里插入图片描述
解析成功
在这里插入图片描述
在这里插入图片描述
点击聊天功能—》新建助理
在这里插入图片描述
在这里插入图片描述
根据文档存在的内容提问,你会发现AI会根据你上传文档的数据,给出你要的答案。
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

使用pyCharm创建Django项目

使用pyCharm创建Django项目 1. 创建Django项目虚拟环境(最新版版本的Django) 使用pyCharm的创建项目功能,选择Django,直接创建。 2. 创建Django项目虚拟环境(安装特定版本) 2.1创建一个基础的python项目 2.2 安装指定版本的D…

基于vue3实现的课堂点名程序

设计思路 采用vue3实现的课堂点名程序&#xff0c;模拟课堂座位布局&#xff0c;点击开始点名按钮后&#xff0c;一朵鲜花在座位间传递&#xff0c;直到点击结束点名按钮&#xff0c;鲜花停留的座位被点名。 课堂点名 座位组件 seat.vue <script setup>//组合式APIimpo…

Springboot 中如何使用Sentinel

在 Spring Boot 中使用 Sentinel 非常方便&#xff0c;Spring Cloud Alibaba 提供了 spring-cloud-starter-alibaba-sentinel 组件&#xff0c;可以快速将 Sentinel 集成到你的 Spring Boot 应用中&#xff0c;并利用其强大的流量控制和容错能力。 下面是一个详细的步骤指南 …

IoTDB 导入数据时提示内存不足如何处理

问题现象 IoTDB 导入数据时提示内存不足&#xff0c;该如何处理&#xff1f; 解决方案 数据导入脚本会在触发内存不足的时候主动进行重试。当遇到此问题时&#xff0c;用户不用做任何操作&#xff0c;脚本也可以正确进行处理。如果想从根源减少此类提示&#xff0c;可以按照下…

计算机视觉中图像的基础认知

一、图像/视频的基本属性 在计算机视觉中&#xff0c;图像和视频的本质是多维数值矩阵。图像或视频数据的一些基本属性。 宽度&#xff08;W&#xff09; 和 高度&#xff08;H&#xff09; 定义了图像的像素分辨率&#xff0c;单位通常是像素。例如&#xff0c;一张 1920x10…

【React】组件通信

组件通信 父传子 - props function Article(props) {return (<div><h2>{props.title}</h2><p>{props.content}</p><p>状态&#xff1a; {props.active ? 显示 : 隐藏}</p></div>) } // 设置默认值方式一 // 使用 defaultPr…

Tomcat添加到Windows系统服务中,服务名称带空格

要将Tomcat添加到Windows系统服务中&#xff0c;可以通过Tomcat安装目录中“\bin\service.bat”来完成&#xff0c;如果目录中没有service.bat&#xff0c;则需要使用其它方法。 打到CMD命令行窗口&#xff0c;通过cd命令跳转到Tomcat安装目录的“\bin\”目录&#xff0c;然后执…

基于Python深度学习的【蘑菇识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能

一、介绍 蘑菇识别系统&#xff0c;本系统使用Python作为主要开发语言&#xff0c;基于TensorFlow搭建卷积神经网络算法&#xff0c;并收集了9种常见的蘑菇种类数据集【“香菇&#xff08;Agaricus&#xff09;”, “毒鹅膏菌&#xff08;Amanita&#xff09;”, “牛肝菌&…

124 巨坑uni-app踩坑事件 uniCloud本地调试服务启动失败

1.事情是这样的 事情是这样的&#xff0c;我上午在运行项目的时候还是好好的&#xff0c;我什么都没干&#xff0c;没动代码&#xff0c;没更新&#xff0c;就啥也没干&#xff0c;代码我也还原成好好的之前的样子&#xff0c;就报这个错&#xff0c;但是我之前没用过这个服务呀…

Android Studio “Sync project with Gradle Files”按钮消失——文件层级打开不对

问题出现的背景 Android Studio显示&#xff0c;后来查找解决方案&#xff0c;里面提到“Sync project with Gradle Files”按钮&#xff0c;一检查发现自己的软件上面没有这个选项&#xff0c;于是参考 https://debugah.com/android-studio-can-not-find-sync-project-with-g…

什么是HTTP Error 429以及如何修复

为了有效管理服务器资源并确保所有用户都可以访问&#xff0c;主机提供商一般都会对主机的请求发送速度上做限制&#xff0c;一旦用户在规定时间内向服务器发送的请求超过了允许的限额&#xff0c;就可能会出现429错误。 例如&#xff0c;一个API允许每个用户每小时发送100个请…

LAWS是典型的人机环境系统

致命性自主武器系统&#xff08;Lethal Autonomous Weapons Systems&#xff0c;LAWS&#xff09;是一种典型的人机环境系统&#xff0c;它通过高度集成的传感器、算法和武器平台&#xff0c;在复杂的战场环境中自主执行任务。LAWS能够自主感知环境、识别目标、做出决策并实施攻…

IC-Portrait:打造逼真个性化肖像的新纪元!

在数字内容创作、虚拟形象、游戏和增强现实等领域&#xff0c;肖像生成已成为计算机图形学研究的热点。尽管近年来肖像生成模型取得了显著进展&#xff0c;能够生成越来越逼真和吸引人的肖像&#xff0c;但仍面临诸多挑战。 今天&#xff0c;给大家介绍一种个性化肖像生成框架I…

ubuntu服务器部署

关闭欢迎消息 服务器安装好 ubuntu 系统后&#xff0c;进行终端登录&#xff0c;会显示出很多的欢迎消息 通过在用户的根目录下执行 touch .hushlogin 命令&#xff0c;再次登录终端就不会出现欢迎消息 修改hostname显示 修改 /etc/hostname 文件内容为主机名&#xff0c;保…

【第3章:卷积神经网络(CNN)——3.5 CIFAR-10图像分类】

嘿,小伙伴们,今天咱们来聊聊一个超级酷炫的话题——卷积神经网络(CNN)及其在CIFAR-10图像分类中的应用。这不仅仅是一个技术话题,更是一场探索人工智能奥秘的旅程。准备好了吗?咱们这就发车! 一、CNN:人工智能的“千里眼” 首先,咱们得知道CNN是啥。CNN,全名Convol…

腿足机器人之二- 运动控制概览

腿足机器人之二运动控制概览 高层运动规划MPCRL 中层逆运动学和逆动力学底层执行器控制传感器校正 上一篇博客是腿足机器人的骨架和关节的机械和电气组件&#xff0c;关节不仅需要通过机械设计实现复杂的运动能力&#xff0c;还必须通过电子组件和控制系统来精确控制这些运动。…

无人机信号调制技术原理

一、调制技术的必要性 频谱搬移&#xff1a;将低频的基带信号搬移到高频的载波上&#xff0c;便于天线辐射和传播。 信道复用&#xff1a; 利用不同的载波频率或调制方式&#xff0c;实现多路信号同时传输&#xff0c;提高信道利用率。 抗干扰&#xff1a; 通过选择合适的调…

Python 闭包与装饰器

前言&#xff1a;之前讲完了面向对象的三大特征&#xff0c;这篇讲解的是闭包与装饰器&#xff08;作用域&#xff0c;nonlocal关键字&#xff0c;global关键字&#xff09; 闭包 定义 闭包是指有权访问另一个函数作用域中变量的函数。简单来说&#xff0c;即使该函数已经执行…

【Flink快速入门-4.流处理之基于 Key 的算子】

流处理之基于 Key 的算子 实验介绍 在 SQL 中我们经常会用到分组&#xff08;group by&#xff09;操作&#xff0c;在 group 关键词之后指定要聚合的键&#xff0c;在 group 之前指定要聚合的逻辑&#xff08;计数、求和、求最大值等&#xff09;&#xff0c;通过分区键将数…

sib报错:com.*.xctrunner is not in your device!

1、问题描述 在使用sonic集成IOS设备的时候,我们需要通过sonic-agent服务去识别IOS设备。但是在识别的时候提示如下问题: 本质就是在你这个设备中找不到这个设备也就是找不到WebDriverAgentRunner,但是确实安装了,甚至appium可以正常的调用。 或执行如下命令的时候报错:…