ms-swift微调框架实测:从安装到训练,10分钟搞定Qwen2.5模型定制
ms-swift微调框架实测从安装到训练10分钟搞定Qwen2.5模型定制1. 前言在当今大模型技术快速发展的背景下如何高效地对预训练大模型进行微调成为了许多开发者和研究者的关注焦点。ms-swift作为一款轻量级的大模型微调框架凭借其简洁的API设计和高效的训练能力正在成为越来越多开发者的首选工具。本文将带您从零开始通过实际操作演示如何使用ms-swift框架在10分钟内完成Qwen2.5-7B-Instruct模型的微调。无论您是AI领域的新手还是有一定经验的开发者都能通过本文快速掌握ms-swift的核心使用方法。2. ms-swift框架简介2.1 什么是ms-swiftms-swift是魔搭社区提供的大模型与多模态大模型微调部署框架具有以下核心特点支持600纯文本大模型与300多模态大模型的训练覆盖预训练、微调、人类对齐、推理、评测、量化与部署全流程提供LoRA、QLoRA等多种轻量微调方式支持分布式训练和多种硬件加速技术2.2 为什么选择ms-swift相比其他微调框架ms-swift具有以下优势模型支持广泛Day0支持最新发布的模型训练效率高集成Megatron并行技术训练速度提升显著资源消耗低7B模型训练仅需9GB显存使用简单命令行和Web-UI两种操作方式功能全面从训练到部署的全链路支持3. 环境准备3.1 硬件要求GPU: 推荐NVIDIA A10/A100/H100或RTX系列显存: 至少22GB(针对Qwen2.5-7B-Instruct模型)系统: Linux推荐Windows/Mac也可运行3.2 软件安装使用conda创建并激活Python环境conda create --name swift python3.10 conda activate swift安装ms-swiftpip install ms-swift[all] -U -i https://pypi.tuna.tsinghua.edu.cn/simple或者从源码安装git clone https://github.com/modelscope/swift.git cd swift pip install -e .[llm] -i https://pypi.tuna.tsinghua.edu.cn/simple4. 快速开始10分钟微调Qwen2.54.1 准备数据集ms-swift支持多种数据集格式这里我们使用内置的示例数据集# 数据集会自动下载 datasetAI-ModelScope/alpaca-gpt4-data-zh#500 \ AI-ModelScope/alpaca-gpt4-data-en#500 \ swift/self-cognition#5004.2 执行微调命令使用以下命令启动LoRA微调CUDA_VISIBLE_DEVICES0 \ swift sft \ --model Qwen/Qwen2.5-7B-Instruct \ --train_type lora \ --dataset $dataset \ --torch_dtype bfloat16 \ --num_train_epochs 1 \ --per_device_train_batch_size 1 \ --per_device_eval_batch_size 1 \ --learning_rate 1e-4 \ --lora_rank 8 \ --lora_alpha 32 \ --target_modules all-linear \ --gradient_accumulation_steps 16 \ --eval_steps 50 \ --save_steps 50 \ --save_total_limit 2 \ --logging_steps 5 \ --max_length 2048 \ --output_dir output \ --system You are a helpful assistant. \ --warmup_ratio 0.05 \ --dataloader_num_workers 4 \ --model_author swift \ --model_name swift-robot4.3 关键参数说明参数说明推荐值--model模型ID或路径Qwen/Qwen2.5-7B-Instruct--train_type训练类型lora (轻量微调)--lora_rankLoRA秩8--lora_alphaLoRA alpha值32--learning_rate学习率1e-4--gradient_accumulation_steps梯度累积步数16--max_length最大序列长度20485. 模型推理与部署5.1 使用微调后的模型推理微调完成后可以使用以下命令进行交互式推理CUDA_VISIBLE_DEVICES0 \ swift infer \ --adapters output/vx-xxx/checkpoint-xxx \ --stream true \ --temperature 0 \ --max_new_tokens 20485.2 合并LoRA权重并加速推理如需获得更快推理速度可合并LoRA权重并使用vLLM加速CUDA_VISIBLE_DEVICES0 \ swift infer \ --adapters output/vx-xxx/checkpoint-xxx \ --stream true \ --merge_lora true \ --infer_backend vllm \ --vllm_max_model_len 8192 \ --temperature 0 \ --max_new_tokens 20485.3 模型部署将模型推送到ModelScope HubCUDA_VISIBLE_DEVICES0 \ swift export \ --adapters output/vx-xxx/checkpoint-xxx \ --push_to_hub true \ --hub_model_id your-model-id \ --hub_token your-sdk-token \ --use_hf false6. 进阶使用技巧6.1 使用Web-UI界面ms-swift提供了基于gradio的Web界面适合不熟悉命令行的用户swift web-ui6.2 自定义数据集准备自定义数据集需遵循以下格式[ { conversations: [ { from: human, value: 用户指令 }, { from: gpt, value: 模型响应 } ], system: 系统提示(可选), tools: 工具描述(可选) } ]6.3 支持的其他训练方法ms-swift支持多种训练任务训练类型说明预训练全参数预训练指令微调监督式微调DPO直接偏好优化KTO知识蒸馏优化PPO近端策略优化7. 总结通过本文的介绍我们了解了如何使用ms-swift框架快速对Qwen2.5-7B-Instruct模型进行微调。ms-swift的主要优势包括简单易用命令行和Web界面两种操作方式高效训练多种优化技术确保训练速度资源友好LoRA等轻量微调方式降低显存需求功能全面从训练到部署的全流程支持对于想要快速上手大模型微调的开发者ms-swift无疑是一个值得尝试的优秀工具。获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2445806.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!