LLM模型调校积百少成多的成本课题?捷豹路虎怎解

LLM模型调校积百少成多的成本课题?捷豹路虎怎解

捷豹路虎在今年初一场活动中,公开了拥抱生成式AI的经验,展示如何只训练一套内部用的客制化LLM模型,来通吃不同任务的做法,以节省日後大量微调小任务专属模型训练的後续费用。

他们有一个服务车主的车用系统Pivi Pro,可提供对谈式的互动介面,来查询车主休旅车的各项操作设定,例如车主会问:「假日要到阿尔贝斯山健行,想到达山上小木屋,但路面都是很深的软雪,要怎麽设定休旅车的驾驶模式。」不过,真正的挑战是,就这样一句话,车主会有百百种讲法。

捷豹路虎提供的车主手册,内有非常详细的操控文件,也都可以透过这个车上App来查询,但是,车主得问对问题,用对关键字,才能搜寻得到。捷豹路虎不希望提供查询的对话服务乱讲与开车无关的空话,只能提供车主参考文件范围的内容。

所以,捷豹路虎将大量文件变成嵌入向量,连车主查询文字也转换成嵌入向量,来进行相似度比对,再提估最接近的内容给车主。他们先用BERT模型来做,效果还不错,蒐集一些技术文件,车主资料,顾客意见调查的资料等,训练出一款自己的模型称为CarBERT。但还不够好,因为当时他们所用的BERT参数量只有3.4亿个参数,他们想要用1,750亿参数的GPT 3来试看看。

但是,这两者的参数量差了500倍,他们评估,自己不可能重头训练出一套自己的NLP模型。而且这个作法还有一个课题,今天是车主文件的微调,如果是另一个主题的内容,或是另一种任务就得再微调一份新的模型。因为微调後的LLM模型,是客制化的专属模型,无法用於其他用途,换句话说,微调後的客制化LLM模型,没有通用性。

捷豹路虎的担心是,日後若想要将SaaS形式ChatGPT类技术服务,客制运用到不同的任务用途,每一次,只要需求、任务有些微不同,就需要一笔少少的微调费用,看似不多,但积数百个「少」会变成真的「多」,这个不可预估总成本的不确定感,让他们转而思考,能不能从Prompt提示问题下手。後来,他们尝试了另一种提示工程的优化做法,不是微调语言模型,而是靠「微调提示文字(Prompts)」,来提高准确度和限定回答领域。

例如,车况设定有4种,a,b,c,d,a用於沙地,b用於雨天,c用於软雪,d用於结冰,现在车主想问深软雪的设定,若可以将整套车主文件都输入,作为提示文字,再来比对车主的问题就可以比较准确的比对出更合适的车主文件内容。
可是,当时捷豹路虎遇到的技术困难是,提示文字的上限是4千个Token,大概3千多个中文字,放不下那麽多字的车主文件内容,怎麽解?

捷豹路虎用了Nvidia的大型语言模型框架Nemo,提供的13亿参数GPT3预训练模型,但是这次他们用了P-Tuning作法,输入的是一个「提示向量」,而不只是提示文字。
因为提示文字实际放到模型中来进行推论时,还是得先转换成一个嵌入向量矩阵来进行推论计算。

捷豹路虎所用的P-TUNING作法就是,直接将想要输入的提示文字,先来训练出一个输入用的提示向量矩阵,这个方法也是业界会用的作法,称为P-Tuning调校。换句话说,不是微调模型,而是透过优化提示向量的做法,来提高准确度。模型微调和P-Tuning调校,两者也可以搭配使用。

使用P-Tuning调校最大的好处是,捷豹路虎认为,可以先用大量企业内部资料,微调出一个内部客制化的GPT,然後再针对不同的小任务,改用提示向量优化作法P-tuning,微调输入的提示向量来达到一套小任务的客制化模型,来实现,一套内部模型,通吃不同任务的做法,来省下日後大量微调小任务专属模型训练的费用。

 

币安怎么在手机上注册

0 0 投票数
Article Rating
订阅评论
提醒
guest
0 Comments
内联反馈
查看所有评论
0
希望看到您的想法,请您发表评论x