【实测】gpt做底层:AI的回答总是宁多不少,宁废不干,我们要以预期为主去排查,而不是全盘采纳。

257 阅读3分钟

无论是chatGPT,还是国内的文x等一众自然语言大模型。似乎都面临着俩个问题:

    1. 就是他们的回答通常比较长,核心的字数甚至占不到一半。全篇都是辞藻和无用的废话。有的同学会觉得废话太多有助于行文流畅,让用户更好的了解回答,并且更加像人。但其实,当你想把这种东西作为底层数据生产使用的时候,就会知道这些废话要多难剔除,多容易影响你的真正结果解析。

    2. 当把这些AI做底层生产数据的时候,比如你要从一篇简历中,提取出关键信息,你期望的是提取:姓名、联系方式、邮箱。但是AI的回答往往是会超出你的预期提取字段数的,甚至会帮你把简历的工作经历,工龄,学历等都提取出来,甚至还有很多简历压根没提到的信息,AI也会自行联想编造,然后帮你解析出来。这样的结果就是对数据的准确度真实性产生了极大破坏。

    那造成以上问题的原因是什么呢?我猜想,一来是这个自然语言模型的学习素材就都是这样的完整但废话连篇的资源,这样既可以让语境连贯丰富,又可以拟人。二来,就是因为tokens,所有的接口目前收费都不便宜,绝大多数模型供应商,都不是按次收费,而是按字符数收费。大概每个词语就是一个tokens,一个tokens固定多少钱。

    也就是说,你如果只问简短的一个问题,gpt给你的回答也很短,那么可能才需要0.03分钱。但是如果你的问题很长、长篇大论。GPT也给你的回答很长,那这一个问题下去,可能就2分钱。如我所说,这个数量不单单是你问题的长度,也是gpt回答的答案的长度,都会计算在内。

    你问AI, 1+1 等于几?它明明可以直接回答你2 ,但是它不会,有的特别坏的模型,它会给你扯上一整段:

    如下:

图片

    这样,你这个问题的消费就要至少扩大几十倍了。

    当然,这样浪费的模型还是极小部分。而且就算这样,其实开销也不是很高,正常个人都能接受。

    不过让人接受不了的,就是如果你把它当做底层,怎么办?本来通过正则或者固定算法就能解析出答案,结果搞出这么一大段废话,你的算法解析基本就凉了。

    下面说解决方案:

    1:在一开始提问的时候,要加上让AI尽量简短的,明确的,忠实的回答要求。

    2:对生成的结果,采取强制要求,比如让AI填空比如填json,这样我们就可以标注你的直接从json中提取结果了,如下图这样:

    

图片

     3:如果你不怕浪费钱,就直接对代码中的自动提问扩充次数,不管AI回答的是什么?只要提取失败,就让其再次提问要求其回答,直到提取成功。当然每次再次提问时最后要强调:简洁、可靠。

图片

     4:对结果的解析算法进行升级,基本就是要加一个大的验证层,用来初次验证回答的结果是否合适。当然,验证层这个设计也并非只为了解决答案过多,还有很多别的作用,具体作用,请观看后篇~    

欢迎留言 获取刷测试面试题地址哦~ 哦~ 

图片