大家好,我今天开始更新大模型微调与部署系列教程,专注用最简单、最落地的方式,带你从零上手大模型训练、微调、推理、量化、部署全流程。
第一篇就从目前国内最易用、支持最全面的大模型微调框架 ms-swift 3.12(官方稳定版) 讲起,完全依据官方文档编写,包含安装、核心优势、快速启动命令、完整使用链路,新手也能直接跑通。
ms-swift 是魔搭 ModelScope 社区开源的大模型与多模态大模型训练、微调、推理、评测、量化、部署一体化框架。
简单说:想快速微调大模型,用 ms-swift 最省事。
- 模型全:支持 600+ 纯文本大模型、300+ 多模态大模型,主流模型 Day0 支持
- 任务全:覆盖预训练、SFT 指令微调、人类对齐(DPO/ORPO/KTO)、强化学习(GRPO 家族)
- 轻量化强:支持 LoRA、QLoRA、DoRA、LongLoRA 等十余种轻量微调,7B 模型仅需 9GB 显存
- 显存优化强:支持 GaLore、UnSloth、Flash-Attention 2/3、序列并行
- 推理加速:集成 vLLM / SGLang / LMDeploy 三大推理引擎
- 量化完善:支持 AWQ / GPTQ / BNB / FP8 训练与导出
- 硬件友好:支持 NVIDIA 全系列显卡、CPU、MPS、昇腾 NPU
- 使用简单:命令行、Web-UI、Notebook 三端可用
一句话总结:从新手炼丹到工业级部署,一个框架全搞定。
# 基础安装 pip install 'ms-swift' -U # 全能力安装(训练+推理+评测+部署) pip install 'ms-swift[all]' -U
git clone https://github.com/modelscope/ms-swift.git cd ms-swift pip install -e '.[all]'
- Python ≥ 3.9
- CUDA 12.x 推荐
- PyTorch ≥ 2.0
- 显卡:A10/A100/RTX 20/30/40/T4/V100
官方示例:10 分钟在单卡 3090 上对 Qwen2.5-7B-Instruct 进行自我认知微调
# 22GB CUDA_VISIBLE_DEVICES=0 swift sft --model Qwen/Qwen2.5-7B-Instruct --train_type lora --dataset 'AI-ModelScope/alpaca-gpt4-data-zh#500' 'AI-ModelScope/alpaca-gpt4-data-en#500' 'swift/self-cognition#500' --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-robot
(1)普通交互式推理
CUDA_VISIBLE_DEVICES=0 swift infer --adapters output/vx-xxx/checkpoint-xxx --stream true --temperature 0 --max_new_tokens 2048
(2)merge LoRA + vLLM 加速推理
# 使用交互式命令行进行推理 CUDA_VISIBLE_DEVICES=0 swift infer --adapters output/vx-xxx/checkpoint-xxx --stream true --temperature 0 --max_new_tokens 2048 # merge-lora并使用vLLM进行推理加速 CUDA_VISIBLE_DEVICES=0 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 2048
CUDA_VISIBLE_DEVICES=0 swift export --adapters output/vx-xxx/checkpoint-xxx --push_to_hub true --hub_model_id '
'
--hub_token '
'
--use_hf false
- 自定义数据集
按照官方格式整理后,直接指定--dataset <你的数据集路径>你的数据集路径>即可。
- model_name / model_author
只有在数据集包含swift/self-cognition时才生效。
- 切换模型
只需要修改--model <模型id或路径>模型id或路径>,其他参数基本不用动。
- 使用 HuggingFace
添加--use_hf true,自动从 HF 下载模型与数据集。
- 自动加载参数
使用--adapters时,Swift 会自动读取args.json,无需重复指定--model、--system。
- 预训练 PT
- 监督微调 SFT
- 偏好学习:DPO / ORPO / SimPO / KTO / CPO / RM
- 强化学习:GRPO 家族(GRPO、DAPO、GSPO、SAPO、CISPO、RLOO 等)
- Embedding / Reranker / 序列分类
LoRA、QLoRA、DoRA、LoRA+、LLaMAPro、LongLoRA、LoRA-GA、ReFT、RS-LoRA、Adapter、LISA
transformers、vLLM、SGLang、LMDeploy
BNB、AWQ、GPTQ、AQLM、H、EETQ、FP8
DDP、DeepSpeed ZeRO2/3、FSDP、Megatron(TP/PP/CP/EP)
ms-swift 3.12 是官方稳定版,兼容性最好、坑最少、教程最完善,非常适合新手入门与实际项目使用。
这篇文章完全依据官方 Quick-Start 编写,命令 100% 可直接运行。
你只需要复制 → 粘贴 → 运行,就能从零跑通大模型微调全流程。
- 自定义数据集格式详解
- LoRA 核心参数 rank / alpha 调优
- dataset_info.json 配置实战
- 多轮医疗对话数据集训练教程
标签
#ms-swift #大模型微调 #LoRA #Qwen2.5 #大模型部署 #AI实战 #新手教程
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/271339.html