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

Ubuntu22系统上源码部署LLamaFactory+微调模型 教程【亲测成功】

0.LLamaFactory

LLaMA-Factory 是一个开源的低代码大模型训练与微调框架,旨在简化大规模语言模型(LLM)的微调、评估和部署流程,帮助开发者和研究人员更高效地定制和优化模型。

1.安装部署

1.1克隆仓库

git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git

克隆成功如下图所示
克隆成功

1.2切换目录

cd LLaMA-Factory

切换步骤

1.3通过conda创建python环境

conda create -n llama-factory python=3.10

截图成功

1.4激活虚拟环境

conda activate llama-factory

激活环境

1.5在conda环境中安装LLama-Factory相关依赖

pip install -e ".[torch,metrics]" --no-build-isolation

安装过程如下
安装过程

2.启动LLama-Factory可视化微调界面(由 Gradio 驱动)

llamafactory-cli webui

命令截图

3.在浏览器输入服务器ip+端口

启动成功如下图所示
启动成功

4.从Hugging-Face上面下载基座模型

4.1创建一个文件夹统一存放所有基座模型

mkdir Hugging-Face

4.2修改 HuggingFace 镜像源(加速下载)

export HF_ENDPOINT=https://hf-mirror.com

修改镜像源

4.3修改模型默认下载位置

export HF_HOME=/data/Hugging-Face

修改下载位置
————————————————————————
NOTES:
4.2和4.3的做法是在临时会话中生效,如果想要永久化生效,如下操作:
(1)打开配置文件

sudo vi ~/.bashrc

(2)写入以下内容

export HF_ENDPOINT=https://hf-mirror.com
export HF_HOME=/data/Hugging-Face

配置内容

(3)配置生效

source ~/.bashrc

配置生效
(4)验证生效即可

echo $HF_HOME 
echo $HF_ENDPOINT

如下图所示
生效

——————————————————————————

4.4安装HuggingFace官方下载工具

pip install -U huggingface_hub

——————————————————
NOTES:
1.​​pip install​​
Python 包管理工具的标准安装命令。
2.​​-U参数​​
--upgrade的简写,表示强制升级到最新版本(若已安装则更新)。
3.​​huggingface_hub​​
HuggingFace 官方提供的 Python 库,用于:
•访问 Hub 上的模型/数据集
•管理仓库和文件
•集成 Transformers/Diffusers 等库
———————————————————
执行成功如下
成功

4.5执行下载命令

huggingface-cli download --resume-download deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B

下载哪个模型到HuggingFace官网上面搜索即可
基座模型
下载成功截图
下载成功
模型位置
模型成功下载

5.在LLamaFactory可视化页面上加载模型,检验是否加载成功

5.1选择模型

选择模型
——————————————————
NOTES:
这里的模型路径不是整个模型文件夹,而是精确到模型特定快照的唯一哈希值snapshots
路径如下所示
路径
——————————————————

5.2执行测试

5.2.1 分别点击chat->加载模型,出现如下界面即为成功
成功
5.2.2 聊天测试

下图即为成功
聊天测试

6.准备用于训练的数据集并添加到指定位置

http://www.dtcms.com/a/338728.html

相关文章:

  • Linux下编译ARPACK
  • 【Git Submodules 与微前端架构技术指南】
  • git仓库和分支的关系
  • 主从切换是怎么保证数据一致的?从库为什么会延迟
  • 理解JavaScript中的函数赋值和调用
  • AAA服务器技术
  • 算法训练营day55 图论⑤ 并查集理论基础、107. 寻找存在的路径
  • 谷歌为什么要将Android的页面大小(Page Size)从传统的4KB升级至16KB
  • 解决 UniApp 自定义弹框被图片或 Canvas 覆盖的 Bug
  • 云原生俱乐部-mysql知识点归纳(3)
  • 2 . 大纲
  • 常用植被物候提取方法 (TIMESATE/R语言/Python)-4.0
  • QChart智能坐标轴
  • 【3-3】流量控制与差错控制
  • Linux的ALSA音频框架学习笔记
  • 为单片机专门定制的Unicode字库和API接口
  • 18650锂电池自动化生产线:智能集成提升制造效能
  • Datawhale工作流自动化平台n8n入门教程(一):n8n简介与平台部署
  • 机器学习深度学习 所需数据的清洗实战案例 (结构清晰、万字解析、完整代码)包括机器学习方法预测缺失值的实践
  • 基于 PyTorch 模型训练优化、FastAPI 跨域配置与 Vue 响应式交互的手写数字识别
  • 【Qt】线程池与全局信号实现异步协作
  • 【qml-5】qml与c++交互(类型单例)
  • JVM垃圾收集器
  • Linux重置 root 密码:从原理到实操
  • 免费OCR工具支持哪些文档格式转换
  • 8.19打卡 DAY 46 通道注意力(SE注意力)
  • RPC高频问题与底层原理剖析
  • 在VSCode中进行Vue前端开发推荐的插件
  • 基于C语言基础对C++的进一步学习_知识补充、组合类、类中的静态成员与静态函数、类中的常对象和常成员函数、类中的this指针、类中的友元
  • Laya的适配模式选择