Ubuntu环境中LLaMA Factory 的部署与配置—构建大语言模型微调平台

1. LLaMA-Factory

什么是LLaMA-Factory? LLaMA-Factory,全称Large Language Model Factory,即大型语言模型工厂。它支持 多种预训练模型和微调算法 ,提供了一套完整的工具和接口,使得用户能够轻松地对 预训练的模型进行定制化的训练和调整 ,以适应特定的应用场景,如智能客服、语音识别、机器翻译 等。

github: https://github.com/hiyouga/LLaMA-Factory

入门教程https://zhuanlan.zhihu.com/p/695287607


特点

  • 多种模型:LLaMA、LLaVA、Mistral、Mixtral-MoE、Qwen、Qwen2-VL、DeepSeek、Yi、Gemma、ChatGLM、Phi 等等。
  • 集成方法:(增量)预训练、(多模态)指令监督微调、奖励模型训练、PPO 训练、DPO 训练、KTO 训练、ORPO 训练等等。
  • 多种精度:16bit 全参数微调、冻结微调、LoRA 微调和基于AQLM/AWQ/GPTQ/LLM.int8/HQQ/EETQ 的 2/3/4/5/6/8 bit QLoRA 微调(16 bit 全参数微调:使用半精度浮点数更新模型全部参数,效果好但计算和内存开销最大。冻结微调:只训练模型的部分层,其余参数固定不变,是一种高效的适配方法。LoRA 微调:通过低秩适配器在原始参数旁添加小型可训练矩阵,大幅减少训练参数量。基于 AQLM/AWQ/GPTQ/LLM.int8/HQQ/EETQ2/3/4/5/6/8 bit QLoRA 微调:在量化模型(将权重压缩至2-8bit表示)基础上结合LoRA技术,实现极低资源消耗的微调)。
  • 先进算法:GaLore、BAdam、APOLLO、Adam-mini、Muon、OFT、DoRA、LongLoRA、LLaMA Pro、Mixture-of-Depths、LoRA+、LoftQ 和 PiSSA
  • 实用技巧:FlashAttention-2、Unsloth、Liger Kernel、RoPE scaling、NEFTunersLoRA
  • 广泛任务:多轮对话、工具调用、图像理解、视觉定位、视频识别和语音理解等等。
  • 实验监控:LlamaBoard、TensorBoard、Wandb、MLflow、SwanLab 等等。
  • 极速推理:基于 vLLMSGLangOpenAI 风格 API、浏览器界面和命令行接口。

2. 安装LLaMA Factory

参考:https://llamafactory.readthedocs.io/zh-cn/latest/getting_started/installation.html

2.1 安装git

bash 复制代码
sudo apt install git

2.2 利用git 拉去 LLaMA Factory

bash 复制代码
git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git


2.3 安装conda

  1. 安装Conda 所需依赖:

    bash 复制代码
    sudo apt install libgl1-mesa-glx libegl1-mesa libxrandr2 libxrandr2 libxss1 libxcursor1 libxcomposite1 libasound2 libxi6 libxtst6

  2. 下载conda 安装包:

    bash 复制代码
    wget https://repo.anaconda.com/archive/Anaconda3-2024.10-1-Linux-x86_64.sh

    若报错:目录没有写入权限

    bash 复制代码
    lbm@ubuntu:/opt$ wget https://repo.anaconda.com/archive/Anaconda3-2024.10-1-Linux-x86_64.sh
    --2025-11-10 16:55:17--  https://repo.anaconda.com/archive/Anaconda3-2024.10-1-Linux-x86_64.sh
    正在解析主机 repo.anaconda.com (repo.anaconda.com)... 104.16.32.241, 104.16.191.158, 2606:4700::6810:20f1, ...
    正在连接 repo.anaconda.com (repo.anaconda.com)|104.16.32.241|:443... 已连接。
    已发出 HTTP 请求,正在等待回应... 200 OK
    长度: 1102495056 (1.0G) [application/octet-stream]
    Anaconda3-2024.10-1-Linux-x86_64.sh: 权限不够
    
    无法写入 'Anaconda3-2024.10-1-Linux-x86_64.sh' (成功)。

    使用 sudo 下载到 /opt

    bash 复制代码
    # 使用 sudo 权限下载
    sudo wget https://repo.anaconda.com/archive/Anaconda3-2024.10-1-Linux-x86_64.sh -P /opt
    bash 复制代码
    cd /opt
    # 安装conda,一路回车和yes
    sudo bash Anaconda3-2024.10-1-Linux-x86_64.sh

    注意 : 终端出现Anaconda3 will now be installed into this location:可输入自定义路径进而支持自定义conda安装路径(直接回车会默认安装到HOME目录)。

  3. conda配置环境,默认没有配置环境

    查看conda安装位置

    输入 nano ~/.bashrc

    bashrc 文件的最后一行加入:export PATH=/home/lbm/anaconda3/bin:$PATH

    (lbm是自己的用户名)。按Ctrl+x 保存并退出编辑

    配置生效,用conda -V查看版本正常了

    bash 复制代码
    source ~/.bashrc

4 创建环境

  1. 创建 llama-factory 微调虚拟环境

    bash 复制代码
    conda create -n llama-factory python=3.10




    激活环境

    bash 复制代码
    conda activate llama-factory
  2. 安装相关依赖

    bash 复制代码
    pip install -e ".[torch,metrics]" --no-build-isolation -i https://mirrors.aliyun.com/pypi/simple


  3. 启动 LLama-Factory

    bash 复制代码
    llamafactory-cli webui

    (这里我用的是虚拟机 ubuntu22.04 安装 LLama-Factory ,可以在 win 系统下通过虚拟机 IP 地址访问 LLama-Factory 界面)

5. Gradio 域名微调

如果 ubuntu 是服务器版本没有桌面的,你又想使用图形化微调,可以通过gradio 创建公开域名链接进行微调

bash 复制代码
0 表示第一张显卡:`CUDA_VISIBLE_DEVICES=0`   
1 表示创建1个域名链接:`GRADIO_SHARE=1`

查看有多少张卡

bash 复制代码
nvidia-smi -L


启动命令:

bash 复制代码
CUDA_VISIBLE_DEVICES=0 GRADIO_SHARE=1 llamafactory-cli 


gradio报错:

  • 创建目录:mkdir -p /home/lbm/.cache/huggingface/gradio/frpc
  • 进入目录:cd /home/lbm/.cache/huggingface/gradio/frpc
  • 我用 win 浏览器下载,然后手动上传到frpc文件下:https://cdn-media.huggingface.co/frpc-gradio-0.3/frpc_linux_amd64,因为:wget https://github.com/gradio-app/gradio/raw/main/gradio/frpc_linux_amd64-O frpc_linux_amd64_v0.3,下载有问题!!

    如上图,上传进 frpc文件里,然后重命名: mv frpc_linux_amd64 frpc_linux_amd64_v0.3

    添加权限: chmod +x frpc_linux_amd64_v0.3

    启动 :CUDA_VISIBLE_DEVICES=0 GRADIO_SHARE=1 llamafactory-cli webui

    这样就生成了一条公开域名,你也可以分享给其他人用:https:// b551a47a2dd5.gradio.live/,这里就部署结束了!!后面就是上传数据集做训练了

训练效果展示:

总而言之,在 Ubuntu 上成功部署 LLaMA Factory,标志着您已经拥有了一个强大且灵活的大语言模型微调平台。它不仅集成了当前主流的微调技术,还提供了直观的操作界面,让研究和开发工作事半功倍。"行百里者半九十"。环境的搭建只是第一步,真正的价值将在您后续的微调实验和创新应用中得以体现。请不要让工具止步于安装,立即开始您的第一次模型微调,在真实的项目中感受生成式 AI 的魅力与力量吧!

相关推荐
deephub2 小时前
AI智能体落地:Agent-Assist vs 全自动化完整决策指南
人工智能·大语言模型·agent
weixin_462446236 小时前
ubuntu/kali安装k8s
linux·ubuntu·kubernetes
序属秋秋秋8 小时前
《Linux系统编程之系统导论》【冯诺依曼体系结构 + 操作系统基本概述】
linux·运维·服务器·c语言·ubuntu·操作系统·冯诺依曼体系结构
搬砖的小码农_Sky20 小时前
Ubuntu Desktop Linux 文件和文件夹操作命令详解
linux·运维·ubuntu
Nie_Xun1 天前
Ubuntu 安装与 NVIDIA 显卡驱动配置 2篇
linux·运维·ubuntu
HIT_Weston1 天前
25、【Ubuntu】【远程开发】内网穿透:密钥算法介绍(一)
linux·运维·tcp/ip·ubuntu
Arvin6271 天前
Ubuntu 22.04 Docker 安装指南
linux·ubuntu·docker
赴遥1 天前
[出现错误 2147942402 (0x80070002) (启动“ubuntu2004.exe”时)]
ubuntu·win11·wsl2
一直向钱1 天前
Ubuntu 服务器的无法使用WinSCP低版本连接登录
linux·服务器·ubuntu