阿里云百炼SFT微调实践

大模型微调全流程指南

1. 场景识别

用户进行SFT前需要对应用场景进行识别和分析,一般进行模型微调的诉求是希望提升对应业务场景的能力,用户需要明确哪些能力是需要进行重点提升的。

  • 场景划分上来讲,以垂类场景进行划分可分为教育、医疗、金融、法律、电商、旅游、娱乐、人力资源、物流与运输等场景。
  • 以语言能力进行划分,可分为信息抽取、阅读理解、创意生成、角色扮演、推理等能力维度。

场景识别和分析的目的在于可以帮助用户更好地去界定需要通过模型微调去提升什么能力,从而更有针对性地进行数据准备、微调配置和评测构建。

2. 数据准备

SFT数据需要根据对应场景能力要求进行准备,比如公文写作场景就需要准备不同公文写作主题的问答数据,数学作业助手场景就需要准备不同类型的数学考题问答数据。准备数据时候需要特别关注数据质量多样性两个方面,需要确保数据质量相对较好,否则基于质量差的数据进行SFT会拿到反向效果,同时需要注意保持数据中问题和回答的多样性,数据过于雷同会导致模型过拟合以致效果不及预期。

用户经常问到的一个问题是进行有效SFT需要多大数据量,严谨来说目前没有一个广泛认可的答案,通用能力对齐方向,LIMAAlpaGasus等相关工作表示几千条高质量SFT数据就可以拿到较好的对齐效果,但另一方面在开源大模型实践上,前沿大模型正用到越来越多的数据进行SFT,比如Llama 3模型用到了百万级别的SFT数据。

经验性来讲,普通场景上进行有效SFT一般至少需要上千条精标数据,不同场景和要求下所需的数据量会有差别。需要特别注意的是训练效果好坏并不是说只取决于数据量,也尤其需要考虑数据的多样性和质量,大量内容非常雷同的数据可能不如少量内容较为多样的数据,大量质量差的数据可能不如少量质量好的数据。

以小学数学作业助手应用场景为例,我们需要准备对应的问答数据,数据格式要求上目前百炼平台上SFT模块采用的是ChatML格式,两个简单的SFT数据例子如下所示。

{"messages": [{"role": "user", "content": "B
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值