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

文章目录

案例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

python 复制代码
pip install ms-swift -U

进到"ft-selfrefresh"文件夹

python 复制代码
cd ft-selfrefresh

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

python 复制代码
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里面。

#使用交互式命令行进行推理

python 复制代码
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的模型,高效训练,改个模型名字,选择之前的训练集,和测试集

我的数据比较多,费用可能贵了点,大家可以试试减少数据,效果一样。

训练数据:

部署模型



测试


相关推荐
SHIPKING3937 小时前
【机器学习&深度学习】向量模型与重排序模型:RAG 的双引擎解析
人工智能·深度学习·机器学习·向量模型·重排序模型
飞哥数智坊7 小时前
元宝AI:微信中帮我看阅兵的“朋友”
人工智能
lypzcgf8 小时前
Coze源码分析-工作空间-资源查询-后端源码
人工智能·后端·系统架构·开源·go
海天一色y8 小时前
动手学深度学习
人工智能·深度学习
恒点虚拟仿真8 小时前
AI+虚拟仿真实践教学,照亮智慧能源教育之路
人工智能·ai·能源·虚拟仿真实验·人工智能+虚拟仿真·ai教学
fzy00858 小时前
教育项目管理工具新趋势:可视化与自动化如何提升效率?
大数据·人工智能·自动化
AI Echoes8 小时前
LangGraph 重要注意事项和常见问题
人工智能·python·langchain·agent
AIbase20249 小时前
GEO排名优化:AI如何重新定义搜索引擎的可见性规则?
人工智能·搜索引擎
hanniuniu139 小时前
F5发布后量子API安全解决方案,以AI驱动全面防护应对量子计算威胁
人工智能·安全·量子计算