零基础在windows环境下的WSL使用llamafactory(一)

模型微调的大致流程:微调训练、推理验证、模型导出、模型部署

目录

llamafactory三种搭建方式

python环境的搭建

认识llamafactory

使用llamafactory

WebUI

CLI命令行

模型训练

模型推理

模型合并

llamafactory三种搭建方式

python环境的搭建

不管选择上面的哪一种,我们都需要最基础的python,所以最先需要在wsl环境里面配置好python,建议311版本及以上。

温馨提示:最好在wsl的环境下去搭建,如果是在window上的文件进行操作,跨系统读写 NTFS 文件系统不仅有严重的 I/O 延迟,还会导致文件锁、权限和硬链接等各种兼容性问题。我们可以mkdir -p ~/study/finetune & cd ~/study/finetune

前置环境安装命令如下:

复制代码
sudo apt update

sudo apt install -y build-essential
sudo apt install -y software-properties-common
sudo apt install -y python3.11-dev
sudo add-apt-repository -y ppa:deadsnakes/ppa
sudo apt update
sudo apt install -y python3.11 python3.11-venv
python3.11 --version

# 确保安装了 pip3.11 对应的工具,或者通过 pip3.11 安装 uv
python3.11 -m pip install --upgrade pip
python3.11 -m pip install uv

# 1. 进入项目目录
cd ~/study/finetune/LLaMA-Factory

# 2. 使用 Python 3.11 创建名为 ftenv 的虚拟环境
python3.11 -m venv ftenv

# 3. 激活虚拟环境
source ftenv/bin/activate

# 4. 在虚拟环境中安装 uv(利用虚拟环境内置的 pip)
pip install uv

附上部分内容的参考结果图

我们可以选择的环境有本地环境、免费的服务器、租用外界服务器。本人选择的是本地环境,跑个小模型差不多了。接下来执行如下操作安装。

复制代码
#安装系统级distutils
sudo apt-get update

sudo apt-get install -y python3-distutils
#确定驱动已安装,基本都装了,没什么问题

nvidia-smi
#拉取代码
git clone https://github.com/hiyouga/LLaMA-Factory.git

#安装虚拟环境
pip install uv -ihttps://mirrors.aliyun.com/pypi/simple

source ftenv/bin/activate
#安装llamafactory

cd LLaMA-Factory
uv pip install -e ".[torch,metrics]" -i https://mirrors.aliyun.com/pypi/simple
#验证是否安装成功
llamafactory-cli version
##验证GPU是否可用,应输出True
python -c "import torch; print(torch.cuda.is_available())"

附上部分内容的参考结果图

认识llamafactory

LLaMA-Factory(常被开发者亲切地称为"LLaMA Factory")是一个专为大型语言模型(LLMs)设计的开源、一站式微调与部署框架。它的核心目标是打破大模型微调的高技术壁垒,让开发者无需深入理解复杂的底层代码,就能像"喝咖啡一样简单"地完成模型的定制化训练。

使用llamafactory

WebUI

执行 llamafactory-cli webui 启动webui

在地址栏输入:http://0.0.0.0:7860

我这边选择了Qwen3.5-2B-Thinking 模型,点击加载模型

在终端也会有加载信息显示,这边我忘记截图了....所以是后面加载模型的结果了...

CLI命令行

模型训练

执行 llamafactory-cli -h 查看可执行的参数信息

用资源管理系统打开项目,进入项目,路径如下:finetune\LLaMA-Factory\examples\train_lora

使用qwen3_lora_sft.yaml 来进行微调的案例展示,打开文件,将模型替换成刚刚下载好的模型,template 修改成default,输出文件夹也修改了

接下来在窗口执行 USE_MODELSCOPE_HUB=1 llamafactory-cli train examples/train_lora/qwen3_lora_sft.yaml 命令去训练 模型

这个就是执行完成的展示,在文件夹下面也可以查看结果

模型推理

进入finetune\LLaMA-Factory\examples\inference 下找到**qwen3_lora_sft.yaml,**同样继续修改配置文件

执行USE_MODELSCOPE_HUB=1 llamafactory-cli chat examples/inference/qwen3_lora_sft.yaml

输出的结果和使用的数据集给出的样例是一致的

模型合并

打开文件夹finetune\LLaMA-Factory\examples\merge_lora

继续修改配置文件

模型已经合并成一个了

进入finetune\LLaMA-Factory\examples\inference 文件夹,把adapter_name_or_path 属性删除掉,因为模型已经整合成一个了,其他的保持不变,目的是通过api命令,把模型部署成为一个接口,仅供调用 。执行以下命令

复制代码
USE_MODELSCOPE_HUB=1 llamafactory-cli api examples/inference/qwen3_lora_sft.yaml

已经部署完成了,打开新的终端窗口输入

复制代码
curl -s http://localhost:8000/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "output/Qwen3-0.6B",
    "messages": [
      {"role": "user", "content": "你是谁"}
    ],
    "max_tokens": 64,
    "temperature": 0.7
  }'

到这里就结束了~

相关推荐
陈童学哦1 小时前
DeepSeek Harness(Cordis):打破Agent框架黑盒,一切皆插件
人工智能
小睿科技1 小时前
建筑AI睿兔大脑 | AI把工程成本测算从经验活变成算清楚的技术活
人工智能
正经教主1 小时前
AI提示词工程(高阶)第19课:提示词评估与A/B测试
人工智能
Zach_菠萝侠1 小时前
【DeepSeek Harness 研究】进化方向1:动态路由 思考、设计与实现
人工智能·深度学习·deepseek
whyutianict_vv1 小时前
从 Web 前端到 HarmonyOS ArkTS:一次 AI 鸿蒙全栈智能体开发的迁移实录
前端·人工智能·harmonyos
Aision_1 小时前
代码安全学习手记(二):SCA 软件成分分析原理与 OWASP Dependency-Check 集成实战
运维·人工智能·学习·安全·web安全·网络安全
xrkhy1 小时前
redis-shake的使用windows版本
数据库·windows·redis
m0_749690231 小时前
【寻迹校园 HarmonyOS NEXT 实战 01】从校园痛点到可上架 MVP:失物招领应用产品设计
人工智能·深度学习·移动开发·harmonyos·arkts·arkui·产品设计
yinshuzhineng1 小时前
如何提升生产线自动化水平,降低人工成本?
运维·人工智能·自动化·制造