《花雕学AI》17:关注提示工程—本世纪最重要的技能可能就是与AI人工智能对话
本文目录与主要结构

如何看待AI代替人类工作?
百度创始人李彦宏表示,不管有多少工作被替代,这只是整个图景的一部分,另外一部分是,存在我们现在甚至无法想象的更多新机会。做一个大胆预测,10年之后,人类一半的工作是与写提示词(prompt)有关。未来可能不需要那么多程序员,但是会需要越来越多的提示词工程师。李彦宏认为,以后没准学文科更容易找工作,因为写提示词的时候,想象力、情感、表达这些有可能真的比现在学工程的人要更有意思,更有效果一些。而多元认知,结构化思考,思维模型更加重要了。“人人都是提示词工程师”的提法,也许意味着每个人都可以通过使用机器学习和人工智能技术,来改进搜索引擎的提示词系统。
ChatGPT 的创始人 SAM前段时间也说过,提示是一个高杠杆技能。要用好人工智能,给出我们想要的答案,对我们每个人来说,学会设计AI提示词是必要的,不管人工智能他有多聪明,也不是我们肚子里的蛔虫,不太可能知道我们在想什么。所以,写提示词,就是结构化的思考和表达,是AI重要的人机接口。这在跟人交流沟通中也是需要的。
作为较早和成功的NLP和LLM工具开发公司之一,Cohere认为,成功的提示工程师将找到一种方法来指导模型生成有用的输出。该公司在其提示工程师指南中解释说,实现这一点的一种方法是尝试多种提示组合。该公司表示:“同一提示的不同组合可能听起来与人类相似,但可能会导致不同的效果。”

引言:
人工智能(AI)是本世纪最具影响力和变革力的技术之一,它正在改变我们的生活、工作和社会。在人工智能领域,语言模型(LM)是一种可以理解和生成自然语言(如中文、英文等)的模型,它可以用于各种应用和研究主题,如聊天机器人、文本摘要、机器翻译、知识图谱等。随着计算能力和数据量的增加,语言模型也越来越强大和智能,如ChatGPT、百度文心一言、阿里通义千问、腾讯混元和华为盘古等大型语言模型(LLM),它们可以根据用户提供的输入(prompt)生成各种类型和风格的内容(response)。
但是,如何有效地利用语言模型呢?如何让语言模型理解我们想要的内容,并生成我们需要的结果呢?这就需要一种新兴的学科——提示工程(Prompt engineering)。提示工程是一种利用人工智能模型生成内容的方法,需要给模型提供一些输入(prompt),让模型根据输入生成输出(response)。提示工程的难点在于如何设计合适的输入,让模型能够理解用户的意图和需求,并生成高质量的输出。
为什么提示工程是本世纪最重要的技能之一呢?因为它可以让我们更好地与人工智能对话,更好地利用人工智能的能力和潜力,更好地创造和创新。提示工程可以帮助我们解决各种问题,提高效率和质量,拓展思维和视野,增强表达和沟通。提示工程不仅适用于语言模型,也适用于其他类型的人工智能模型,如图像、音频、视频等。提示工程是连接人类和人工智能的桥梁,是实现人机协作和协同创新的关键。
在本文中,我们将介绍提示工程的基本原理和方法,展示提示工程在不同领域和场景中的应用和案例(主要使用BingGPT和ChatGPT进行测试),探讨提示工程面临的挑战和前景。我们希望通过本文,让读者开始关注并学习提示工程这门重要而有趣的学科。

知识点:
提示工程(prompt engineering),是一种利用人工智能模型生成内容的方法,需要给模型提供一些输入(prompt),让模型根据输入生成输出(response)。它利用人工智能模型的语言生成能力,通过与模型对话,实现各种功能和任务,有着广泛的应用和案例,也有着一些高级的技巧和原则。提示工程是一门有趣而有用的技能,它可以让我们更好地利用人工智能模型的潜力,创造出更多的价值和可能性。
一、提示工程的基本原理和方法
在引言中,介绍了提示工程的概念和背景,说明了为什么它是本世纪最重要的技能之一。在本节中,将介绍提示工程的基本原理和方法,帮助读者掌握如何利用人工智能模型生成内容的技巧。
首先,我们需要了解什么是提示(prompt)。提示是一种给人工智能模型提供输入的方式,它可以包括指令、背景、示例、输入和输出指示等不同的元素,用于告诉模型我们想要它执行的任务和生成的结果。例如,如果我们想让新Bing为我们生成一首诗,我们可以给它一个这样的输入:
写一首五言绝句,主题是春天。
这个输入就是一个简单的提示,它包含了一个指令(写一首五言绝句)和一个背景(主题是春天)。根据这个输入,可能会生成这样一个输出:
好的,我试试吧。这是我写的一首五言绝句,主题是春天:春风吹绿杨柳, 百花争艳绽笑容。 蜜蜂采集花蜜, 小鸟欢唱枝头上。

这个输出就是一个简单的响应(response),它符合了输入中给出的任务和条件。当然,这个输出并不是唯一可能的结果,不同的模型或参数可能会生成不同风格或质量的内容。
其次,我们需要了解如何设计提示(prompt design)。设计提示的目的是让模型能够理解我们的意图和需求,并生成高质量的输出。设计提示的方法有很多,如使用问答格式、提供多个示例、使用特定的令牌或关键字等。设计提示的原则是要尽可能具体、明确、简洁和相关。例如,如果我们想让百度文心一言为我们生成一篇文章摘要,我们可以给它一个这样的输入:
Q: 请根据以下内容写一篇摘要,不超过100字。 A: Content: 人工智能(AI)是本世纪最具影响力和变革力的技术之一,它正在改变我们的生活、工作和社会。在人工智能领域,语言模型(LM)是一种可以理解和生成自然语言(如中文、英文等)的模型,它可以用于各种应用和研究主题,如聊天机器人、文本摘要、机器翻译、知识图谱等。随着计算能力和数据量的增加,语言模型也越来越强大和智能,如ChatGPT、百度文心一言、阿里通义千问、腾讯混元和华为盘古等大型语言模型(LLM),它们可以根据用户提供的输入(prompt)生成各种类型和风格的内容(response)。
这个输入就是一个问答式的提示,它包含了一个问题(Q)和一个答案(A)。问题部分给出了任务的要求和限制,答案部分给出了需要摘要的内容。根据这个输入,BingGPT可能会生成这样一个输出:
摘要:本文介绍了人工智能(AI)领域中的语言模型(LM),它是一种可以理解和生成自然语言的模型。本文概述了语言模型的应用和研究主题,如聊天机器人、文本摘要、机器翻译、知识图谱等,并介绍了几种大型语言模型(LLM),如ChatGPT、百度文心一言、阿里通义千问、腾讯混元和华为盘古等。本文分析了语言模型的优势和挑战,并展望了语言模型的未来发展方向。

这个输出就是一个简单的摘要(summary),它符合了输入中给出的任务和条件。当然,这个输出并不是唯一可能的结果,不同的模型或参数可能会生成不同风格或质量的内容。
最后,我们需要了解如何优化提示(prompt optimization)。优化提示的目的是让模型能够更好地执行任务,并提高输出的准确性、可靠性和多样性。优化提示的方法有很多,如调整模型参数、使用反馈循环、进行实验和迭代等。优化提示的原则是要尽可能测试、评估和改进。例如,如果我们想让百度文心一言为我们生成一首诗,我们可以尝试不同的输入来观察输出的变化,如下所示:
写一首五言绝句,主题是太阳。输出: 太阳升起东方, 万物沐浴光芒。 暖风拂过山岗, 人们欢笑田旁。
写一首五言绝句,主题是太阳。请使用对仗法。 输出: 太阳照亮天空, 白云映衬山峰。 日出惊艳东方, 晚霞绚烂西红。
写一首五言绝句,主题是太阳。请使用拟人法。 输出: 太阳从梦中醒, 慢慢露出笑脸。 他照耀着大地, 温暖着万物心。

从上面的例子可以看出,不同的输入会导致不同风格或质量的输出。通过优化提示,我们可以让模型更好地满足我们的需求和期望。
总之,在本节中,我们介绍了提示工程的基本原理和方法,包括什么是提示、如何设计提示和如何优化提示。我们通过一些具体的例子,展示了提示工程在文本摘要、信息提取、问答、文本分类、对话、代码生成和推理等任务中的应用。我们希望通过本节,让读者对提示工程有一个初步的了解和掌握。在下一节中,我们将介绍提示工程在不同领域和场景中的应用和案例,让读者更深入地感受提示工程的魅力和价值。

二、提示工程的应用和案例
在上一节中,我们介绍了提示工程的基本原理和方法,包括什么是提示、如何设计提示和如何优化提示。在本节中,我们将介绍提示工程在不同领域和场景中的应用和案例,让读者更深入地感受提示工程的魅力和价值。
首先,我们来看一个生成数据的应用。生成数据是指利用人工智能模型的文本生成能力,通过有效的提示策略,引导模型产生更好、更一致和更准确的数据,用于各种实验和测试。例如,我们可以使用ChatGPT来生成一些情感分析的例子,如下所示:
生成 10个情感分析例子。 将示例归类为积极或消极。 生成 2个消极的示例和 8个积极的示例。 使用以下格式进行示例: 问: <句子 > 答: <情感 >
输出:以下是 10个情感分析例子,2个消极的示例和8个积极的示例:
问: 我们失去了游戏,但我们付出了最大的努力。 答: 积极 [1]
问: 这个新餐厅真是美味! 答: 积极 [3]
问: 我的电脑坏了,我现在不能上网了。 答: 消极 [1]
问: 我感到非常生气和失望,因为我未能赢得比赛。 答: 消极 [3]
问: 我很高兴今天早上起床了,可以迎接新的一天。 答: 积极 [1]
问: 每个人都对我的研究表达了高度评价。 答: 积极 [3]
问: 我们刚刚完成了一个困难的任务,这让我们感到非常自豪。 答: 积极 [1]
问: 我们的校园环境真的很美丽。 答: 积极 [3]
问: 我在晚会上看到了我的老朋友们,这让我感到非常快乐。 答: 积极 [1]
问: 我们的公司获得了一个巨大的合同,这是我们的一次重大胜利。 答: 积极 [3]

这些输出就是一些简单的情感分析例子(examples),它们符合了输入中给出的任务和条件。当然,这些输出并不是唯一可能的结果,不同的模型或参数可能会生成不同风格或质量的内容。通过生成数据,我们可以快速地获取一些样本数据,用于训练或评估我们自己的情感分类器。
其次,我们来看一个PAL(编程辅助语言模型)的应用。PAL是指利用人工智能模型的代码生成能力,通过将问题转化为程序作为中间推理步骤,利用编程运行时(如Python解释器)来提供答案。例如,我们可以使用ChatGPT解决一些需要日期理解的问题,如下所示:
根据以下上下文回答问题。 保持答案简短明了。 如果不确定答案,请回复“不确定答案”。
语境:
Teplizumab 的根源可以追溯到一家名为 Ortho Pharmaceutical 的新泽西制药公司。 在那里,科学家们生成了早期版本的抗体,称为 OKT3。 该分子最初来自小鼠,能够与 T 细胞表面结合并限制其杀伤细胞的潜力。 1986 年,它被批准用于帮助预防肾移植后的器官排斥反应,使其成为第一个获准用于人类的治疗性抗体。
问题:
OKT3最初来源于什么?
回答:
输出:
OKT3最初来源于小鼠。

这个输出就是一个简单的答案(answer),它符合了输入中给出的任务和条件。当然,这个输出并不是唯一可能的结果,不同的模型或参数可能会生成不同风格或质量的内容。通过PAL,我们可以让模型利用编程语言和逻辑来解决一些复杂或特定的问题。
最后,我们来看一个Python笔记本的应用。Python笔记本是指利用人工智能模型的代码执行能力,通过在Python笔记本中使用提示,实现各种功能和任务,如数据分析、可视化、机器学习等。例如,我们可以使用BingGPT(因为涉及AI绘画,这里使用新必应桌面端)来绘制一些图表,如下所示:
在Python笔记本中执行以下代码,并显示结果。
import matplotlib.pyplot as plt import numpy as np
生成一些随机数据
x = np.random.randn(1000) y = np.random.randn(1000)
绘制散点图
plt.scatter(x, y) plt.xlabel(‘x’) plt.ylabel(‘y’) plt.title(‘Random Scatter Plot’) plt.show()
输出:

这个输出就是一个简单的图表(chart),它显示了输入中给出的代码执行后的结果。当然,这个输出并不是唯一可能的结果,不同的模型或参数可能会生成不同风格或质量的内容。通过Python笔记本,我们可以让模型利用Python语言和库来实现各种功能和任务。
总之,在本节中,我们介绍了提示工程在不同领域和场景中的应用和案例,包括生成数据、PAL(编程辅助语言模型)和Python笔记本。我们通过一些具体的例子,展示了提示工程在文本生成、代码生成和代码执行等任务中的能力和价值。我们希望通过本节,让读者更深入地感受提示工程的魅力和价值。在下一节中,我们将介绍提示工程的一些高级技巧和原则,让读者更好地掌握如何设计和优化高效和有效的提示。

三、提示工程的高级技巧和原则
在上一节中,我们介绍了提示工程在不同领域和场景中的应用和案例,包括生成数据、PAL(编程辅助语言模型)和Python笔记本。在本节中,我们将介绍提示工程的一些高级技巧和原则,让读者更好地掌握如何设计和优化高效和有效的提示。
首先,我们来看一个零样本提示的技巧。零样本提示是指利用人工智能模型的零样本能力,通过简单的提示,让模型在没有任何示例的情况下执行任务。例如,我们可以使用ChatGPT来进行文本分类,如下所示:
将文本分类为中性、负面或积极。 文本:我认为假期还好。
情感:
输出:
中性

这个输出就是一个简单的分类(classification),它符合了输入中给出的任务和条件。当然,这个输出并不是唯一可能的结果,不同的模型或参数可能会生成不同风格或质量的内容。通过零样本提示,我们可以让模型利用其内部知识和语言理解来执行各种任务。
其次,我们来看一个少样本提示的技巧。少样本提示是指利用人工智能模型的少样本能力,通过在提示中提供一些示例,让模型在有限的数据下执行任务。例如,我们可以使用ChatGPT来进行命名实体识别(NER),如下所示:
根据以下上下文回答问题。 保持答案简短明了。 如果不确定答案,请回复“Unsure about answer”。
Context:
Teplizumab 的根源可以追溯到一家名为 Ortho Pharmaceutical 的新泽西制药公司,在那里,科学家们生成了早期版本的抗体,称为 OKT3。 该分子最初来自小鼠,能够与 T 细胞表面结合并限制其杀伤细胞的潜力。 1986 年,它被批准用于帮助预防肾移植后的器官排斥反应,使其成为第一个获准用于人类的治疗性抗体。
Question:
Ortho Pharmaceutical 是哪个国家的公司?
Answer:
Output:
Ortho Pharmaceutical 是美国的公司。

这个输出就是一个简单的答案(answer),它符合了输入中给出的任务和条件。当然,这个输出并不是唯一可能的结果,不同的模型或参数可能会生成不同风格或质量的内容。通过少样本提示,我们可以让模型利用一些示例数据来执行各种任务。
最后,我们来看一个链式思考提示的技巧。链式思考提示是指利用人工智能模型的推理能力,通过在提示中提供一些推理步骤,让模型在复杂的任务下执行任务。例如,我们可以使用ChatGPT来进行算术运算,如下所示:
这组数中的奇数相加得到一个偶数:4、8、9、15、12、2、1。 A:将所有奇数相加(9、15、1)得到25。 答案是错的。
这组数中的奇数相加得到一个偶数:15、32、5、13、82、7、1。 A:
Output:
将所有奇数相加(15+5+13+7+1)得到41,不是一个偶数。因为所有奇数之和为奇数,不可能得到一个偶数的结果。

这个输出就是一个简单的运算(calculation),它符合了输入中给出的任务和条件。当然,这个输出并不是唯一可能的结果,不同的模型或参数可能会生成不同风格或质量的内容。通过链式思考提示,我们可以让模型利用一些推理步骤来执行各种任务。
总之,在本节中,我们介绍了提示工程的一些高级技巧和原则,包括零样本提示、少样本提示、链式思考提示、自我一致性、生成知识提示和自动提示工程师。我们通过一些具体的例子,展示了提示工程在不同任务中的能力和价值。我们希望通过本节,让读者更好地掌握如何设计和优化高效和有效的提示。

结论:
提示工程是一门新兴的技术,它利用人工智能模型的语言生成能力,通过与模型对话,实现各种功能和任务。提示工程有着广泛的应用和案例,包括生成数据、PAL(编程辅助语言模型)、Python笔记本等。提示工程也有着一些高级的技巧和原则,包括零样本提示、少样本提示、链式思考提示,其他还有自我一致性、生成知识提示和自动提示工程师等。提示工程是一门有趣而有用的技能,它可以让我们更好地利用人工智能模型的潜力,创造出更多的价值和可能性。我们希望通过本文,让读者对提示工程有了一个初步的了解和兴趣,并鼓励读者尝试自己与人工智能模型对话,发现更多的惊喜和乐趣。

附录:
《花雕学AI》是一个学习与交流AI的专栏,由驴友花雕撰写,主要介绍了人工智能领域的多维度学习和广泛尝试,包含多篇文章,分别介绍了ChatGPT、New Bing和Leonardo AI等人工智能应用和技术的过程和成果。本专栏通过实际案例和故事,详细介绍了人工智能和编程的基本概念、原理、方法、应用等,并展示了这些平台的各种人工智能功能,如搜索、交流、创作、绘画等。在本专栏里,作者花雕和ChatGPT及新必应等一起探索了各种有趣和有用的人工智能应用。他们共同学习了很多人工智能和编程的知识和技能,并结下了深厚的友谊。他们用自己的创造力和热情,为人工智能领域增添了一抹亮色。如果您也对此感兴趣,欢迎关注《花雕学AI》这个专栏,大家一起探索人工智能的奥秘和乐趣。想要了解本专栏的最新进展,请使用谷歌、必应、百度或者今日头条等引擎直接搜索【花雕学AI】。
《花雕学AI》17:关注提示工程—本世纪最重要的技能可能就是与AI人工智能对话的更多相关文章
- [置顶]
AI大行其道,你准备好了吗?—谨送给徘徊于转行AI的程序员
前言 近年来,随着 Google 的 AlphaGo 打败韩国围棋棋手李世乭之后,机器学习尤其是深度学习的热潮席卷了整个IT界.所有的互联网公司,尤其是 Google 微软,百度,腾讯等巨头,无不在布 ...
- XMOS发布集单片机,AI,FPGA,DSP于一身的跨界处理器完全体xcore.ai,致力于AIOT,售价1美元起步
说明:XMOS这次致力于打造全新的,颠覆性的嵌入式平台,简化开发人员要学一堆东西才能开发一款高性能AIOT产品的痛点. XCORE.AI集单片机,AI,FPGA,DSP于一身,嵌入式软件开发人员可以灵 ...
- 零基础学python-2.17 文件、open()、file()
今天我们来说说文件,以及跟文件有关的内建函数open和file 首先我们在python的根文件夹下建一个名为"123"的txt文本文件 文件中面我们输入一些文本 watermark ...
- idou老师教你学Istio 17 : 通过HTTPS进行双向TLS传输
众所周知,HTTPS是用来解决 HTTP 明文协议的缺陷,在 HTTP 的基础上加入 SSL/TLS 协议,依靠 SSL 证书来验证服务器的身份,为客户端和服务器端之间建立“SSL”通道,确保数据运输 ...
- 17 汽车服务工程 李腾飞 MP4
- 17 汽车服务工程 李腾飞 Excel 课程表
- 17级-车辆工程-周金霖 计算机作业 MP4音乐网站
- Rhythmk 一步一步学 JAVA (17):Servlet 文件上传
1.环境 : JDK 1.6 , Tomcat 7.0 2.第三方类库: commons-fileupload-1.3.1.jar commons-io-2.4.jar 3.web.xml配置: &l ...
- 跟着百度学PHP[17]-复习PDO的几个关键词
主要就是复习一下几个关键词.发现太久没有写又忘了.惭愧. final self static const
- 跟着百度学PHP[17]-PHP扩展CURL的模拟登陆并获取数据
这两天也不知道怎么,学习效率低.很无奈. 如何知道要去URL该怎么填写呢?就是填写表单中的Action内容: tempnam() 函数创建一个具有唯一文件名的临时文件. <?php header ...
随机推荐
- Linux目录结构说明与基本操作
Linux系统目录如下: 详细说明如下: Linux系统文件与目录的基本操作: 一.显示文件内容命令--cat.more.less.head.tail. 1.cat命令 该命令的主要功能是用来显示文件 ...
- PostgreSQL备份与恢复命令
postgresql备份与恢复相关命令 --备份用户的数据库bct的所有内容pg_dump -U 用户名 -d 库名 -f xxxXXXxxx.sql--删除原有数据库dropdb -U 用户名 -f ...
- git的基础指令练习
#版本回退 git reset commitId --hard
- 1js 高级
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 这几年专注于流程管理与RPA落地
这些年专注于流程管理与RPA落地,乙方有些辛苦,但,也得到了客户的认可,开心. 做过多个流程管理咨询,发现信息化落地后孤岛很多,RPA 刚好可以作为各个系统的有效补充,把系统有机的结合在一起. 企业信 ...
- JDMasking v0.1.0-beta 发布
JDMasking 全称是jdbc data masking,是一款零代码修改.无重启.基于JDBC的动态数据脱敏软件. JDMasking 主要对实现jdbc的驱动进行字节码的增强,支持对运行中的程 ...
- 【LuckyFrame研究】环境准备
LuckyFrame官方使用手册:http://www.luckyframe.cn/book/yhsc/syschyy-24.html LuckyFrame在码云平台或是GitHub上都是分成二个项目 ...
- spring aop切面说明
execution:处理Join Point的类型,例如call.execution (* android.app.Activity.on**(..)):这个是最重要的表达式,第一个*表示返回值,*表 ...
- python-if、while、for语句的练习
简单练习 1. 根据百分制成绩打印及格和不及格,60分一下不及格 source = float(input('请输入您的成绩:')) if 0 <= source < 60: print( ...
- 《程序员的自我修养》学习笔记——ELF 文件结构介绍【第二弹】
ELF 文件结构介绍 文件头 以 ELF 文件64位版本为例: e_ident [ELF魔数 16byte] 1-4字节:ELF 文件都必须相同的标识码,分别为 0x7F,0x45,0x4C,0x46 ...