ChatGPT101-2 深入聊聊Prompt Engineering

ChatGPT101-2 深入聊聊Prompt Engineering

田园猫MierCat
田园猫MierCat
1116 浏览

 

ChatGPT101-1 漫谈原理/GPT的局限性/手把手教你用ChatGPT

田园猫MierCat

1902 11

上次的ChatGPT101-1 还蛮受大家欢迎的,我很受鼓舞,于是,铛铛铛~ 下一期来啦。编写有效的提示(prompts)是与ChatGPT进行对话的关键。这一篇文章我会和大家详细深入地研究【Prompt Engineering】----如何和ChatGPT对话、下指令,来让它给你你想要的结果。

如何编写有效的提示呢?

1. 目标:确保你的提示中包含具体的问题或明确的指示。避免模糊的问题或含糊不清的陈述,给模型提供清晰的方向。

2. 上下文:提供与之前对话相关的上下文信息,这有助于模型理解问题的背景并提供更准确的回答。

有哪些具体的目标可以问呢?

技术问题:例如,“解释一下神经网络是如何工作的?”或者“什么是自然语言处理的常见算法?”

产品建议:例如,“你能给我一些建议,如何改进产品的用户界面?”或者“有什么方法可以提高软件的性能?”

学术讨论:例如,“请谈谈关于人工智能伦理的问题和挑战。”或者“对于机器学习模型的可解释性有什么看法?”

实用技巧:例如,“你能分享一些提高工作效率的软件工具或方法吗?”或者“有没有什么快捷键可以加速编码过程?”

行业趋势:例如,“对于未来的自动驾驶技术有什么预测?”或者“你对区块链技术的应用前景怎么看?”

概念解释:例如,“什么是云计算?有哪些常见的云计算服务提供商?”或者“区块链技术是如何实现去中心化的?”

项目建议:例如,“我正在开发一个新的移动应用程序,有什么推荐的开发框架或工具?”或者“如何更好地管理软件开发团队的项目?”

编程问题:例如,“如何在Python中实现快速排序算法?”或者“如何处理在C++中的内存泄漏问题?”

有哪些信息可以加入到上下文中?

领域专业知识

提供特定领域的相关背景知识,如计算机科学、医学、物理学等。尤其是当你问的问题的关键词有其他含义时,特别需要提供一些背景信息。

举一个例子:我想知道,我看到的农业导航套件里面显示的,RTK接收器解算出浮点解是什么意思?我如果直接问,“浮点解是什么?” ChatGPT的解释如下:

没有告诉ChatGPT我想要了解的是RTK接收器结算出来的浮点解,ChatGPT就只能告诉我最笼统的一个答案,对我的帮助有限。但如果我提供背景信息,得到的答案就合理了。

角色:

问这个问题的时候,你的角色是什么?是产品经理,喜欢旅行的网红博主,还是其他的什么?

比如说,我想让ChatGPT给我写一个tweet: 

我还可以让ChatGPT扮演一个角色,比如:

之后我们的对话,ChatGPT就会始终保持那个角色,不需要我重复下命令了。你会让ChatGPT act as 什么呢?

特定要求或条件:明确指出问题的要求、条件或限制。

举一些例子:

1. 偏向使用简短、有重点的句子。

2. 添加关键词,避免不必要的信息。

3. 定义目标受众。

4. 控制输出的语气、风格和长度。

5. 控制输出的格式(文本、JSON、未格式化的Markdown等)。

给出更细致的指令或引导:

我们在prompt里面,可以给出更具体的指令或引导来以引导模型生成特定类型的回答。比如说,可以用解释、比较、对比、总结、列举步骤等词汇。

举例:当我使用RTK定位的时候,RTK接收器计算出浮点解,解释一下浮点解是什么?

先前对话内容:

将前几轮对话的上下文包含在提示中,这样模型可以建立对话的连贯性并回应先前的问题或回答。

比如之前我问ChatGPT关于RTK浮点解的问题,接着我问了一个有点含糊的问题:“对比一下各种解?” 但ChatGPT根据之后的chat history,知道我问的是什么范围的内容。

我们还可以加入一些关于文化、历史、情况的因素进去:

比如,“consider the current shift towards ___ in your response.” 这一条对有使用plug in KeyMate AI Search 的用户来说特别有帮助。

最后,当我们在写Prompt的时候,我们可以把一个复杂的问题,分成许许多多明确的小问题。让ChatGPT一个一个回答。

 

学废了嘛?

接下来我们来一起尝试几个完整的练习。

之前有朋友反应,ChatGPT的答案让他们觉得不太满意。我觉得是的,尤其是当我们在使用中文版本的时候。我自己平时其实更倾向用英文和ChatGPT对话,英文的答案比中文的显示快,答案更接近自然语言。所以,下面的例子我就直接用英文的了。

1. 写一个新产品的社交媒体宣传post。

第一次训练,我嫌生成的文字不够engaging,于是我又加上了“highly engaging & high-converting”这个形容词。

我们也可以给ChatGPT一个例子:让它仿照这个例子来写。

 

 

2. 生成一个用Python把文档里所有的图片都删掉的码。

Attempt 1: 

Attempt 2: 加一些细节,如下图:

3. 用ChatGPT生成候选人报告

这个功能是我特别经常用的。我平时推荐候选人之前,需要给候选人写一个报告。这里面很多内容是从候选人的简历里直接来的,但我又不想一个个去填写。于是,我说:

Write a HR candidate report for me. +

告诉ChatGPT我想它生成什么样的格式的报告 (加入output Format)

把候选人的整个简历都加入到我的prompt里。 

事先声明,这个例子里的简历也是我让ChatGPT生成的:

因为我用这个方法生成过很多次report了,我知道ChatGPT每次生成的时候,work experience都会写好长。所以我在prompt里面加入了“工作经历只需要包括职位和公司名”的提示。

我们来看看结果:

我也可以根据公司的需要,再加入其他的上下文信息,比如这个职位的要求来写这个candidate report。

我还可以加入限制summary字数的prompt,让summary更简短一些。

我们可以通过对话的方式,把你的需求补充进去。于是,ChatGPT会帮我重写Summary这个部分。

学废了嘛~ 

Ask-Before-Answer Prompt

有时候我们不知道应该提供哪些信息了,我再教你一招:直接问ChatGPT呀!
“Before answering, I want you to first ask for any extra information that helps you produce a better answer. If you have no questions, please provide the answer instead. ”

Perspective Prompting: 

有点像当年写雅思作文,题目说,请从__的角度写一篇作文。

我们可以让ChatGPT从某一个角色的角度生成结果,还可以让他从正方反方的角度分别生成结果。

Example 1: From the perspective of a wildlife photographer, write a 2-week travel plan in Alaska starting on June 30th. Please include the destination, and animal to see. 

Example 2: 

From the perspective of a climate change proponent and opponent, write a report on the impact of climate change on bristlecone pine trees.

这样就能得到正方和反方两个角度的回答。

我们甚至可以让ChatGPT自己给自己写Prompt,以及让它自己评价自己的output怎么样,然后重写。

然后我让他自己给自己纠纠错,改写一下:
-----------------------

我们来总结一下:

1. 一个好的prompt能帮助我们生成好的result。
2. 好的prompt需要明确的目标,和信息充足的上下文。

3. 我们可以规定输出的字数,语气,格式、结构、输出语言等,也可以让ChatGPT扮演一个角色。

4. 我们可以通过Chat来补充信息,也可以点修改重新输入prompt。

5. 我们可以提供输出的范例(可以多个)。 Here are some examples I like. 

6. 问ChatGPT我们要给他提供哪些信息来帮助他更好地回答我们的问题。Before answering, I want you to first ask for any extra information that helps you produce a better answer. If you have no questions, please provide the answer instead. 

7. 我们可以让ChatGPT站在不同的角色、立场上给出回答。From the perspective of __ 

8. 可以把一个复杂的问题,分成许许多多明确的小问题。让ChatGPT一个一个回答。

9. 我们可以让ChatGPT自己写一个更合适的prompt出来

10. 其他参考资料:https://github.com/f/awesome-chatgpt-prompts

 

君君提示:你也可以发布优质内容,点此查看详情 >>

本文著作权归作者本人和北美省钱快报共同所有,未经许可不得转载。长文章仅代表作者看法,如有更多内容分享或是对文中观点有不同见解,省钱快报欢迎您的投稿。

1116 5 3

扫码下载APP