服务器LLama Factory Lora 微调模型过程记录

连接远程服务器

1、把训练需要的文件移动到服务端

bash 复制代码
scp wangfei@10.30.71.37:/Users/wangfei/Documents/code/python/smart_home_agent_v1/training/sft_train.json /home/ubuntu/lingzhi/wangf36_temp 

2、查看显卡占用情况

bash 复制代码
nvidia-smi

尴尬,有人在用

看看别人在干啥吧

js 复制代码
ps -fp 596080
ps -fp 596081
ps -fp 596082
ps -fp 596083

估计也在训练,只能等等了

查看dataset数据

json 复制代码
"smart_home_sft": {
    "file_name": "sft_train.json",
    "formatting": "sharegpt"
  }

把文件移动到data目录下面

bash 复制代码
mv /home/ubuntu/lingzhi/wangf36_temp/sft_train.json /home/ubuntu/lingzhi/LLaMA-Factory/data

查看训练文件

yaml 复制代码
### model
model_name_or_path: /home/ubuntu/lingzhi/base_model/Qwen3-4B-Instruct-2507
trust_remote_code: true

### method
stage: sft
do_train: true
finetuning_type: lora
lora_target: all

### lora config
lora_rank: 32
lora_alpha: 64
lora_dropout: 0.05

### dataset
dataset: smart_home_sft
dataset_dir: data
template: qwen
cutoff_len: 2048
overwrite_cache: true
preprocessing_num_workers: 8

### output
output_dir: saves/smart_home_lora_1
logging_steps: 5
save_steps: 50
plot_loss: true
overwrite_output_dir: true

### train
per_device_train_batch_size: 8
gradient_accumulation_steps: 2
learning_rate: 3.0e-4
num_train_epochs: 5.0
max_grad_norm: 1.0
lr_scheduler_type: cosine
warmup_ratio: 0.1
bf16: true

### distributed (4x H20)
ddp_timeout: 180000000
flash_attn: fa2

### eval
val_size: 0.1
per_device_eval_batch_size: 8
eval_strategy: steps
eval_steps: 50

开始训练

bash 复制代码
conda activate llama_factory
bash 复制代码
llamafactory-cli train /home/ubuntu/lingzhi/LLaMA-Factory/examples/train_lora/llama_factory_config.yaml
bash 复制代码
llamafactory-cli train examples/train_lora/llama_factory_config.yaml

合并lora权重

bash 复制代码
llamafactory-cli export \
  --model_name_or_path /home/ubuntu/lingzhi/base_model/Qwen3-4B-Instruct-2507 \
  --adapter_name_or_path /home/ubuntu/lingzhi/LLaMA-Factory/saves/smart_home_lora_1 \
  --finetuning_type lora \
  --export_dir /home/ubuntu/lingzhi/trained_models_real/smart_home_model_260422

使用vllm启动模型的api服务

bash 复制代码
python -m vllm.entrypoints.openai.api_server \
  --model /home/ubuntu/lingzhi/trained_models_real/smart_home_model_260422 \
  --host 0.0.0.0 \
  --port 8000 \
  --trust-remote-code \
  --served-model-name smart_home\
  --enable-auto-tool-choice \
  --tool-call-parser hermes 

本地测试

bash 复制代码
curl http://127.0.0.1:8000/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "smart_home",
    "messages": [{"role": "user", "content": "打开客厅灯"}]
  }'

远程测试

bash 复制代码
curl http://172.21.12.16:8000/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "smart_home",
    "messages": [{"role": "user", "content": "打开客厅灯"}]
  }'
js 复制代码
(llama_factory) ubuntu@VM-12-16-ubuntu:~/lingzhi/base_model/Qwen3-4B-Instruct-2507$ pwd
/home/ubuntu/lingzhi/base_model/Qwen3-4B-Instruct-2507
相关推荐
梦在远山后2 小时前
Electron 与 FastAPI 如何完成流式 Agent 对话
python·langchain·agent
犀利豆2 小时前
为什么全世界的 AI 都画不好一只骑自行车的鹈鹕
人工智能·llm·aigc
Nturmoils3 小时前
本地图库语义搜索实战:接上蓝耘元生代,让"傍晚的海边"能搜到图
aigc
wangruofeng3 小时前
9 款主流 AI Agent CLI 对比:安装、版本查询与升级命令
aigc·agent·ai编程
全栈弄潮儿4 小时前
AI 生成的代码,哪些地方最容易埋坑?
aigc·openai·ai编程
猿人谷5 小时前
Jev:当 AI 不再生成 Token,而是直接做决策
后端·langchain·aigc
逆风飞翔的小叔5 小时前
【AI智能体】Langchain 主流大模型调用与对话API使用详解
langchain·langchain 对话api·langchain 对话·langchain 对话使用·langchain 对话详解·langchain api使用
杨杨杨大侠5 小时前
Jev 不是 Agent:TypeSafe System One 如何成为离 LLM 最近的决策层
aigc·openai·ai编程
plainGeekDev5 小时前
棘轮原理与实战:让 Harness 越用越可靠
aigc·ai编程·claude
王国强20097 小时前
如何通过 Deep Agents、LangChain 与 LangGraph 构建生产级智能体:从 Deep Agents Code 源码看 Agent 工程实
langchain