无门槛精调模型解析!如何从0-1开造一个“吉祥话Agent” | 挑战“千帆杯”第2期, 拿走10万奖金!

大模型爆火之后应用落地十分之快,正在向我们生活中的各种场景深入渗透。

就像对我们来说最重要的春节,每逢过年这样的节日场景,拜年说吉祥话必不可少。但亲戚朋友一大帮,每次复制粘贴一个模版太尴尬。现在有了大模型,可以考虑用大模型做一个吉祥话“生成器”,实现批量化生产,把吉祥话说得不重样又漂亮,完美惊艳亲戚。

百度智能云注意到了春节这类节日应用场景的需求,设计了千帆杯AI原生应用原生开发挑战赛的第二期赛题: 贺岁灵感模型 — 精调一个可以生成贺岁文案的模型。

我试着解析了 这道赛题,本文跟大家分享一下我的解题思路, 希望能给有相关兴趣的开发者小伙伴一些启发, 一起交流大模型精调技巧。

赛题介绍及要求

赛题链接:

https://cloud.baidu.com/qianfandev/topic/268516

下面我们先简单描述下具体的内容和参赛任务:

赛题内容:

生成一个可制作贺岁文案内容的精调模型(限定使用ERNIE Speed,通过对模型精调使其保持原有能力的同时,具备准确理解并执行文案创作中创作长度相关指令的能力)。

输入:包含创作长度要求的对文案创作的需求描述文本。(如:如何应对生成给领导的拜年文案;作为“I”人,如何在家庭群中发送讨长辈欢心的50字以内拜年语;如果你作为家长,如何辅助指导孩子完成“300字过年作文”的作业…)

输出:严格符合长度要求且满足其他创作需要的创作内容。

(ERNIE-Speed是百度自主研发的高效语言模型,基于海量高质数据训练,具有更强的文本理解、内容创作、对话问答等能力)

参赛任务:

通过在百度智能云千帆大模型平台使用平台上的各种模型调优工具,结合相关数据,基于ERNIE-Speed调优生成符合赛题主题要求且效果优秀的模型。

补充说明:官方提供「贺岁文案」基础数据集,开发者需要在此基础上做延伸和扩充(模型训练最少需要100条数据)

点击此处下载数据集

微调后的大模型需可访问在千帆大模型平台部署服务EndPoint、所有调优过程数据,超参设置和步骤描述,确保评审过程中必要的复现。

本次赛题必须使用百度智能云千帆大模型平台(千帆Modelbuilder)完成开发。

解题思路

根据赛题我们可以看出, 这是一个基于基准大模型(这里要求的是ERNIE Speed) 进行的精调任务。 基准大模型是有通用能力的模型, 但我们在实际使用中, 有时往往需要的是具备专精某个领域行业知识的大模型。

我们可以将大模型理解成一位非常有经验的主厨。这位主厨掌握了各地的烹饪技巧,能够烹饪出各式各样的美食,就像大模型通过学习大量的文本数据,掌握了广泛的语言模式和知识。

现在,你想要让这位主厨制作新菜系的菜肴——比如,你的家乡特色菜。这个过程就需要进行“精调”(Fine-tuning)。这道赛题里,“贺岁文案任务” 就相当于这个“家乡菜”。

精调的过程通常如下:

1、选择数据(食材和配方):特色菜的食材和配方,这就像选择用于模型精调的数据集。食材和配方要尽可能地精确和高质量,确保它们能够代表这道菜的核心特色。

2、调整模型(烹饪训练):接着,主厨会学习配方,烹饪成你想要的特色菜。这个过程就是在特定数据集上训练模型,通过不断实践和调整(即更新模型的参数),使主厨(模型)学会如何精确地完成这个烹饪任务。

3、评估改进(品尝调整):烹饪完成后,你会品尝这道菜,根据味道进行反馈。主厨根据你的反馈继续调整烹饪方法,直到这道菜达到满意的味道。在模型精调中,这个过程对应在验证集上评估模型的性能,根据性能反馈调整训练策略,以优化模型的输出。

通过这一系列的步骤,原本就已经非常出色的主厨(预训练模型)现在成为了烹饪你家乡特色菜的专家。同样,通过精调过程,预训练模型能够在特定的任务或领域(比如特定风格的文本生成、特定行业的术语理解等)上表现得更加出色。

数据集:

这里,官方提供了「贺岁文案」基础数据集,数据集是由 prompt 和 response构成的, 但数量比较小, 我们需要自己对数据进行扩充。

[{"prompt": "假如你是企业CEO,请以正式鼓励的风格为全公司员工撰写50字的春节祝福语。", "response": [["亲爱的团队成员们,值此新春佳节之际,向你们致以诚挚的祝福和感谢。过去一年,我们共同努力,取得了骄人的成绩。愿新的一年里,家庭幸福、事业成功,我们携手迎接更加辉煌的明天。祝大家春节快乐,万事如意!"]]}]

千帆Modelbuilder 可以很方便地上传数据集。
在这里插入图片描述
能很方便地进行数据增强, 轻松扩充你的数据集。
在这里插入图片描述

模型精调:

针对模型精调,我们通常使用两种方法, SFT 和 RLHF。

SFT 就是监督精调, 模型通过学习我们数据集中的prompt 和response 问答对, 来完成监督学习。

RLHF是人类反馈强化学习, RLHF需要人对模型生成的文本进行评价,提供正向或负向的反馈。之后模型会根据人反馈的信息进行强化学习训练。在这个过程中,模型通过尝试不同的语言输出并根据人的反馈来调整其行为,目的是最大化获得正反馈的概率。这种训练方法可以帮助模型更好地理解人类的偏好和复杂的语言表达。

由于本次的任务较为简单,并且数据量较小,我们可以选择使用SFT来精调模型。

千帆Modelbuilder“ 模型精调”中可以直接选择SFT, 创建SFT任务。 选择题目要求的ERNIE-Speed, 在训练配置中可以选择训练方法和相应的参数配置。

全量更新

在SFT的全量更新中,模型的所有(或大部分)参数都会在训练过程中进行更新。这意味着,基于新的训练数据,模型的权重会根据反向传播算法进行调整。这种方法允许模型在新任务上进行深入学习,因为它可以调整其所有内部表示来适应新的数据。

优点:可以充分利用新的训练数据来优化模型,有潜力在新任务上达到更好的性能。

缺点:需要大量的计算资源,因为几乎所有的参数都需要更新。对于非常大的模型,这可能非常耗时和昂贵。同时,全量更新也增加了过拟合的风险。

在这里插入图片描述

LoRA

Low-Rank Adaptation (LoRA)是一种更为节省资源的参数更新策略。在LoRA中,并不是更新模型的所有参数,而是只更新模型架构中特定部分的参数,这通常通过引入额外的低秩(low-rank)矩阵来实现。这些低秩矩阵作为模型原有参数的补充,通过训练来调整模型的行为,而原始的模型参数保持不变。

  • 优点:相比于全量更新,LoRA需要更新的参数数量少得多,这意味着需要的计算资源更少,训练过程更快。这种方法还可以减少过拟合的风险,因为模型的大部分结构保持不变,从而保留了预训练过程中获得的泛化能力。
  • 缺点:由于只有部分参数被更新,模型在适应新任务时的灵活性可能不如全量更新那样高。这可能限制模型在某些特定任务上的最大性能。

大家可以根据自己的数据选择适合的方式或者将这两种方式进行对比, 看看哪个能达到更好的效果。

在选择好参数后, 点击确定就可以开始训练. 训练完成后可以查看评估报告, 训练过程可视化呈现。

在我们训练得到满意的模型之后可以发布模型。

之后就可以通过模型服务->在线服务 发布服务了。

在完成发布之后可以通过体验中心选择发布的服务体验, 或者根据使用文档将通过调用服务的服务地址,来调用服务使用, 这里篇幅有限我们就不展开了.

写在最后

不知道大家看完之后有没有想用千帆Modelbuilder 训练自己的贺岁灵感模型的冲动呢? 贺岁灵感模型只是其中一个场景, 同样的场景也有很多, 比如朋友圈文案, 商品宣传文案等。 希望这次赛题解析可以激发大家的灵感,可以实际动手借助千帆Modelbuilder这样的工具来创造和训练适合自己场景的灵感模型。

我也非常鼓励大家积极参与千帆杯AI原生应用开发挑战赛。其实对于开发者来说,参加大模型实际场景的赛题活动是一个非常好的机会,既能够帮你深度参与到大模型浪潮,又可以借此机会试炼自己从0-1开发AI原生应用的能力。还能收获到奖金支持!千帆杯每期赛题TOP1获胜者可以获得10万奖金,第3期赛题发布在即,感兴趣的小伙伴可以保持关注~

one more thing

今天上午,百度智能云在千帆产品发布会上发布了包括ERNIE Speed、ERNIE Lite、ERNIE Tiny在内,参数量由大到小的三款轻量级大模型,帮助企业实现“减量不减效”,节约不必要投资。其中,ERNIE Speed作为三款轻量级大模型中的“大个子”,推理场景下拥有最高128k的上下文长度,在处理知识问答等任务时,能够更好的处理上下文的依赖关系,生成更加连贯和准确的预测或回答。同时,针对特定场景可以将ERNIE Speed作为基座模型进行精调,模型效果可以追平甚至超过旗舰级大参数规模大模型,效价比大幅提升。感兴趣的开发者可以上手体验新功能了!

  • 0
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值