chatgpt 输入文本没有反应 被全球追捧的ChatGPT,在实际AI应用场景表现如何?

默认分类1年前 (2023)发布 admin
5,020 0
ChatGPT国内版

作者 |詹坤林,58技术委员会AI分会主席,TEG—AI Lab 负责人

策划 | 刘燕

本文内容为2023年2月14在58技术委员会AI分会AI技术沙龙《科普和应用初探》上的分享总结。

在2022年11月30日发布了,它是一个基于大模型技术实现的通用聊天机器人,它可以用来写作、翻译、润色句子、做事实性问答、执行文本分类/实体抽取/阅读理解/文本摘要等各类NLP任务,甚至可以写SQL、写代码,几乎无所不能。

自发布之后一直大火至今,引起行业震动,我们也持续在跟进,体验其功能,了解其技术原理,并基于爬虫技术封装了 API,在实际NLP应用场景下对比了和自研技术的效果

本文从应用角度出发,给出一些对的思考。

一、GPT 到 的演进

于2017年在《 Is All You Need》一文中发布了,此后对NLP、语音、CV等AI领域产生了深远影响。2018年6月,发布了GPT( Pre-)[1]——基于 结构和无监督预训练方法实现的生成式预训练语言模型,也即GPT-1。

2018年10月,发布了BERT( from )[2],BERT是基于 结构的预训练语言模型,在多项NLP任务上取得SOTA效果,开启了自然语言处理「预训练+微调」的新范式,是自然语言处理发展史上的里程碑。

BERT自发布之后在学术界和工业界均产生了重大影响,大量论文和应用基于BERT实现,谷歌学术上BERT的论文引用数也远超GPT,近几年大模型技术火热,国内外发布的大部分大模型也是基于BERT技术路线来实现。

持续升级优化GPT,于2019年2月发布了GPT-2[3],于2020年6月发布了拥有1750亿参数的超大模型GPT-3[4],轰动一时,GPT-3不需要像BERT那样针对特定任务做微调(Fine-tune),一个大模型即可在一系列自然语言处理任务上取得优秀的效果,结合Few-Shot少样本学习能力,在部分任务上甚至接近或者达到当时的SOTA效果。

使用BERT执行某个具体场景下的NLP任务如文本分类时,需要人工标注该场景下的一定量数据,然后微调得到一个文本分类模型应用于分类,即重新更新了模型,对于不同的任务均要这样做。

而使用GPT-3执行NLP任务时,不需要重新更新模型,只需要向其发送一句提示()例如「请给这段文字分类,类别标签有A、B、C」即可完成分类,或者可以使用少量标注数据作为例子告诉模型,能够取得更优的效果,在这一点上GPT-3要比BERT更加易用。值得说明的是,自GPT-3开始,没有像GPT-1、GPT-2那样发布开源代码,而是以API的形式提供商业化服务,具体见。

BERT和执行任务的区别

是从GPT-3发展而来的,符尧等人在《拆解追溯 GPT-3.5 各项能力的起源》一文[10]中总结了GPT-3到GPT-3.5的进化树,GPT-3在 API中的模型名称为(达芬奇),之后经历在代码上训练、指令微调、RLHF( from Human ,基于人类反馈的强化学习)等过程,进化成,详细内容可参见文章[10],这里不再赘述。

2022年11月,除了发布之外,还发布了text–003模型,两者都是在text–002模型的基础上使用RLHF方法训练得到的,实际上不仅是一个单独的模型,而是一个完整的Web聊天机器人产品,其内部调用的模型假设也称作。

GPT-3到GPT-3.5的进化树.符尧等.2022.12.11

当前并未公布论文,只在官网发布了一篇BLOG[9],BLOG中讲到「We this model using from Human (RLHF), using the same , but with in the data setup」,模型训练采用了RLHF方法,和2022年3月发布的[8]一致,仅是数据采集上有一些差异,当前介绍技术原理的文章均是介绍。

RLHF并非是一个全新的方法,论文里有讲到该方法参考了2020年9月发布的文章《 to from human 》[7]和2017年6月发布的文章《Deep from human 》[12],文章[7]又参考了2019年9月发布的文章《Fine- from Human 》[6],由此可见,在RLHF方法上有持续的沉淀积累,的诞生也并非一蹴而就。

训练过程. 2022.11.30

训练过程. 2022.3

to from human . 2020.9

Fine- from Human . 2019.9

二、GPT API 说明

当前,在发布的GPT API中可以调用上文GPT-3到GPT-3.5的进化树中除模型之外的所有模型,用户可以在API 里选择模型版本进行体验,也可以编写程序调用API来进行批量实验,如下图所示。

GPT

chatgpt 输入文本没有反应 被全球追捧的ChatGPT,在实际AI应用场景表现如何?

当前支持的模型

是以一个Web聊天机器人的形态发布的,用户需要登录网站进行体验,目前还未发布 API,但 API官网显示不久后将发布「 is to our API soon, sign up to stay 」。目前业界有一些声称基于的聊天机器人工具,均是以非官方API来实现的,例如可以基于爬虫技术来访问官网,封装成 API,并注册大量账号,以保证支持一定的访问量。官网对访问频率有限制,且官网时不时会因为用户请求过多无法访问,这样的API不是很稳定,只能在一些离线场景应用。值得一提的是,目前提供了付费账号,价格为20美元/月,经测试,付费账号和免费账号在访问频率上并没有多大差别,只是付费账号的服务响应会相对稳定一些,若是个人使用,直接使用免费账号即可。

官网

GPT API按照输入输出的token数量收费,价格为0.02美元/,一个token大概是0.75个英文单词,一个中文汉字为两个token,这里包括请求API的token()和API返回的token(),一个GPT账号会免费赠送18美元的额度,有效期为3个月。未来 API 收费方式很可能也和此相同。

GPT API 收费说明

平台针对每次请求输入和输出token计数

从GPT-3到GPT-3.5的进化树中可以看到text–003模型和模型均是在text–002模型的基础上使用RLHF方法训练得到,都在2022年11月发布,两者的差别可能是针对不同类型人工反馈数据调优上的差异,模型是应用于对话聊天,会基于线上对话数据调优,在上下文多轮对话、拟人化等能力上可能更强,text–003基于GPT API上用户反馈数据(如上述)调优,在相关任务上的效果和相比可能差异不大,如后文有实验在评论情感分类任务上二者效果相当。因此,用户可以直接在GPT API中使用text–003模型来搭建相关应用。

三、GPT-3训练成本

GPT-3拥有1750亿参数,模型训练需要消耗大量资源,并未公开过GPT系列大模型训练和推理消耗的具体费用,我们可以从其他材料中获得一些信息。

2020年5月,文章[12]中讲到微软在Azure上为搭建了独立的超级计算机系统,包含28.5万个CPU核和1万张GPU卡(当时为V100):The for is a with more than 285,000 CPU cores, 10,000 GPUs and 400 per of for each GPU 。2020年6月发布的GPT-3模型应该是在该系统上训练得到。

英伟达在2021年4月发表的《 Large Scale Model on GPU 》[13] 文章中有预估不同参数规模的大模型训练需要消耗的资源和时间:使用1024张80G显存的A100卡训练1750亿参数的GPT-3模型,需要训练34天。

这些都是2-3年前之前的费用说明,根据相关材料介绍,当前训练GPT-3的费用更低 ,文章《》讲到「对于大公司而言,训练LLM(即使是从头开始)的成本并不高,如今,在公有云中训练GPT-3仅需花费约140万美元」。

四、的应用

可以用来写作、翻译、润色句子、做事实性问答、写SQL、写代码、执行文本分类/实体抽取/阅读理解/文本摘要等各类NLP任务,相关案例不一一赘述,这里仅讨论在智能写稿、智能客服、智能外呼实际产品场景下我们对的应用尝试,相关实验对比结果基于我们自主封装的 API完成。

智能写稿:

我们从2018年开始就有落地智能写稿,利用机器自动生成一些稿件应用于各类场景,如自动生成二手车车源介绍文章,可参见《》。原始生成方法是基于优质车源帖子数据,利用模板填充和文本生成技术自动生成文章,生成的文章较短且生硬,我们使用来润色这些文章,向发送提示「请润色下面这段文字,字数在400字以内」即可完成该任务,通过润色的文章可读性极佳。此外,我们也尝试直接拿车源属性字段来让写作,例如向发送提示「请以下面这些关键词写一篇400字的文章」,最终也能生成可读性较好的结果。我们都知道在一些常识性问题上会犯错误,可能会生成一些错误内容,而我们是基于优质车源帖子数据来生成文章,车源帖子首先是真的,最终生成的内容也是真实可用的。

在本地服务(黄页)业务下,客户(商家)需要定期下线旧帖子,重新发布新贴子,由于商家平时工作繁忙,往往没有时间发帖,因此平台提供了代客发帖服务,人工来帮助其发帖。2022年我们上线了AI自动发帖功能,节省了30+人力。AI自动发帖的大概逻辑是基于旧帖子正文内容和帖子用户评价,自动生成新帖标题和更新正文内容。在更新帖子正文内容这里,需要筛选出用户优质评价,并将评价提炼成一小段文字,再插入到帖子正文头部,以”口碑亮点”模块来展示。

帖子正文口碑亮点

我们的原始方案是使用微调的BERT模型来识别评论正负向情感,先挑出正向评论,然后基于抽取式方法生成最终的评论短语。我们将应用于该场景,首先使用来识别评论正负向情感,然后继续用将正向评论润色成最终的”口碑亮点”,取得了很好的效果。评论正负向情感识别是一个常见的NLP任务,我们直接向发送提示「对下面的评论进行分类,类别有正向、其他,[商家很专业,很有耐心]属于什么类别?」,这里没有给其提供任何先验知识和例子,即Zero-Shot,它也能获得不错的效果,比BERT微调模型略低,我们继续实验Few-Shot,告诉其分类标准并给予了一些样例,如下图所示,识别效果明显提升,超过BERT微调模型,可见十分强大。在前文GPT API章节我们有讲到2022年11月同期发布的text–003模型和模型在部分NLP任务上可能差异不大,这里我们也进行了验证,在评论情感识别任务上二者差异不大。

在评论正负向情感识别任务上的效果

Few-Shot

此外,在SEO场景我们也进行了探索,使用生成一些SEO场景需要的内容,尽管会生成一些事实性错误的内容,但通过优化可以使得生成的结果基本可用,并结合人工审核、人工改写,最终能够得到符合SEO需求的内容。

智能客服:

当前网上很多人都说可以直接拿来做智能客服,能够让一些客服或者销售人员下岗,很多人都信以为真,实际并非如此。智能客服是当下发展非常成熟的产品,各大企业都有应用,能够提高客服人效,。这是智能客服的基本原理:企业维护了一套业务问答知识库,即一些业务问题和答案的集合,若用户在使用APP时遇到相关问题,他会在智能客服聊天窗口里输入问题进行咨询,机器会自动理解用户输入的问题,从问答知识库中找到那条和用户输入语义相同的问题,即文本匹配或文本分类,然后把该问题的答案返回给用户。

智能客服基本原理

智能客服的核心是构建问答知识库和文本匹配,问答知识库里的问题是线上用户遇到的真实业务问题,答案是客服运营人员人工整理的答案,而文本匹配是一项传统的NLP技术。很明显,客服场景的问答知识库是企业独有的,没有学习过这些数据,对于用户咨询它不可能给出正确答案。部分业务方也给我们提过使用代替现有智能客服系统的想法,我们抽取了一定量线上真实用户的输入,并交给回答,最终证实了在业务问题上它会一本正经的”胡说八道”。当然,如果我们将问答知识库数据全部提交给做微调(Fine-tune),它也能回答得较好,但目前还不提供微调功能,GPT-3 API提供了微调功能。

尽管不能直接拿来做智能客服,但是我们可以用它来做智能客服中的文本匹配任务,我们在近期接入的一个新业务场景下实验了,可以类似下图这样向发送,Zero-Shot的效果较差,若在里给每个标准问题增加少量扩展问法就能有较好的效果提升,但要超过自研模型还需在上做更多优化工作。

chatgpt 输入文本没有反应 被全球追捧的ChatGPT,在实际AI应用场景表现如何?

文本匹配效果

用做文本匹配示例

智能客服的问答知识库是持续更新的,因为随着产品功能的持续更新升级,线上用户会遇到新的操作问题,这些新问题会被挖掘出来加入到问答知识库中,并通过持续的数据标注来积累这些新问题的扩展问法。往往新问题上线初期扩展问法较少,模型对新问题识别效果较差,这里也可以在新问题产生时直接使用来为每个新问题生成若干扩展问法(数据增强),再加入模型训练,使得模型对新问题有较好的识别效果。我们在一个新接入的场景下也进行了实验对比,针对新增的六条新问题,使用为每条新问题生成数十条扩展问法,然后训练模型,这相比不做数据增强的模型效果有明显提升。

自研模型 + 数据增强后效果

在招聘业务赶集直招「微聊反向邀约」场景,在C端用户和B端企业微聊沟通时,我们应用了智能客服留资机器人,具体介绍可参见《》,当C端用户向B端企业发起微聊沟通时,若B端企业不在线,则由机器人和C端用户对话,在对话结束后若识别到用户有高求职意向,则调用智能双呼能力(可参见《》)提醒B端企业,B端企业接听后可以一键直连C端用户,从而双方可以直接电话沟通。这里机器人需要基于微聊对话记录识别用户求职意向,我们也实验了,通过优化,在F1-Score上超过了自研模型。但是这是一个重准确率的业务场景,因为需要保证B端企业连接的用户尽量是实际求职者,但如何通过调整来控制的准确率和召回率,目前还没找到行之有效的方法,而自研模型要做到这一点很简单。

用做对话意图识别

智能外呼:

智能外呼是人机实时语音对话场景,电话沟通语音会被语音识别引擎实时转写成文本,然后交给NLP模型进行语义理解,本质上和微聊文本对话没有差别,也会执行上述文本分类、文本匹配、对话意图识别任务,应用类似。

人机语音对话相对微聊文本对话来讲延时更敏感,即需要NLP模型快速返回识别结果,耗时一般要求在数十到上百毫秒之间,因为人和机器在实时对话过程中若机器反应慢,例如数秒才响应,人会明显感觉到停顿,用户体验差,可能会直接挂断电话,影响转化效果,而在一些微聊智能客服场景下,为了让用户感觉到背后不是机器人,会故意让机器人回答慢一点,在程序中做一些延时回复操作。当前和GPT API的推理延时并不低,平均耗时在数秒级别,直接应用来做人机语音对话中的NLP模块不可取。

我们使用离线实验了近期上线的一个语音对话场景下的槽位提取(实体抽取),识别对话内容中的地点和服务类别槽位,这里直接使用Zero-Shot,向发送提示「请抽取这段话中的省、城市、区县和服务类别」,从实验结果看表现不错。

槽位提取效果

五、个人思考

在一个大模型里可以完成众多任务,而且效果都很不错,前所未见,令人惊叹。毫无疑问,能够在各类岗位上辅助人工,提升人效,但能否完全替代某类岗位,还需时间验证,以NLP工程师岗位为例,企业若想使用代替NLP工程师,至少需要考虑以下几点:

当前,在国内还不能直接访问,未来就算对国内开放,但各大企业与其合作会很敏感,国内企业的大量数据若流入会有很大风险。中国很有必要做出自己的,当下国内大厂和一些创业公司正在努力,也许在不久的将来,国内解决上述问题后,真的不再需要那么多NLP算法工程师。

参考文献:

[1] GPT1: by Pre-. 2018.6

[2] BERT:Pre- of Deep for . 2018.10

[3] GPT2: are .

2019.2

[4] GPT3: are Few-Shot . 2020.5

[5] GPT3 API: 2020.6

[6] Fine- from Human .2019.9

[7] to from human . 2020.9

[8] : to with human . 2022.3

[9] : for .2022.11.30

[10] How does GPT its ? of to their . 符尧等. 2022.12.11. 中文版:拆解追溯 GPT-3.5 各项能力的起源. 2022.12.18.

[11] Deep from human .2017.6

[12] new , lays out for AI work.2020.5.19

[13] Large Scale Model on GPU .2021.4

[14] API.

你也「在看」吗?

© 版权声明
广告也精彩

相关文章

暂无评论

暂无评论...