在上篇文章的结尾,我提到了其实更像是一把铲子,在拥有这把铲子之前,我们只知道可以把土堆成房子,但是不知道用什么把土堆起来,但在有了这把铲子之后,铲土只是铲子最直白的利用,如何用铲子堆一个又大又漂亮的房子可能我们还不知道,但至少我们现在已经开始尝试做这样的事情了。

其实从诞生至今,所有从事相关研究的朋友都在努力的在上探索各种各样的使用方式,甚至现在已经诞生了所谓的工程师。

这篇文章就聊聊很多现在已有的关于使用的技巧。

4A & 4W

首先在自然语言的理解上虽然有着领先时代的表现,但事实上并不是你的蛔虫,你试图通过简单的问题获得准确的回答是不可能的,也不现实。

这里我也用一下,在讲述这个问题时最常用的“如何减肥”的例子。如果你只是简单的问,那么的回答就会模糊而概括。

随着大家的探索,逐渐诞生了两种常用的扮演法指令模式,也就是4A & 4W。

4A模型是中比较典型的例子,晚上大部分流行的提问方式都是这个结构,还是拿减肥举例子,这一次我提供了我的身高和体重,并且给他赋予了角色定位。

相比之前更简单的提问,给了更具体的回应以及更详细的范例,但实际上在这个范例中,虽然内容详细但事实上没有太具体的计划。

在这个基础上,又有人提出了4W模型。

我们把前面的问题换个问法

这一次反馈的最大变化就是他会根据我的内容进行发散,进而进一步的反馈详细的内容和反馈。

事实上对于问题的回答并不是一定的,相比4A模型,4W模型的反馈质量更高反馈也比较直白,在GPT4版本之后发散度也更高,也是现在比较主流的扮演提问法。

但事实上,4W的基础提问法只是比较通用的问法,但在扮演法可以有更详细的提问方式。比如我们先问问有没有专业的健身教练。

根据他的反馈,我们直接找其中一个人,让扮演这个人来提供建议。

在这种情况下,有可能,注意是有可能,会生成带有强烈的个人风格的反馈内容。而这部分内容一般来说有效度会更高,因为他很有可能是基于已有的内容生成的。但这并不绝对,因为还没有真正意义上联网。不过使用这种更详细的扮演法在某些情况下会让你的结果更有效。

的官方最佳实践

这里我们也一起看一看公开的最佳实践,里面其实也是提到了一些我们熟知的,这里我提取几个比较关键的点。

1、把指令放在的开头,并且用###或者”””来分割指令和上下文。

1
2
3
4
5
6
7
8
9

我需要把下面这段代码压缩到一行
###
var cookieStr = 'ppmsglist_action_3907326541=card';
var cookieArr = cookieStr.split('; ');
for (var i = 0; i < cookieArr.length; i++) {
var cookie = cookieArr[i];
var arr = cookie.split('=');
document.cookie = arr[0] + '=' + arr[1];
}

2、对希望得到的内容的背景、结果、长度、格式、风格尽可能的详细

3、通过示例阐述所需的输出格式

其实也很好理解,你可以用一些范例来表达你想要的内容,来帮助矫正结果。

4、先不提供范例,再尝试给出范例,然后根据返回微调。

5、减少不精确的描述。

比起“我想要一段短小的内容”,最好直接指明内容的长度,比如“我想要一段100字左右的内容”

6、与其说什么不该做,不如说什么该做。

雷达通常需要测量的目标参数有_chatgpt有多少参数_常用于防火墙安全策略的参数有

7、在想要生成代码的时候,使用引导词让模型向特定的模式发展。

在的范例中,他用作为的引导词,用作为sql的引导词。

其实相比简单的提问式回答,现在的相关的内容已经相当成熟了,比如上现在有很多类似的项目,整理了大量的经典场景

甚至已经有相当成熟的网站分享相关的信息

除了这种简单的指令分享,甚至还有更牛逼的直接把这个东西直接包装成产品,直接辅助你去写各种。

额外参数

除了简单的对话技巧以及各种方案,还提供了不少的额外参数以影响返回的结果,其中我挑部分我觉得比较有意思的参数

这个参数官方给出的解释是,衡量模型输出不太准确信息的频率,越高,输出越随机,并更具有创造性。但相比官方的解释,我们甚至可以把理解为情感值或者温度值。

默认是0.8,最高为2。通常来说,在询问具有创造力的结果时,可以让提高,来获得更有意思的结果。在询问某些事实或者准确的内容时,可以降低来获得更准确的结果。你可以在调用api的时候设置这个参数来控制它。

这是为0.2时返回的结果。

当为2的时候,就有点儿傻,返回的非准确内容中会大量的随机各种结果。

当为1的时候,相对比较平衡

也是一个比较常见的参数,我们可以把这个参数认为是话题新鲜度,也可以认为是话题拓展的可能性。这个值越大,在对话中也会越主动的发起新的分支。

这个值默认是0,可以从-2到2之间。

我自己尝试了一下感觉这个参数的表现其实比较弱,一般的问题回复其实是感受不到的。

整体上和类似,主要是控制总体使用频率较高的单词和短语概率,这个值越高,中就会尽量减少重复。

这个值默认是0,可以从-2到2之间。

标志返回的token长度的硬截止限制,这个token之前也说过其实标志是的是单词或者短语,这个计算方式相当宽泛,所以一般设置就是为了保底,避免某些特殊的问题导致超长的回复浪费api的资源。

stop

一个特殊标记,可以在文本生成过程中暂停文本的生成。

写在最后

掌握了简单问答式的用法,就相当于我们已经学会了用铲子铲土。

而在基础上做进一步的探索相当有趣,下篇文章就讲讲怎么用铲子盖房子。