【大模型微调与部署03】—— ms-swift-4.1命令行参数(训练、推理、对齐、量化、部署全参数)

张开发
2026/4/18 12:08:36 15 分钟阅读

分享文章

【大模型微调与部署03】—— ms-swift-4.1命令行参数(训练、推理、对齐、量化、部署全参数)
MS-Swift 命令行参数最全通关指南新手到实战一篇看懂训练、推理、对齐、量化、部署全参数大家好本篇基于MS-Swift 官方命令行参数文档整理把最常用、最容易踩坑、最关键的参数全部讲明白给出标准用法 实战示例不管是 SFT 微调、RLHF 对齐、模型导出、量化、部署都能直接照着用。一、MS-Swift 参数整体结构MS-Swift 参数分为 4 层基本参数通用核心原子参数训练器底层集成参数最终实际使用特定模型参数多模态/Qwen等专属所有命令最终使用的都是集成参数我们日常训练只需要关注带的重要参数即可。二、参数传入格式必看不然必报错list 传入用空格分隔--datasetdata1 data2 data3dict 传入用 JSON 字符串--model_kwargs{FPS_MAX_FRAMES: 12}bool 传入true / false--load_in_4bittrue三、 核心模块参数详解实战版1. 基本参数所有命令通用参数说明常用值tuner_type微调类型lora默认/ full / adalora / veratuner_backendLoRA 后端peft / unslothadaptersLoRA 路径断点续训/推理用model模型ID/路径必传model_type模型类型qwen / qwen2_vl 等use_hf使用 HuggingFacefalse默认用 ModelScopehub_token上传 ModelScope 令牌推送模型用seed随机种子42示例--model_typeqwen\--modelQwen/Qwen-1_8B-Chat\--tuner_typelora\--seed422. 模型参数参数说明torch_dtype精度device_map设备分配max_memory显存分配rope_scaling长度外推max_model_len模型最大长度attn_implattention示例--bf16true\--device_mapauto\--max_model_len2048\--attn_implflash_attention_23. 数据参数最容易错参数说明dataset训练数据集val_dataset验证集custom_dataset_info自定义 dataset_info.jsonsplit_dataset_ratio训练集切分验证dataset_num_proc预处理进程columns字段映射strict是否严格检查示例--datasetmed-disc med-self-cog\--custom_dataset_infocustom_dataset.json\--split_dataset_ratio0.05\--dataset_num_proc44. 模板参数对话格式参数说明template对话模板system系统提示词max_length单条最大长度truncation_strategy超长策略loss_scale损失计算范围agent_template智能体模板示例--system你是专业医疗助手提供严谨安全的健康咨询\--max_length2048\--loss_scaledefault5. 训练参数SFT / DPO / ORPO参数说明output_dir输出目录num_train_epochs训练轮数per_device_train_batch_size批次gradient_accumulation_steps梯度累积learning_rate学习率warmup_ratio预热gradient_checkpointing省显存save_steps保存步数eval_steps评估步数save_total_limit最大保存数示例--num_train_epochs2\--per_device_train_batch_size4\--gradient_accumulation_steps2\--learning_rate1e-4\--gradient_checkpointingtrue\--save_steps500\--eval_steps500\--save_total_limit56. LoRA 参数最常用参数说明lora_rank秩lora_alpha缩放lora_dropoutdropouttarget_modules目标层use_dora使用 DoRA示例--lora_rank16\--lora_alpha32\--lora_dropout0.05\--target_modulesall-linear7. 量化参数训练省显存参数说明quant_method量化方法quant_bits量化位数bnb_4bit_quant_typenf4推荐示例--quant_methodbnb\--quant_bits4\--bnb_4bit_quant_typenf48. RLHF 对齐参数DPO/ORPO/SimPO/KTO参数说明rlhf_type对齐类型beta偏差系数max_completion_length最大生成长度示例--rlhf_typeorpo\--beta0.1\--max_completion_length5129. 推理 部署参数参数说明infer_backend推理引擎max_new_tokens最大生成长度temperature随机性stream流式输出host部署IPport端口示例--infer_backendvllm\--max_new_tokens1024\--temperature0.3\--streamtrue10. 导出 推送参数合并量化上传参数说明merge_lora合并LoRApush_to_hub推送到 ModelScopehub_model_id模型IDquant_method导出量化quantization_bit导出位数示例--merge_loratrue\--push_to_hubtrue\--hub_model_idmyname/qwen-med-1.8b\--quant_methodawq\--quantization_bit4四、最常用实战命令直接复制1SFT 训练命令医疗微调CUDA_VISIBLE_DEVICES0,1NPROC_PER_NODE2swift sft\--model_typeqwen\--model./Qwen-1_8B-Chat\--train_typelora\--custom_dataset_infocustom_dataset.json\--datasetmed-disc med-self-cog\--bf16true\--num_train_epochs2\--per_device_train_batch_size4\--gradient_accumulation_steps2\--learning_rate1e-4\--lora_rank16\--lora_alpha32\--target_modulesall-linear\--max_length2048\--system你是专业医疗助手\--output_dir./output2ORPO 对齐命令swift dpo\--model_typeqwen\--model./output/checkpoint-xxx\--rlhf_typeorpo\--datasetmed-disc\--output_dir./output_orpo3合并 量化 推送到 ModelScopeswiftexport\--model_typeqwen\--model./output_orpo/checkpoint-xxx\--merge_loratrue\--push_to_hubtrue\--hub_model_idmyname/med-model\--quant_methodawq\--quantization_bit4五、参数避坑指南高频错误dataset 写错路径 → 找不到文件columns 映射错误 → 格式不匹配max_length 太小 → 样本被截断quant_bits4 但不支持 → 换成 bnbLoRA 训练用 full 学习率 → 不收敛推送模型忘记填 hub_token六、总结MS-Swift 命令行参数虽然多但真正高频使用的不到 30 个。只要掌握模型参数数据参数训练参数LoRA 参数量化/导出参数就能完成SFT → RLHF → 量化 → 部署 → 推送 ModelScope全流程。

更多文章