llama-factory部署微调方法(wsl-Ubuntu Windows)

news/2025/2/22 15:03:58

llama-factory项目GitHub地址:GitHub - hiyouga/LLaMA-Factory: Unified Efficient Fine-Tuning of 100+ LLMs & VLMs (ACL 2024)

wsl-Ubuntu:

1.获取项目

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

cd LLaMA-Factory/ 

2.安装环境

# 创建一个环境
conda create -n llama-f python==3.10
# 激活环境 conda activate不行的话就用source activate
conda activate llama-f

安装包:

pip install -e ".[torch,metrics]"

可用的额外依赖项:torch、torch-npu、metrics、deepspeed、liger-kernel、bitsandbytes、hqq、eetq、gptq、awq、aqlm、vllm、galore、apollo、badam、adam-mini、qwen、minicpm_v、modelscope、openmind、swanlab、quality

解决包冲突

冲突:

解决:
pip install --no-deps -e .

(选用)额外报错:缺少Rust和Cargo

报错:
Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Preparing metadata (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [6 lines of output]

      Cargo, the Rust package manager, is not installed or is not on PATH.
      This package requires Rust and Cargo to compile extensions. Install it through
      the system's package manager or via https://rustup.rs/

      Checking for Rust toolchain....
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
解决:

Rust官方提供了一个非常方便的安装脚本,可以通过以下命令安装Rust和Cargo:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

运行后,脚本会提示你选择安装选项。默认情况下,直接按回车键选择默认安装即可

配置环境变量
source $HOME/.cargo/env

如果想永久生效,可以将以下内容添加到你的Shell配置文件

nano ~/.bashrc 然后到最后一行添加:

export PATH="$HOME/.cargo/bin:$PATH"

用命令使配置生效 

source ~/.bashrc
验证: 
rustc --version
cargo --version

3. 启动

环境配置完后就可以通过命令启动webui界面,并通过网页访问

llamafactory-cli webui

然后在网页输入:

http://localhost:7860/

就进去了,可以进行微调操作 

Windows:

前面的clone和 环境以及 pip install -e ".[torch,metrics]"这些都是一样的

Windows缺少Rust和Cargo:

  1. 打开 PowerShell 或 命令提示符(以管理员身份运行)。

  2. 运行以下命令下载并安装 rustup

    winget install --id Rustlang.Rustup

    如果 winget 不可用(例如在较旧的 Windows 版本中),可以使用以下命令:

    curl -sSf https://sh.rustup.rs | sh

    如果提示没有 curl,可以先安装 curl

    winget install curl.curl
  3. 安装过程中,会提示你选择安装选项。直接按回车键选择默认安装即可

 安装完成后,rustup 会自动将 Rust 的工具链添加到系统的 PATH 环境变量中。

验证安装

rustc --version
cargo --version

启动:

Windows启动webui界面命令:

python src/webui.py

 也进来了:

还有一些环境变量,可以在执行python src/webui.py前执行,比如:

set USE_MODELSCOPE_HUB=1:该变量用于指定是否使用ModelScope Hub。ModelScope Hub是一个模型托管平台,设置为1表示启用该功能。

export CUDA_VISIBLE_DEVICES=0:该变量用于控制可见的GPU设备。CUDA_VISIBLE_DEVICES=0表示仅使用第一个GPU。

TRANSFORMERS_CACHE=*****:

  • 指定Hugging Face模型的缓存路径。

  • 示例:set TRANSFORMERS_CACHE=C:\cache\transformers

等等好多,可以自行选择使用 


http://www.niftyadmin.cn/n/5862420.html

相关文章

unity获取指定麦克风的分贝(deepseek)

在Unity中,获取指定麦克风的分贝值需要使用Microphone类来捕获麦克风输入,并通过AudioSource或直接处理音频数据来计算分贝值。以下是实现步骤和示例代码: 实现步骤: 1、初始化麦克风:使用Microphone.Start开始录制麦…

基于Django的购物商城平台的设计与实现(源码+lw+部署文档+讲解),源码可白嫖!

摘要 当今社会进入了科技进步、经济社会快速发展的新时代。国际信息和学术交流也不断加强,计算机技术对经济社会发展和人民生活改善的影响也日益突出,人类的生存和思考方式也产生了变化。传统购物管理采取了人工的管理方法,但这种管理方法存…

k8s网络插件详解(flannel)

1、介绍 Flannel 是一个轻量级、易于配置的网络插件,旨在简化 Kubernetes 集群中 Pod 网络的管理。Flannel 的核心功能是提供一个虚拟的网络,允许每个 Pod 获取一个独立的 IP 地址,并实现不同节点间的 Pod 之间的通信 2、网络模式 vxlan&am…

HTML 中的 Canvas 样式设置全解

在 HTML5 中&#xff0c;<canvas> 元素提供了一个强大的绘图接口&#xff0c;允许开发者通过 JavaScript 实现各种图形和动画效果。为了充分利用 <canvas> 的功能&#xff0c;理解其样式设置是至关重要的。本文将详细介绍如何在 HTML 中设置 <canvas> 的各种…

2025vue4.x全栈学习关键技术分析线路图

关键升级点说明‌&#xff1a; ‌编译优化‌ &#xff1a;Vue 4.x采用WASM编译提速300% ‌智能工具链‌ &#xff1a;Vite插件市场新增AI代码审查模块 ‌跨平台能力‌ &#xff1a;Uni-App支持原生ARCore/ARKit调用 ‌安全增强‌ &#xff1a;默认启用WebAuthn生物认证…

HTML第一节

一.HTML标签 注意&#xff1a;1.双标签是要包裹内容的 &#xff08;单标签单独记&#xff09; 二.HTML骨架 1.骨架规则 注意&#xff1a;1.title为网页的名字 2.VS code自动生成骨架 注意&#xff1a;1.先输入感叹号&#xff08;必须为英文&#xff09; 再按回车 三.标签间的…

Redis中有序集合(Sorted Set)常见命令详解

有序集合&#xff08;Sorted Set&#xff09;常见命令详解 有序集合&#xff08;Sorted Set&#xff0c;简称zset&#xff09;是Redis中一种非常特殊的数据结构&#xff0c;它结合了集合&#xff08;Set&#xff09;和有序列表&#xff08;Sorted List&#xff09;的特点。在有…

路由器的WAN口和LAN口有什么区别?

今时今日&#xff0c;移动终端盛行的时代&#xff0c;WIFI可以说是家家户户都有使用到的网络接入方式。那么路由器当然也就是家家户户都不可或缺的设备了。而路由器上的两个实现网络连接的基础接口 ——WAN 口和 LAN 口&#xff0c;到底有什么区别&#xff1f;它们的功能和作用…