LLaMA-Factory私有化部署--云服务器版

LLaMA-Factory是一款比较流行的大语言模型微调框架。本文主要记录在阿里云人工智能平台PAI的DSW实例中部署LLaMA-Factory的过程,主要参考的教程是B站视频LLaMA-Factory私有化部署。

LLaMA-Factory的私有化部署与部署大模型的过程大体相同,都包括创建Python虚拟环境、下载项目文件及安装所需的依赖包,但在部署LLaMA-Factory时不需要再安装模型权重文件。
img.cn/direct/d66ef3cf5b2147ff9b1a96e3cd79c6d7.png)

部署前提:了解LLaMA-Factory私有化部署对软硬件的要求(在进行部署之前,一定要在Github上查看项目文件,以了解其软硬件版本要求)
在这里插入图片描述

step1: 安装NVIDIA显卡驱动

一般云服务器上已经安装好了显卡驱动,只需使用下面的代码进行确认显卡驱动安装情况

nvidia-smi

step2: 安装Anaconda

我使用conda --version没有查看到conda的信息,应该是DSW实例中没有进行预先安装。采用下面的命令进行安装:

# 下载安装包
wget https://repo.anaconda.com/archive/Anaconda3-2023.09-0-Linux-x86_64.sh
# 执行安装命令
bash Anaconda3-2023.09.0-Linux-x86_64.sh

默认的安装路径是/root/anaconda3。

安装完成后,采用下面的命令修改bashrc文件以配置环境变量。

vi ~/.bashrc

按 i 进入编辑模式,在bashrc文件低端添加下面的代码

# 末尾添加anaconda3所在路径
export PATH=/root/anaconda3/bin:$PATH
# 修改终端的默认 python 为 anaconda,否则会报错找不到命令activate
source /root/anaconda3/bin/activate

添加完成后,按Esc键退出编辑模式,然后输入:wq保存、退出。再在命令行使用以下代码令环境变量的修改立即生效。

source ~/.bashrc

step3: 使用Conda创建LLaMA-Factory的Python虚拟环境

需要记住的是一个项目对应一个虚拟环境。

# 创建虚拟环境
conda create --name llama_factory python==3.11
# 激活,进入虚拟环境
conda activate llama_factory

step4: 根据CUDA版本安装pytorch

使用下面的代码进行Pytorch的安装

#根据自己电脑显卡的CUDA版本要求,在Pytorch官网中找到适合自己的Pytorch
conda install pytorch==2.2.0 torchvision==0.17.0 torchaudio==2.2.0 pytorch-cuda=12.1 -c pytorch -c nvidia

安装完成后进入Python编辑器,检查GPU及Pytorch是否安装成功。

python
import torch
print(torch.cuda.is_available())
#如果输出为True,则安装成功

step5: 下载LLaMA-Factory项目文件

也可以在github中下载.zip文件,然后上传至云服务器进行解压、安装。

这里使用git安装。

#先安装git软件部
sudo apt install git
#通过git clone将项目文件下载至本地
git clone https://github.com/hiyouga/LLaMA-Factory.git

step6: 更新pip

建议在执行项目的依赖安装之前升级pip的版本,如果使用的是旧版本的pip,可能无法安装一些最新的包,或者可能无法正确解析依赖关系。

python -m pip install --upgrade pip

step7: 使用pip安装LLaMA-Factory项目代码运行的项目依赖

LLaMA-Factory的requirements.txt文件包含了项目运行所需的所有Python包及其精确版本,可使用pip一次性安装所有依赖。

# 进入LLaMA-Factory文件夹
cd LLaMA-Factory
# 安装requirements.txt
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/

如此,便完成了私有化部署。

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

AI画笔,你的创意伙伴:6款最佳AI绘画工具推荐

在这个无限可能的时代,一个优秀的人工智能绘画软件不仅可以打破传统绘画方法的束缚,而且可以让每个热爱艺术的人都体验到创作的乐趣。那么,什么样的人工智能绘画软件才是优秀的呢?什么样的人工智能绘画软件才能生成超逼真的AI绘画…

Java面试八股之Spring如何解决循环依赖

Spring如何解决循环依赖 在Spring框架中,循环依赖问题通常发生在两个或多个Bean相互依赖的情况下。Spring为了解决循环依赖问题,采用了不同的策略,这些策略主要取决于Bean的作用域以及依赖注入的方式。下面是一些关键点: 单例Be…

项目实战_表白墙(简易版)

你能学到什么 一个比较简单的项目:表白墙(简易版),浏览器:谷歌升级版将在下个博客发布 效果如下 正文 说明 我们是从0开始一步一步做这个项目的,里面的各种问题,我也会以第一人称视角来解…

android13 第三方桌面不能使用后台历史任务问题 任务键功能失效问题

总纲 android13 rom 开发总纲说明 目录 1.前言 2.复现现象 3.问题分析 4.解决方法 5.编译运行 6.彩蛋 1.前言 随着Android 13操作系统的发布,用户现在可以更加自由地选择和使用第三方Launcher来定制自己的设备。本文将介绍在Android 13上安装和使用第三方Launcher导致…

KubeSphere部署:(三)MySQL安装

MySQL没有什么特殊的,这里记录一下部署过程(本文示例中安装的版本为5.7.29)。步骤大致如下: 拉取docker镜像 -> 标记并推送至私有harbor -> 创建有状态负载 -> 创建服务 一、拉取镜像,并推送至私有harbor # 拉取镜像 docker pull …

ant-design-vue 中 table行 点击事件

在使用 AntDesign 过程中&#xff0c;需求单击表格选中。设置table的customRow属性 设置之后&#xff0c;虽说官方文档也有详细介绍如何实现该功能。但是没看太懂&#xff0c;百度后解决 <a-table:columnscolumns:data-sourcetableDatachangehandleTableChange:customRowrow…

MySQL的跳跃式索引

Skip Index Scan&#xff08;跳跃式索引&#xff09; 例如初中有个学生表&#xff0c;年级、班级、学号 符合索引。 -- 问题是下面这个查询为什么也可以用到索引。 select * from 初中学生表 where 班级 1 and 学号 001-- 思考一下这个查询比全表扫描快吗&#xff1f; sele…

Springcloud物流配送后台-计算机毕业设计源码69809

目 录 摘要 1 绪论 1.1 选题背景与意义 1.2国内外研究现状 1.3论文结构与章节安排 2 物流配送后台系统分析 2.1 可行性分析 2.1.1 技术可行性分析 2.1.2 经济可行性分析 2.1.3 操作可行性分析 2.2 系统流程分析 2.2.1数据增加流程 2.2.2 数据修改流程 2.2.3 数据…

find 命令必知必会,附常用精彩案例分享,收藏备用

find, 顾名思义“查找”的作用&#xff0c;作为 IT 民工&#xff0c;对于基本的 Linux 命令还是要有所掌握的&#xff0c;今天刚好用到了 find , 顺手整理一下个人常用的操作&#xff0c;以备忘&#xff0c;更全面的资料或案例大家可以自行搜索或者查阅 man find. 或者通过下面…

如何将本地代码上传到github

将本地文件上传到GitHub仓库的过程通常包括以下几个步骤&#xff1a; 一 创建GitHub仓库&#xff1a; 如果你还没有一个GitHub仓库&#xff0c;首先需要在GitHub上创建一个新的仓库。登录到你的GitHub账户&#xff0c;然后点击“New repository”按钮&#xff0c;填写仓库的相关…

流动的智慧:开创集成资产管理新局面 ——华为云ROMA Connect资产中心

ROMA Connect资产中心&#xff1a;开放生态下的轻量化集成资产管理 企业不断扩大数字化建设&#xff0c;使得相应的资产在数量和形态以及复杂度上呈指数型提升。如此丰富的高价值数据资源如何规范化管理、整合利用&#xff1f;这是很多企业反馈遇到的难题。 ROMA Connect资产…

MySQL---JDBC

一、JDBC是什么&#xff1f; JDBC(Java Database Connectivity):是Java访问数据库的解决方案。 JDBC定义了一套标准的接口&#xff0c;即访问数据库的通用API&#xff0c;不同数据库的厂商根据各自数据库的特点实现这些接口。 JDBC希望用相同的方式访问不同的数据库&#xff0c…

苹果发布iPhone AI,Apple Intelligence初版落地!未融入ChatGPT,仅面向付费开发者

本文首发于公众号“AntDream”&#xff0c;欢迎微信搜索“AntDream”或扫描文章底部二维码关注&#xff0c;和我一起每天进步一点点 苹果公司Apple Intelligence初版落地&#xff1a;iPhone AI引领智能化新篇章 在全球科技领域&#xff0c;苹果公司一直以其创新精神和前沿技术…

Potree点云可视化卡片开发指南

本文由ScriptEcho平台提供技术支持 项目地址&#xff1a;传送门 Potree点云可视化卡片开发指南 应用场景介绍 Potree点云可视化卡片是一款基于Potree库开发的Vue组件&#xff0c;它允许用户在Web应用程序中轻松嵌入和交互式可视化大规模点云数据。该卡片特别适用于需要在We…

Redis 内存淘汰策略

Redis 作为一个内存数据库&#xff0c;必须在内存使用达到配置的上限时采取策略来处理新数据的写入需求。Redis 提供了多种内存淘汰策略&#xff08;Eviction Policies&#xff09;&#xff0c;以决定在内存达到上限时应该移除哪些数据。

LLM的训练与推断

LLM的训练与推断 目前比较流行的大模型一般都是自回归模型。在推理时&#xff0c;它类似于RNN&#xff0c;每次计算下一个token的概率。也就是说&#xff0c;如果除去最开始的输入情况下&#xff0c;最终推理长度为n的话&#xff0c;就需要计算n次。但是训练却是并行化的。 在…

在国产芯片上实现YOLOv5/v8图像AI识别-【2.2】RK3588上C++开发环境准备及测试更多内容见视频

本专栏主要是提供一种国产化图像识别的解决方案&#xff0c;专栏中实现了YOLOv5/v8在国产化芯片上的使用部署&#xff0c;并可以实现网页端实时查看。根据自己的具体需求可以直接产品化部署使用。 B站配套视频&#xff1a;https://www.bilibili.com/video/BV1or421T74f 板子…

Idea包含UI内容的插件开发

Idea包含UI内容的插件开发 前言插件效果项目结构配置功能的实现找一个股票接口完成最终的页面配置Plugin.xml源码地址 前言 在这一篇文章中将会做一个包含UI内容的能看股票的插件。 插件效果 首先是在设置中配置股票的编号&#xff0c;如sh000001,sh600519。 接着在侧边栏中…

为何2024年这4款ai智能写作工具被赞为YYDS?

在数字化的大潮中&#xff0c;人工智能已经深入到我们生活的各个角落&#xff0c;当然也包括写作领域。随着ai智能写作工具的兴起&#xff0c;它们不仅显著提升了写作效率&#xff0c;还为创作打开了全新的可能性。今天&#xff0c;我们就来看看四款特别受欢迎的AI写作工具&…

干货分享 | 基于VB6.0 实现 CAN信号收发 Demo

本文主要讲的是&#xff0c;基于TSMaster 实现 TOSUN 系列 CAN/CANFD&#xff0c;LIN 设备的操作。主要给大家介绍在 TSMaster 软件里如何实现 CAN 信号收发 Demo工程。 本文关键词&#xff1a;CAN报文、VB6.0、libTSCAN 一、关于Demo工程 简要描述&#xff1a; VB6.0编程语…