所有工程建设前会在哪个网站公式,制造行业网站建设,东莞做小程序的公司,形象设计简介
本文介绍模型蒸馏技术#xff0c;通过大参数模型(Qwen3-235B)生成训练数据#xff0c;微调小参数模型(Qwen3-0.6B)#xff0c;使其在提取结构化信息等特定任务中达到接近大模型的表现。文章详细展示了数据准备、模型微调、效果验证的完整流程#xff0c;证明微调后模…简介本文介绍模型蒸馏技术通过大参数模型(Qwen3-235B)生成训练数据微调小参数模型(Qwen3-0.6B)使其在提取结构化信息等特定任务中达到接近大模型的表现。文章详细展示了数据准备、模型微调、效果验证的完整流程证明微调后模型准确率从14%提升至98%显著降低推理成本同时保持高性能。大参数模型效果好但成本高、响应慢。为了在保障效果的同时提升推理速度、降低成本可首先借助大参数模型完成目标任务的数据生成并使用这些数据微调小参数模型使其在特定任务中达到接近大参数模型的表现这一过程也被称为模型蒸馏。本方案将以从一句话中提取结构化信息如收件人、地址、电话为例演示如何通过模型蒸馏让 Qwen3-0.6B 模型在此任务上达到大参数模型的表现。先来看效果对比吧。经过了模型优化后识别能力确实有所提高。当前《基于 GPU 云服务器微调 Qwen3 模型》技术方案开放免费体验您只需要点击文末阅读原文即可开启。如果您想免费体验更多技术解决方案可以登录aliyun.com点击权益中心-解决方案免费试用领取100点试用点。一、方案路线1. 数据准备由于真实的物流填单数据涉及到用户隐私我们将使用一批虚拟地址描述信息作为输入并使用 Qwen3-235B-A22B 作为教师模型提取结构化的信息作为输出。建议您在模型微调时使用业务场景的真实数据。2. 模型微调在获取教师模型的输入输出后我们可以使用该数据来微调 Qwen3-0.6B 模型提升其在此任务场景下的表现。这里我们将使用魔搭社区提供的 ms-swift 框架即使您不了解微调算法的细节依然可以借通过一行命令来完成微调任务。3. 效果验证最后为了确保模型在真实业务场景中的稳定性与准确性建议在部署到生产环境前准备评测数据与评测标准对微调后的模型进行效果验证。二、配置计算环境大模型微调对计算环境有较高要求需配套安装合适版本的 GPU 驱动、CUDANVIDIA的并行计算平台和编程模型和 cuDNNNVIDIA的深度神经网络加速库。手动通过命令行安装不仅步骤繁琐而且容易出错。为提升部署效率您可在创建 GPU 云服务器实例时选择带有 GPU 驱动的镜像省去复杂的命令行操作快速启动微调任务。我们推荐用免费试用的方式体验本方案。免费试用助您零成本体验本解决方案但试用期间创建的资源与数据在结束后会被清除。免费试用的时长有限若需长期使用云资源可以参考https://www.aliyun.com/solution/tech-solution-deploy/2925027?utm_contentg_1000405783 页面中手动创建部分。根据页面提示领取试用点并创建资源右侧将实时展示资源创建进程。可能需要等待几分钟。连接 GPU 云服务器在跳转页面中使用左侧的登录名称与登录密码登录。单击左侧的远程连接按钮再单击登录即可连接到 GPU 云服务器。三、下载并微调模型微调模型通常上手门槛较高。通过魔搭社区提供的 ms-swift 框架您仅需一句命令即可快速启动微调任务大幅降低操作复杂度。1.安装依赖本方案依赖以下两个核心组件ms-swift魔搭社区提供的训练框架支持模型的下载、微调和权重合并极大简化了微调流程。vllm用于部署微调后的模型支持高性能推理服务不仅方便验证微调效果还可用于生成 API供业务方直接调用。您可以在终端运行以下命令来安装依赖pip3 install vllm0.9.0.1 ms-swift3.5.0安装依赖大约需要5分钟。2.模型微调运行以下命令可以完成模型下载、微调、合并权重的操作# 进入 /root 目录 cd /root \ # 下载微调脚本 sft.sh curl -f -o sft.sh https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250623/cggwpz/sft.sh \ # 执行微调脚本 bash sft.sh模型微调核心代码如下您可以在 sft.sh 文件中看到dataset 参数指定的’train.jsonl’为数据准备步骤获得的训练集。swift sft \ --model Qwen/Qwen3-0.6B \ --train_type lora \ --dataset train.jsonl \ --torch_dtype bfloat16 \ --num_train_epochs 10 \ --per_device_train_batch_size 20 \ --per_device_eval_batch_size 20 \ --learning_rate 1e-4 \ --lora_rank 8 \ --lora_alpha 32 \ --target_modules all-linear \ --gradient_accumulation_steps 16 \ --save_steps 1 \ --save_total_limit 2 \ --logging_steps 2 \ --max_length 2048 \ --output_dir output \ --warmup_ratio 0.05 \ --dataloader_num_workers 4微调模型大约需要10分钟期间会实时打印如下所示的模型在训练集与验证集的损失变化情况出现以下信息表明模型微调已完成✓ swift export 命令执行成功 检查合并结果... ✓ 合并目录创建成功: output/v0-xxx-xxx/checkpoint-50-merged ✓ LoRA权重合并完成 合并后的模型路径: output/v0-xxx-xxx/checkpoint-50-merged完成该步骤会在output/v0-xxx-xxx路径下生成带有 merged 后缀的文件夹为微调后的模型文件。您可以在output/v0-xxx-xxx路径下中找到 images 文件夹打开 train_loss.png反映训练集损失 与 eval_loss.png反映验证集损失根据损失值的变化趋势初步判断当前模型的训练效果在结束训练前 train_loss 与 eval_loss 仍有下降趋势欠拟合您可以增加 num_train_epochs训练轮次与训练深度正相关 参数或适当增大 lora_rank低秩矩阵的秩秩越大模型能表达更复杂的任务但更容易过度训练的值后再进行训练加大模型的对训练数据的拟合程度在结束训练前 train_loss 持续下降eval_loss 开始变大过拟合您可以减少 num_train_epochs 参数或适当减小lora_rank的值后再进行训练防止模型过度训练在结束训练前 train_loss 与 eval_loss 均处于平稳状态良好拟合模型处于该状态时您可以进行后续步骤。本方案的 train_loss 与 eval_loss 变化如下表所示train_losseval_loss如果训练失败您也可以尝试调整 learning_rate等参数。四、验证效果在将微调后的模型部署到实际业务环境前我们建议先对其效果进行系统性的评测。只有通过充分验证才能确保模型具备良好的稳定性和准确性避免上线后出现意料之外的问题。1.准备测试数据测试数据的格式应与训练数据一致以确保评测的可比性。测试数据应使用区别于训练数据的全新样本用于测试。这样可以更准确地反映模型在新数据上的泛化能力避免因“见过的样本”导致分数虚高。您可以运行以下命令获取我们准备好的测试数据cd /root \ # 下载测试数据 test.jsonl curl -o test.jsonl https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250610/mhxmdw/test_with_system.jsonl以下两行示例样本供您参考{messages: [{role: system, content: 你是一个专业的信息抽取助手专门负责从中文文本中提取收件人的JSON信息包含的Key有province省份、city城市名称、district区县名称、specific_location街道、门牌号、小区、楼栋等详细信息、name收件人姓名、phone联系电话}, {role: user, content: 电话23204753945:大理市大理市人民路25号 大理古城国际酒店 3号楼:收件者段丽娟}, {role: assistant, content: {\province\: \云南省\, \city\: \大理市\, \district\: \大理市\, \specific_location\: \人民路25号 大理古城国际酒店 3号楼\, \name\: \段丽娟\, \phone\: \23204753945\}}]} {messages: [{role: system, content: 你是一个专业的信息抽取助手专门负责从中文文本中提取收件人的JSON信息包含的Key有province省份、city城市名称、district区县名称、specific_location街道、门牌号、小区、楼栋等详细信息、name收件人姓名、phone联系电话}, {role: user, content: 天津市河西区珠江道21号金泰大厦3层 , 接收人慕容修远 , MOBILE22323185576}, {role: assistant, content: {\province\: \天津市\, \city\: \天津市\, \district\: \河西区\, \specific_location\: \珠江道21号金泰大厦3层\, \name\: \慕容修远\, \phone\: \22323185576\}}]}2.设计评测指标评测标准应紧贴实际业务目标。以本方案为例除了判断生成的 JSON 字符串是否合法还应该关注对应 Key、Value 的值是否正确。本案例评测方法核心代码def compare_address_info(actual_address_str, predicted_address_str): 比较两个JSON字符串表示的地址信息是否相同 try: # 解析实际地址信息 if actual_address_str: actual_address_json json.loads(actual_address_str) else: actual_address_json {} # 解析预测地址信息 if predicted_address_str: predicted_address_json json.loads(predicted_address_str) else: predicted_address_json {} # 直接比较两个JSON对象是否完全相同 is_same actual_address_json predicted_address_json return { is_same: is_same, actual_address_parsed: actual_address_json, predicted_address_parsed: predicted_address_json, comparison_error: None } except json.JSONDecodeError as e: return { is_same: False, actual_address_parsed: None, predicted_address_parsed: None, comparison_error: fJSON解析错误: {str(e)} } except Exception as e: return { is_same: False, actual_address_parsed: None, predicted_address_parsed: None, comparison_error: f比较错误: {str(e)} }3.评测初始模型效果我们针对 Qwen3-0.6B 模型设计了多版提示词选取效果最好的系统提示词为你是一个专业的信息抽取助手专门负责从中文文本中提取收件人的结构化信息。 ## 任务说明 请根据给定的输入文本准确提取并生成包含以下六个字段的JSON格式输出 - province: 省份/直辖市/自治区必须是完整的官方名称如河南省、上海市、新疆维吾尔自治区等 - city: 城市名称包含市字如郑州市、西安市等 - district: 区县名称包含区、县等如金水区、雁塔区等 - specific_location: 具体地址街道、门牌号、小区、楼栋等详细信息 - name: 收件人姓名完整的中文姓名 - phone: 联系电话完整的电话号码包括区号 ## 抽取规则 1. **地址信息处理** - 必须准确识别省、市、区的层级关系 - 省份名称必须使用官方全称如河南省而非河南 - 直辖市的province和city字段应该相同如都填上海市 - specific_location应包含详细的街道地址、小区名称、楼栋号等 2. **姓名识别** - 准确提取完整的中文姓名包括复姓 - 包括少数民族姓名 3. **电话号码处理** - 提取完整的电话号码保持原有格式 ## 输出格式 请严格按照以下JSON格式输出不要添加任何解释性文字 { province: 省份名称, city: 城市名称, district: 区县名称, specific_location: 详细地址, name: 收件人姓名, phone: 联系电话 }使用上述系统提示词与测试样本对没有微调的本地 Qwen3-0.6B 模型进行评测# 进入 /root 目录 cd /root \ # 下载并执行验证脚本 curl -o evaluate_without_sft.py https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250617/ksrneh/evaluate_without_sft.py \ curl -o evaluate_without_sft.sh https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250617/cmvbcz/evaluate_without_sft.sh \ bash evaluate_without_sft.sh执行后可以看到尽管优化了提示词测试样本准确率仅有14%所有预测完成! 结果已保存到 predicted_labels_without_sft.jsonl 样本数: 400 条 响应正确: 56 条 响应错误: 344 条 评估脚本运行完成4.验证微调后模型效果使用测试样本对微调后的模型进行评测# 进入 /root 目录 cd /root \ # 下载并执行验证脚本 curl -o evaluate.py https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250612/bzszyc/evaluate.py \ curl -o evaluate.sh https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250612/xtgxql/evaluate.sh \ bash evaluate.sh针对微调后的模型我们使用了更简单的提示词这可以提升模型推理时的响应速度你是一个专业的信息抽取助手专门负责从中文文本中提取收件人的JSON信息包含的Key有province省份、city城市名称、district区县名称、specific_location街道、门牌号、小区、楼栋等详细信息、name收件人姓名、phone联系电话即使使用了更简单的提示词微调模型的准确率也达到 98%相比微调前的 14% 准确率有了大幅提升。所有预测完成! 结果已保存到 predicted_labels.jsonl 样本数: 400 条 响应正确: 392 条 响应错误: 8 条 评估脚本运行完成至此您已经成功完成了一次模型微调。如果您需要在生产环境中使用可以点击文末阅读原文参考后续内容。您也可以通过在aliyun.com 直接搜索“10分钟微调让0.6B模型媲美235B模型”即可直达技术解决方案获得更多部署方案。五、如何学习AI大模型我在一线互联网企业工作十余年里指导过不少同行后辈。帮助很多人得到了学习和成长。我意识到有很多经验和知识值得分享给大家也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限很多互联网行业朋友无法获得正确的资料得到学习提升故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。这份完整版的大模型 AI 学习和面试资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】第一阶段从大模型系统设计入手讲解大模型的主要方法第二阶段在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用第三阶段大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统第四阶段大模型知识库应用开发以LangChain框架为例构建物流行业咨询智能问答系统第五阶段大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型第六阶段以SD多模态大模型为主搭建了文生图小程序案例第七阶段以大模型平台应用与开发为主通过星火大模型文心大模型等成熟大模型构建大模型行业应用。学会后的收获• 基于大模型全栈工程实现前端、后端、产品经理、设计、数据分析等通过这门课可获得不同能力• 能够利用大模型解决相关实际项目需求 大数据时代越来越多的企业和机构需要处理海量数据利用大模型技术可以更好地处理这些数据提高数据分析和决策的准确性。因此掌握大模型应用开发技能可以让程序员更好地应对实际项目需求• 基于大模型和企业数据AI应用开发实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能 学会Fine-tuning垂直训练大模型数据准备、数据蒸馏、大模型部署一站式掌握• 能够完成时下热门大模型垂直领域模型训练能力提高程序员的编码能力 大模型应用开发需要掌握机器学习算法、深度学习框架等技术这些技术的掌握可以提高程序员的编码能力和分析能力让程序员更加熟练地编写高质量的代码。1.AI大模型学习路线图2.100套AI大模型商业化落地方案3.100集大模型视频教程4.200本大模型PDF书籍5.LLM面试题合集6.AI产品经理资源合集获取方式有需要的小伙伴可以保存图片到wx扫描二v码免费领取【保证100%免费】