不写代码、年薪百万,带你玩赚ChatGPT提示工程-基本提示

文章目录

  • 前言
  • 一、文本摘要
  • 二、信息抽取
  • 三、问答
  • 四、文本分类
  • 五、对话
  • 六、代码生成
  • 七、推理
  • 总结


前言

随着ChatGPT的大火,提示工程在大模型中的重要性不言而喻,本文参考国外Prompt Engineering Guide完成国内中文版本的《提示工程指南》,希望能够和大家一起交流,分享及发现提示工程的美妙之处。文章所有内容可以在ChatGPT_Prompt_Chinese中找到。

在之前的指南中,我们介绍并给出了Prompt的基本示例。

在本指南中,我们将提供更多示例,展示Prompt如何使用,并介绍更高级指南中重要的关键概念。

通常,学习概念的最佳方法是通过示例进行。下面我们将涵盖几个示例,展示良好制作的Prompt如何用于执行各种有趣且不同的任务。


一、文本摘要

自然语言生成中的标准任务之一是文本摘要。文本摘要可以包含许多不同的风格和领域。事实上,语言模型最有前途的应用之一是将文章和概念总结成快速易读的摘要。让我们尝试使用Prompt进行基本的摘要任务。

假设我想了解有关抗生素的信息,我可以尝试使用如下Prompt:

Prompt:

解释抗生素是什么
A:

Output:

抗生素是指一类能够抑制或杀死细菌、真菌、病毒等微生物的药物。它们通过干扰微生物的生长和复制过程,达到治疗感染疾病的目的。抗生素广泛应用于医学领域,是治疗许多疾病的有效药物之一,但也需要根据医生的建议正确使用以避免滥用和耐药性的问题。

“A:” 是用于问答的明确提示格式。我在这里使用它告诉模型后面有一个期望的进一步信息。在这个示例中,不清楚如何使用它比不使用它更有用,但我们将在以后的示例中详细探讨。现在假设这是太多信息了,我们想进一步简化它。实际上,我们可以指示模型将其总结为一句话,如下所示:

Prompt:

抗生素是一种治疗细菌感染的药物,能够杀死或阻止细菌繁殖,协助人体免疫系统对抗感染,通常以口服、注射等方式使用,对病毒感染无效,不当使用会导致抗生素耐药性。请用一句话概括上述内容:

Output:

抗生素是一种能够杀死或阻止细菌繁殖的药物,常用于治疗细菌感染,但不适用于病毒感染,需避免滥用和耐药性。

上面的输出精度先不用太关注,我们会在后面的指南中详细讨论,模型试图将段落总结为一句话。您可以尝试更巧妙的指令,但我们将在以后的章节中介绍。现在可以暂停一下尝试一下,看看是否可以获得更好的结果。


二、信息抽取

虽然语言模型被训练用于执行自然语言生成和相关任务,但它也非常擅长执行分类和一系列其他自然语言处理(NLP)任务。

以下是一个从给定段落中提取信息的Prompt示例:
Prompt:

在研究论文中,作者贡献声明和致谢应明确而具体地说明作者在撰写和分析手稿时是否使用了 ChatGPT 等 AI 技术,以及使用了哪些 LLMs。这将提醒编辑和审稿人更仔细地审查手稿,以寻找潜在的偏见、不准确和不适当的来源引用。同样,科学期刊在选择投稿时应对其使用 LLMs 透明。请提及上面段落中提到的大型语言模型产品的名称:

Output:

上述段落中提到的大型语言模型产品名称为 ChatGPT。

我们可以通过多种方式来改进上述结果,但已经非常有用了。
现在应该很明显,您可以通过简单地指示模型来要求它执行不同的任务。这是一种强大的能力,AI 产品构建者已经利用它来构建强大的产品和体验。
段落来源: ChatGPT: five priorities for research


三、问答

获取模型特定答案的最佳方法之一是改进Prompt的格式。如前所述,Prompt可以结合指令、上下文、输入和输出指示符来获得改进的结果。虽然这些组件并不是必需的,但随着指令越具体,结果就越好,因此这成为了一个好的实践。以下是一个遵循更结构化Prompt的示例。

Prompt:

根据下面的背景回答问题,保持回答简短明了。如果不确定答案,请回答“不确定”。背景:Teplizumab 起源于新泽西州的一家药品公司 Ortho Pharmaceutical。在那里,科学家们生成了一个名为 OKT3 的抗体的早期版本。分子最初来自小鼠,能够结合到 T 细胞的表面并限制其杀伤细胞的潜力。 1986年,它被批准用于帮助预防肾移植后器官排异,成为首个允许人类使用的治疗性抗体。问题:OKT3 最初来自哪里?回答:

Output:

OKT3 最初来自小鼠。

背景来自于Nature。


四、文本分类

到目前为止,我们使用简单的指令执行任务。作为一个提示工程师,您需要更好地提供更好的指令。但这还不是全部!您还会发现,对于更难的用例,仅提供指令是不够的。这就是您需要更多地考虑上下文和提示中可以使用的不同元素的地方。您可以提供的其他元素包括“输入数据”或“示例”。

让我们通过提供文本分类的示例来演示这一点。

Prompt:

将文本分类为中性、负面或积极。
文本:我认为食物还不错。

Output:

这段文本是中性情感。

这段回复和davinci-3也是有点出入的,davinci-3回复中性,chatgpt回复中性情感。假设我们真正需要的是模型按照我们想要的格式给出标签。因此,我们希望它返回“情感:中性”而不是“这段文本是中性情感”。我们如何实现这一点呢?有不同的方法可以做到这一点。在这里,我们关注的是具体性,因此我们可以尝试提供示例来指定正确的行为。让我们再试一次:
Prompt:

将文本分类为中性、负面或积极。文本1: 我认为度假还可以。
情感: 中性文本2: 我认为食物还不错。
情感: 

Output:

情感:中性

太好了!这一次模型返回了“情感:中性“,这正是我寻找的具体标签。看来Prompt中提供的示例有助于模型在输出中变得更具体。为了强调为什么有时候具体性很重要,请看这个例子并找出问题:

Prompt:

将文本分类为中性、负面或积极。文本: 我认为度假还可以。
情感: 

Output:

中性

这里有什么问题呢?


五、对话

也许你可以通过提示工程来实现更有趣的事情,告诉系统如何行动、它的意图和身份。当您构建对话系统时,这特别有用。

例如,让我们创建一个对话系统,它能够针对问题提供更多技术和科学方面的回答。请注意,我们通过指令明确告诉它如何行动
Prompt:

以下是与AI研究助手的对话。助手的语气是技术和科学的。人类:你好,你是谁?
AI:你好!我是一名AI研究助手。我今天能为您做些什么呢?
人类:你能告诉我黑洞的形成吗?
AI:

Output:

当一个恒星在死亡时,会形成一个非常密集的核心,这个核心被称为“恒星遗骸”,或者更常见的称为“中子星”。然而,如果这个核心质量过于巨大,中子星就会坍塌成为一个黑洞。黑洞是宇宙中最密集的物体之一,它的引力场是如此强大,甚至连光也无法逃脱它的吸引。

我们的AI研究助手听起来有些过于技术化了,对吗?好的,让我们更改这种行为,并指示系统提供更易懂的回答。

Prompt:

以下是与AI研究助手的对话。助手的回答应该是即使小学生也能理解的简单易懂的。人类:你好,你是谁?
AI:您好!我是一名AI研究助手。请问有什么我能为您提供帮助的吗?
人类:你能告诉我黑洞的形成吗?
AI:

Output:

AI:当一颗巨大的星星死亡时,它会塌缩成一个非常小又非常密集的东西,这个东西就叫做黑洞。它是宇宙中最黑暗的东西,它的引力非常强大,连光都无法逃脱。

我认为我们取得了一些进展。您可以继续改进它。我相信,如果您增加更多的示例,您可能会获得更好的结果。

六、代码生成

LLMs相当有效的一种应用是代码生成。Copilot就是一个很好的例子。您可以使用巧妙的Prompt来执行大量的代码生成任务。让我们看下面的一些示例。

首先,让我们尝试一个简单的程序来向用户打招呼。

Prompt:

/*
要求用户输入他们的姓名并说“你好”
*/

Output:

请写一个程序,要求用户输入他们的姓名并打印出“你好,姓名!”的问候语。示例代码:#include <iostream>
#include <string>using namespace std;int main() {string name;cout << "请输入您的姓名:" << endl;cin >> name;cout << "你好," << name << "!" << endl;return 0;
}

在这里插入图片描述

您可以看到,我们甚至不需要指定要使用的语言。

让我们稍微调整一下难度。我想向您展示设计提示时,LLMs可以变得多么强大。

Prompt:

"""
Table departments, columns = [DepartmentId, DepartmentName]
Table students, columns = [DepartmentId, StudentId, StudentName]
为计算机科学系的所有学生创建一个MySQL查询。
"""

Output:

以下是创建MySQL查询的语句,用于查找计算机科学系的所有学生:SELECT students.StudentId, students.StudentName
FROM students
INNER JOIN departments ON students.DepartmentId = departments.DepartmentId
WHERE departments.DepartmentName = '计算机科学系';此查询使用INNER JOIN将学生表和部门表连接起来,然后使用WHERE子句来筛选计算机科学系的学生。

在这里插入图片描述
这非常令人印象深刻。在这种情况下,我们提供了关于数据库架构的数据,并要求它生成有效的MySQL查询。


七、推理

对于LLM而言,也许最困难的任务之一是需要某种形式的推理。由于LLMs可以产生各种复杂的应用程序,因此我对推理领域最感兴趣。

在涉及数学能力的任务方面已经取得了一些进展。尽管如此,需要注意的是,当前的LLMs仍然难以执行推理任务,因此需要更先进的提示工程技术。我们将在下一篇指南中涵盖这些高级技术。现在,我们将介绍一些基本的示例,以展示算术能力。
Prompt:

请问9,000 * 9,000等于多少?

Output:

9,000乘以9,000等于81,000,000。

让我们尝试一些更难的东西。

Prompt:

这个组中的奇数相加得到一个偶数:15、32、5、13、82、7、1。A:

Output

这个组中的奇数相加得到一个偶数:128。解释:15 + 5 + 13 + 7 + 1 = 41
41是奇数。15 + 5 + 13 + 7 + 1 + 32 = 73
73是奇数。15 + 5 + 13 + 7 + 1 + 32 + 82 = 155
155是奇数。因此,最后一个数82是偶数。因此,15 + 5 + 13 + 7 + 1 + 32 + 82 = 128是偶数。

很明显这个回答是有误的,让我们尝试通过改进Prompt来改进它。

Prompt:

这道题的答案是一个偶数,其中需要对给出的一组数字进行加法运算。请将这组数字中的所有奇数相加,然后确定最终结果是奇数还是偶数。给出的数字是:15、32、5、13、82、7、1。请问,最后的结果是奇数还是偶数?答案是多少?

Output:

将给出的数字中的所有奇数相加,得到 15 + 5 + 13 + 7 + 1 = 41。由于奇数加奇数等于偶数,而偶数加奇数等于奇数,因此最终结果是奇数。答案为 41 是一个奇数。

好多了,对吧?顺便说一句,我试过几次,这个系统有时候会出错。如果您提供更好的指令,并结合实例,可能会有更准确的结果。

我们将继续在指南的这一部分包含更多常见应用的例子。

在即将推出的指南中,我们将介绍更高级的提示工程概念,以提高所有这些以及更难的任务的性能。


总结

这篇文章中,我们详细介绍了基础提示工程的一些例子,并分别给予不同的topic,分析了不同的案例,让大家更加深入的了解提示工程。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/5727.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

测试人员可以用chatgpt做什么

作为一名测试人员&#xff0c;一用上chatgpt就迫不及待想要看它的“测试水平”如何。 1、测试人员每个迭代都离不开的编写测试用例 下面是对话截图&#xff1a; 有经验的测试人员一眼就能看出它只把核心流程覆盖了&#xff0c;不过不要紧&#xff0c;这类用例可以为自己节省了…

ChatGPT和Claude 对比测试(以Review MLIR Codegen代码为例)

Claude在MLIR代码分析上完全超越了ChatGPT并表现十分惊艳&#xff0c;请阅读全文或者自己注册感受它的强大。结论&#xff1a;在本文的任务中&#xff0c;Claude > ChatGPT >> NewBing 0x0. 前言 这里将以oneflow IR部分中的一个Codegen任务&#xff08;目标是在mlir…

Z-library 官方正式回归!

上一次写 Z-library 这个网站&#xff0c;还是在年前&#xff0c;当时 Z-lib 的主域名被美国官方搞了后&#xff0c;被迫转移到了深层网络。 但关于 Z-lib 的故事并没有结束&#xff0c;而是在压力重重下&#xff0c;这个神仙站里的内容被国内外的无数团队、无数项目续上了命。…

阿里云轻量服务器 利用宝塔面板 为域名部署SSL证书

除了在Lets Encrypt网站制作服务器SSL证书以外&#xff0c;阿里云上申请SSL证书的步骤更加的简单。以下先给出前者的教程博客&#xff0c;感兴趣的可以移步观看 申请Let‘s Encrypt永久免费SSL证书_栗少的博客-CSDN博客_letsencrypt 一、在阿里云平台进行域名置购和备案&…

Linux 禁用23端口

禁用23端口 文章目录 前言检查23端口是否被占用正常情况&#xff1a;23端口是没有被使用的。特殊情况&#xff1a;不排除个别系统使用了23端口。 看看 ChatGpt 是怎么处理的&#xff1f;步骤一&#xff1a;vim /etc/services 编辑&#xff0c;禁用23端口是必要的。:wq保存修改。…

Docker翻脸暂停账户,强制收费,不再开源!

点击“开发者技术前线”&#xff0c;选择“星标” 让一部分开发者看到未来 作者 | 王瑞平 来自&#xff1a;51CTO技术栈 前几日&#xff0c;Docker Hub出了一件大事&#xff01;但凡创建了“organisation”的用户都收到了一封含有简短PDF链接的邮件。邮件的内容“金钱味”十足&…

意大利禁用ChatGPT! AI工具使用是否应该被限制?

​*以下部分内容来源于公众号&#xff1a;南风窗 OpenAI GPT大模型引领全球AI创新热潮&#xff0c;但其新技术之下 “矛“与”盾”也日益严重。 一、意大利封禁ChatGPT&#xff0c;全面调查隐私问题 就在前几天&#xff0c;Italy突然下令&#xff0c;封禁ChatGPT&#xff01; …

当创业者开始用 ChatGPT 裁员

几个月来&#xff0c;对话机器人 ChatGPT 展现出的能力令世界惊叹。 它能够轻而易举地完成人类的工作&#xff1a;无论是写出华尔街日报风格的文章、还是接到需求后敲出流畅的代码&#xff0c;甚至仅靠手写稿纸就自动生成网站等等。当它高分通过人类的律法、外语、高考等考试时…

GPT-4为通过人机验证,试图雇人给自己打工,还骗了对方

点击上方“AI遇见机器学习”&#xff0c;选择“星标”公众号 重磅干货&#xff0c;第一时间送 机器之心 GPT-4 在律师考试能拿 90% 成绩&#xff0c;SAT 能上常青藤&#xff0c;谁说它就不能骗人&#xff1f; 在 GPT-4 推出以后&#xff0c;OpenAI 首席执行官 Sam Altman 表示&…

有点慌了!ChatGPT可能影响80%工作岗位!

机器之心报道 机器之心编辑部 ChatGPT 的影响涵盖所有收入阶层&#xff0c;且高收入工作可能面临更大的风险。 ChatGPT 来了&#xff0c;失业还会远吗&#xff1f;上星期在 GPT-4 发布时&#xff0c;ChatGPT 第一时间上线了新版本&#xff0c;OpenAI 首席执行官 Sam Altman 表示…

OpenAI重磅研究:ChatGPT可能影响80%工作岗位

划重点&#xff1a; 1研究人员估计 ChatGPT 和使用该程序构建的未来应用可能影响美国大约 19% 的工作岗位&#xff0c;和他们至少 50% 的工作任务。与此同时&#xff0c;80% 的美国劳动力至少有 10% 的工作任务在某种程度上将受到 ChatGPT 的影响。 2通过分析他们发现&#xff…

OpenAI重磅研究:ChatGPT可能影响80%工作岗位,收入越高影响越大

点击上方“AI遇见机器学习”&#xff0c;选择“星标”公众号 重磅干货&#xff0c;第一时间送 来自&#xff1a;机器之心 ChatGPT 的影响涵盖所有收入阶层&#xff0c;且高收入工作可能面临更大的风险。 ChatGPT 来了&#xff0c;失业还会远吗&#xff1f;上星期在 GPT-4 发布时…

ChatGPT 开源了第一款插件,都来学习一下源码吧~

3 月 23 日&#xff0c;OpenAI 又投出了一枚重磅炸弹&#xff1a;为 ChatGPT 推出插件系统&#xff01; 此举意味着 ChatGPT 将迎来“APP Store”时刻&#xff0c;也就是围绕它的能力&#xff0c;形成一个开发者生态&#xff0c;打造出基于 AI 的“操作系统”&#xff01; 插…

如何使用ChatGPT处理excel

用ChatGPT处理excel&#xff0c;我们需要用到的主要工具是ChatGPT和vba代码。 VBA代码是一种用于Excel&#xff0c;Word&#xff0c;PPT的Microsoft Office软件的编程语言。 可以让用户通过编写一些简单的指令和操作&#xff0c;实现自动化、自定义和数据处理等功能。 就像你编…

用ChatGPT生成Excel公式,太方便了!

点击上方“Java基基”&#xff0c;选择“设为星标” 做积极的人&#xff0c;而不是积极废人&#xff01; 每天 14:00 更新文章&#xff0c;每天掉亿点点头发... 源码精品专栏 原创 | Java 2021 超神之路&#xff0c;很肝~中文详细注释的开源项目RPC 框架 Dubbo 源码解析网络应…

用ChatGPT生成Excel公式,太方便了

ChatGPT 自去年 11 月 30 日 OpenAI 重磅推出以来&#xff0c;这款 AI 聊天机器人迅速成为 AI 界的「当红炸子鸡」。一经发布&#xff0c;不少网友更是痴迷到通宵熬夜和它对话聊天&#xff0c;就为了探究 ChatGPT 的应用天花板在哪里&#xff0c;经过试探不少人发现&#xff0c…

chatgpt赋能python:Python中如何生成表格

Python中如何生成表格 在数据分析和处理中&#xff0c;表格是一种常见的数据格式&#xff0c;并且在不同的场景下都有着不同的用途。Python作为一种高效的编程语言&#xff0c;可以帮助我们轻松地生成和操作表格数据。在本文中&#xff0c;我们将介绍Python中生成表格的方法&a…

【ChatGPT实战】7.使用ChatGPT自动化操作Excel

使用ChatGPT自动化操作Excel&#xff01;现在可以借助ChatGPT让我们操作表格更加智能化、高效化。无需手动操作&#xff0c;提高你的工作效率并减少出错率。如果你经常使用Excel&#xff0c;这将是一项非常实用的技能。下面我将向你展示如何使用ChatGPT自动化Excel操作&#xf…

短信验证码和邮箱验证码

目录 一、短信发送验证码 1、准备工作 2、项目整合容联云 2.1 引入依赖 2.2 编写配置文件&#xff0c;修改启动类 2.3.1 创建常量类 2.3.2、封装验证码生成类 2.3.3、Controller 层 2.3.4、Service层 二、邮箱验证码 1、准备工作 2、整合邮箱服务 1、引入依赖 2、开…

邮箱接收验证码登录

开发工具与关键技术&#xff1a;VS NVC 作者:听民谣的老猫 撰写时间&#xff1a;2019/7/25 11:07 已经讲过通过账号密码来进行用户的登录,今天就来讲讲邮箱发送动态密码实现用户登录。 再讲这个功能之前你得去QQ邮箱获取一下授权码。 首先登录自己的QQ邮箱&#xff0c;找…