增强 ChatGPT 回复结果的准确性。

使用英文对话

因为英文是一个广泛使用的语言,因此 ChatGPT 训练的数据大部分都是英文,英文的内容会比较丰富,所以使用英文提问会得到更好的结果。

使用反问句提问

使用「我认为...,你看我理解的对吗?」这样的提示语来询问问题,代替用「xxx 是什么」这样的提示语来问问题。

举个例子「宇宙是什么?」这样一个提示语,其实使用搜索引擎,或者 Wiki 就能找到比 ChatGPT 更准确、详细并且丰富的资料。

「我认为宇宙是包含时间、空间和所有物质的整体,你看我理解的对吗?」使用反问的提示语来询问,可以更好的学习,让 ChatGPT 为我们判断理解的结果是否正确,如果错误还可以帮助指出错误的地方,这些都是搜索引擎和 Wiki 做不到的。

只问一个问题

一条消息只包含一个问题,尽可能多的提供问题的上下文。

因为一次性询问多个问题,如果不能把每个问题都描述得非常详细,那么可能得到的结果就不理想。还有一方面原因,ChatGPT 一次性输出的字数是有限的,无法一次性输出太长的结果,所以一次性询问多个问题的时候,就无法把每个问题都回答得非常详细,可能是精简之后的结果,会缺少一些细节。

按角色解释

有时候 ChatGPT 回复的结果太过于专业,不好理解,可以给 ChatGPT 设置不同的角色进行讲解。

例如

  • 假如我是一个居住在农村的农民,解释给我听
  • 假如我是个小学生,请讲给我听
  • 请你充当祖父用比喻来教会孩子

下面这个是常规的提示语

请你为我解释这段代码的意思

const data = new Array(400000).fill(0);
console.log('-----普通for循环-------');
console.time('for');
const result_1 = [];
for (let i = 0; i < data.length; i++) {
  result_1.push(data[i]);
}
console.timeEnd('for');
console.log('-----执行完毕-------');

下面这个是使用祖父的角色的提示语

假设你是一个祖父,用比喻来向孩子解释这段代码的意思

const data = new Array(400000).fill(0);
console.log('-----普通for循环-------');
console.time('for');
const result_1 = [];
for (let i = 0; i < data.length; i++) {
  result_1.push(data[i]);
}
console.timeEnd('for');
console.log('-----执行完毕-------');

很明显可以看出这两个提示语的不同之处,相对来说后面的提示语能够更好的理解。

旁白

有时候 ChatGPT 回复的结果会带有旁白,使用「no narration」避免输出旁白。

下面是没有使用「no narration」的结果,ChatGPT 在回复中会带有自己的话,然后和输出的代码。

使用「no narration」后,ChatGPT 不会增添任何旁白,只会给出要求的代码。

字数限制

在询问问题的时候,ChatGPT 给出的结果可能会太长,或者太短,达不到预期的要求,所以可以在提示语中给出一个字数限制,让结果达到预期的长度。

例如「你为我写一个关于化妆品的文案」在没有限制字数的时候,ChatGPT 回复的结果可能会特别的长。

在提示语中限制字数的长度,例如「你为我写一个关于化妆品的文案,禁止超过 180-200 字。」

强调需求

在 ChatGPT 的提示语中描述了要求,但是 ChatGPT 有时候不会按照我们的要求输出内容。

下面的提示中已经要求了字数限制在 100 字以内,但是 ChatGPT 回复的结果还是超出了预期要求一点点。

在提示语中使用「请严格按照我的要求输出内容。」输出的结果就会严格的按照提示语中的要求输出。