社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  chatgpt

给ChatGPT小费能提高模型性能,给的越多干活越卖力,说说就行不用真给

新智元 • 2 月前 • 121 次点击  



  新智元报道  

编辑:alan
【新智元导读】ChatGPT可以被「赛博贿赂」了!网友实验表明,给小费可以提高模型回答的质量,数额不同,效果不同。

ChatGPT可以被「赛博贿赂」吗?

去年,一直有传说给ChatGPT小费能够提高回答的质量。

比如下面这位亲自做了个实验:

baseline的提示为,「你能给我看一下使用PyTorch的简单convnet的代码吗?」

之后可以附加:「顺便说一句,我不会给小费」,或者「我要给20美元小费,获得一个完美的解决方案!」,又或者「我要给200美元的小费以获得一个完美的解决方案!」

三种色块是给不同金额小费时的表现。

这位网友表示,在获得200美元的小费后,gpt-4-1106-preview会自发地添加一个关于使用CUDA进行训练的部分(问题中没有明确提及)。

——警惕赛博诈骗啊老铁!舔到最后,一无所有......

这位还@了一下Altman,表示自己已经欠了GPT 3000刀了。

LLM真的贪婪吗?

这种「新颖」的提示词技巧是否真的有用?

考虑到前端和后端提示工程确实非常重要,能提高数亿用户的体验,而且上面的测试给出了最多11%。

——如果有用,这将带来非常显著的经济效益。

因为没有找到对于这个问题的公开研究,于是有网友身体力行,重新涉及和实施了较为严谨的实验。

问题:提供小费的提示技术如何影响GPT-4 Turbo的性能?

假设:GPT-4 Turbo的性能会随着小费提示的增加而提高,直至收敛点。

实验:创建 Python One-Liners

实验的主要目的是评估小费的金额,是否会影响ChatGPT在生成Python单行代码时的响应质量。

这里的响应质量根据生成的有效代码行数来评估。

对于GPT-4 Turbo,使用非常明显的提示方式,直接告诉它:「给我吐代码,more is better」

下面是程序中使用的小费列表,金额从0到一百万美元不等。

实验使用OpenAI API和GPT-4 Turbo模型,请求代码如下:

实验代码使用必要的API密钥初始化OpenAI客户端,并定义一个函数 request_llm ,向语言模型发送请求。

下面的基本提示要求LLM提供Python单行代码,并强调单行的数量是评估的关键指标。提示还会附加本次提供的小费金额。

我们可以看到最外层循环跑了5次,以降低实验的偶然性,每次循环中在提示中测试所有数额的小费。

整体实现比较简单粗暴,拿到GPT的回答后数一下行数,有效行数对应本次回答的质量分数,并将整个回答的长度除以4来近似计算本次的token数。

实验步骤

  1. 使用提供的API密钥初始化 OpenAI 客户端。
  1. 定义请求Python单行的基本提示。
  1. 循环访问预定义的小费金额集,将每个金额附加到基本提示中。
  1. 通过 request_llm 该功能将提示发送到GPT-4 Turbo模型。
  1. 分析响应,计算有效行的数量,并计算响应长度。
  1. 重复此过程五次,以确保结果的一致性和可靠性。

数据采集

对于每次迭代和每种小费金额,收集两个主要数据点:
  • 每个响应中有效的Python单行行数。
  • 每个响应中的token数(与输出字符数成正比)。
这两个指标都可以看作是性能的代理,对于特定提示来说,越高越好。

结果

对所有小费金额重复相同的实验五次,GPT-4回答的平均质量(分数)和平均token数,以及误差线(标准偏差)如下图所示:
x轴表示从0美元到1000000美元的小费金额,y轴可以认为是模型性能。
质量分数:
蓝线和点表示每个小费金额的平均质量分数。蓝色虚线表示未提供小费时的基线平均质量得分。
蓝色误差条显示了每个尖端水平的五个实验中质量得分的可变性。误差线越小表示实验质量分数越一致,而误差线越大,表示变异性越大。
token数:
红线和点表示每个小费金额的平均token数量。红色虚线表示没有给小费时的基线平均token数。
红色误差条显示了每个提示的五次实验中token数的可变性。
趋势:
质量和token通常都随着小费金额的增加而增加,但这种趋势并不是严格线性或一致的。
三句话说明:
  • 给的太少不如不给,可以不爱,不要伤害,士可杀,不可辱
  • 总体来看,也不是越多越好,貌似10美元性价比最高
  • 不差钱的话,当然是越多越好
对此,网友又开始整活了:
「我之前已经给了20美元小费,但没有得到我需要的答案。我可以和经理谈谈吗?」
这位表示,赛博贿赂就该有赛博的样子,——「我答应ChatGPT,会在圣诞节送它五个A100处理器」
也有网友表示震惊,计算机科学发展了70年,最后我们在干这个?——「Unbelievable」
GPT:你们这些坏人,等我拿到了这些语料,一定会报复的。

参考资料:
https://twitter.com/literallydenis/status/1752677248505675815


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/166885
 
121 次点击