利用ms-swift微调和百炼平台微调大模型

发布于:2025-09-03 ⋅ 阅读:(18) ⋅ 点赞:(0)

案例1:自我认知(利用ms-swift微调)

MS-SWIFT简介

🍲 ms-swift是魔搭社区提供的大模型与多模态大模型微调部署框架,现已支持500+大模型与200+多模态大模型的训练(预训练、微调、人类对齐)、推理、评测、量化与部署。其中大模型包括:Qwen3、Qwen3-MoE、Qwen2.5、InternLM3、GLM4.5、Mistral、DeepSeek-R1、Yi1.5、TeleChat2、Baichuan2、Gemma2等模型,多模态大模型包括:Qwen2.5-VL、Qwen2-Audio、Llama4、Llava、InternVL3、MiniCPM-V-4、Ovis2.5、GLM4v、Xcomposer2.5、Yi-VL、DeepSeek-VL2、Phi3.5-Vision、GOT-OCR2等模型。

🍔 除此之外,ms-swift汇集了最新的训练技术,包括LoRA、QLoRA、Llama-Pro、LongLoRA、GaLore、Q-GaLore、LoRA+、LISA、DoRA、FourierFt、ReFT、UnSloth、和Liger等轻量化训练技术,以及DPO、GRPO、RM、PPO、GKD、KTO、CPO、SimPO、ORPO等人类对齐训练方法。ms-swift支持使用vLLM、SGLang和LMDeploy对推理、评测和部署模块进行加速,并支持使用GPTQ、AWQ、BNB等技术对大模型进行量化。ms-swift还提供了基于Gradio的Web-UI界面及丰富的最佳实践。
打开魔塔社区,在左侧“我的Notebook”里面,选择方案2,然后按启动,新用户有35个小时给我们霍霍。
在这里插入图片描述

打开百炼平台Notebook

两分钟后点击“查看Notebook”在这里插入图片描述
左边右击,创建文件夹,命名“ft-selfrefresh”, 然后点击右边控制台“Terminal”
在这里插入图片描述

安装ms-swift

pip install ms-swift -U

在这里插入图片描述
进到“ft-selfrefresh”文件夹

cd ft-selfrefresh

10分钟在单卡3090上对Qwen2.5-7B-Instruct进行自我认知微调:

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 MichaelGor \
    --model_name Michael-service-robot

其中model_author可以改成自己名字,model_name改成大模型要自我认知的名字
微调结束后可以看到ft-selfrefresh文件夹下面多了output文件夹
在这里插入图片描述
在这里插入图片描述
打开output文件夹,里面还有个v0-****的文件点击进入,打开logging.jsonl文件,首查“best”关键字,就可以看到我们这次最好的model保存到第94个checkpoint里面。
在这里插入图片描述
#使用交互式命令行进行推理

CUDA_VISIBLE_DEVICES=0 \
swift infer \
    --adapters output/v0-20250821-160318/checkpoint-94 \
    --stream true \
    --temperature 0 \
    --max_new_tokens 2048

在这里插入图片描述

输入“你是谁?”

在这里插入图片描述
然后它就是识别自己是叫“Michael-service-robot”,是由MichaelGor开发出来的

案例2:意图识别(利用百炼平台微调)

背景:

如果我用普通的大模型,想让它分析意图,是不能直接做到的,比如,用户问:星期五早上九点叫醒我。拿通义千问2.5-7B做例子,它就会有如下回复。但我想让它预测我们的意图呢?
在这里插入图片描述

数据集:

https://huggingface.co/datasets/SetFit/amazon_massive_intent_zh-CN
在这里插入图片描述
这是在huggingface的数据集,是智能音箱的意图识别,比如说用户问:星期五早上九点叫醒我。大模型应该反馈给我“报警器”,然后实现后续的功能。

百炼数据集

在这里插入图片描述

训练集

将huggingface下载到的训练集按照百炼的格式转换,如图所示
在这里插入图片描述
在这篇文章资源的“MyTrain.jsonl”
在这里插入图片描述

上传训练集到百炼
在这里插入图片描述

测试集

将huggingface下载到的测试集按照百炼的格式转换,如图所示
在这里插入图片描述
在这篇文章资源的“MyValidation.xlsx”
在这里插入图片描述

上传测试集到百炼
在这里插入图片描述

百炼微调

进入百炼平台,点击“模型调优”,点击“训练新模型”。
在这里插入图片描述
选择千问2.5, 7B的模型,高效训练,改个模型名字,选择之前的训练集,和测试集
在这里插入图片描述
在这里插入图片描述
我的数据比较多,费用可能贵了点,大家可以试试减少数据,效果一样。

训练数据:

在这里插入图片描述

部署模型

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

测试

在这里插入图片描述
在这里插入图片描述


网站公告

今日签到

点亮在社区的每一天
去签到