news 2026/6/15 17:51:32

Ascend LlamaFactory微调书生模型

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Ascend LlamaFactory微调书生模型

1.环境安装

conda create -y -n llamafactory_lab python=3.10 conda activate llamafactory_lab git clone https://gh.llkk.cc/https://github.com/hiyouga/LLaMA-Factory.git cd LLaMA-Factory git checkout v0.9.3 pip install -e ".[torch-npu,metrics]" -i https://pypi.tuna.tsinghua.edu.cn/simple pip install torch==2.6.0 torch-npu==2.6.0 torchvision

2.安装校验

使用以下指令对 LLaMA-Factory × 昇腾的安装进行校验: llamafactory-cli env

3.微调前的原模型效果呈现

安装依赖

pip install transformers==4.47.1 # 环境变量设置单卡GPU export ASCEND_RT_VISIBLE_DEVICES=0 # 启动推理 llamafactory-cli chat --model_name_or_path /share/new_models/internlm3/internlm3-8b-instruct --trust_remote_code True

输出结果:

4.微调书生模型

安装依赖

pip install transformers==4.47.1 pip install huggingface_hub==0.34.0 # 创建工作目录 mkdir /root/llamafactory_workdir

安装数据集

export HF_ENDPOINT=https://hf-mirror.com huggingface-cli download --repo-type dataset --resume-download llamafactory/alpaca_en --local-dir /root/dataset/alpaca_en huggingface-cli download --repo-type dataset --resume-download llamafactory/alpaca_zh --local-dir /root/dataset/alpaca_zh

创建dataset_info.json文件

mkdir /root/llamafactory_workdir/data cd /root/llamafactory_workdir/data touch dataset_info.json

dataset_info.json文件

{ "alpaca_en":{ "file_name": "/root/dataset/alpaca_en/alpaca_data_en_52k.json", "columns": { "prompt": "instruction", "query": "input", "response": "output" } }, "alpaca_zh":{ "file_name": "/root/dataset/alpaca_zh/alpaca_data_zh_51k.json", "columns": { "prompt": "instruction", "query": "input", "response": "output" } } }

Yaml配置文件

cd /root/llamafactory_workdir touch internlm3_lora_sft_ds.yaml

internlm3_lora_sft_ds.yaml文件内容

### model model_name_or_path: /share/new_models/internlm3/internlm3-8b-instruct trust_remote_code: True ### method stage: sft do_train: true finetuning_type: lora lora_target: q_proj,v_proj ### dataset dataset: alpaca_en,alpaca_zh template: intern2 cutoff_len: 1024 max_samples: 1000 overwrite_cache: true preprocessing_num_workers: 16 ### output output_dir: saves/internlm3-8b-instruct/lora/sft logging_steps: 10 save_steps: 500 plot_loss: true overwrite_output_dir: true ### train per_device_train_batch_size: 1 gradient_accumulation_steps: 2 learning_rate: 0.0001 num_train_epochs: 3.0 lr_scheduler_type: cosine warmup_ratio: 0.1 fp16: true ### eval val_size: 0.1 per_device_eval_batch_size: 1 eval_strategy: steps eval_steps: 500

开启微调dong

torchrun --nproc_per_node 1 \ --nnodes 1 \ --node_rank 0 \ --master_addr 127.0.0.1 \ --master_port 7007 \ /root/LLaMA-Factory/src/train.py internlm3_lora_sft_ds.yaml

动态合并LoRA的微调

llamafactory-cli chat --model_name_or_path /share/new_models/internlm3/internlm3-8b-instruct \ --adapter_name_or_path saves/internlm3-8b-instruct/lora/sft \ --template intern \ --finetuning_type lora \ --trust_remote_code True

从推理结果看和源模型的输出有所区别了,那就说明微调完成了

微调完成之后可以将微调的权重和原始的模型合并导出

ASCEND_RT_VISIBLE_DEVICES=0 llamafactory-cli export \ --model_name_or_path /share/new_models/internlm3/internlm3-8b-instruct \ --adapter_name_or_path saves/internlm3-8b-instruct/lora/sft \ --template intern2 \ --finetuning_type lora \ --export_dir saves/internlm3-8b-instruct/lora/megred-model-path \ --export_device auto \ --export_legacy_format False \ --trust_remote_code True

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/15 10:50:53

组合逻辑电路优化技巧:门电路精简策略

组合逻辑优化实战:从门电路到芯片能效的精简艺术你有没有遇到过这样的情况?写完一段组合逻辑,功能完全正确,仿真也跑通了,但综合工具一跑,面积超标、时序不达标——明明逻辑很简单,怎么就“胖”…

作者头像 李华
网站建设 2026/6/15 9:35:36

vivado除法器ip核界面功能详解:入门级全面讲解

Vivado除法器IP核深度解析:从界面操作到实战避坑在FPGA设计中,我们每天都在和加法、乘法打交道。但一旦遇到除法运算,很多新手立刻头大——为什么?因为硬件实现除法远不像软件里写个a/b那么简单。如果你正在用Xilinx的Vivado做项目…

作者头像 李华
网站建设 2026/6/15 9:37:18

电机驱动电路设计:工业应用操作指南

电机驱动电路设计:从原理到工业实战的深度指南在一条自动化产线上,一台传送带突然停机,现场排查发现是驱动模块烧毁。工程师打开外壳,看到MOSFET炸裂、PCB焦黑——这并非个例。据统计,在工业电机系统故障中&#xff0c…

作者头像 李华
网站建设 2026/6/15 9:35:36

[特殊字符]_压力测试与性能调优的完整指南[20260111170735]

作为一名经历过无数次压力测试的工程师,我深知压力测试在性能调优中的重要性。压力测试不仅是验证系统性能的必要手段,更是发现性能瓶颈和优化方向的关键工具。今天我要分享的是基于真实项目经验的压力测试与性能调优完整指南。 💡 压力测试…

作者头像 李华
网站建设 2026/6/15 9:34:57

基于multisim仿真电路图的放大器设计:入门必看

从零开始学放大器设计:用Multisim把理论变现实你有没有过这样的经历?翻开模电课本,满屏的“虚短”“虚断”让你一头雾水;想动手搭个放大电路,结果一通电就冒烟——电阻接反了、电源极性搞错了、运放直接烧了……既心疼…

作者头像 李华
网站建设 2026/6/15 17:16:00

libusb跨平台工控应用:实战部署案例

libusb实战:如何用一个库打通工控设备的Windows与Linux通信链路? 在工厂车间的一角,一台手持式PLC调试器正通过USB线连接着现场的控制柜。工程师插上设备,软件瞬间识别并开始读取参数——整个过程无需安装驱动、不弹权限警告&…

作者头像 李华