怎么写好一个 Prompt?

简介: 如果你需要別人帮忙做事,就需要给他具体的「指令」或「提示」;把角色换成 ChatGPT,Prompt 就是你问问题或提出请求的文字提示。而决定 ChatGPT 回答质量的重要因素,就在于你提供的「Prompt」是否足够完善。

嘿,小伙伴们!是不是有朋友试用 ChatGPT 后,觉得她总是给不出自己期望的回复呢?那是因为我们还沒有掌握到使用要领哈。

今天这篇文章会先带你了解「Prompt」是什么,及工作原理,并用简单的范例让你了解如何用他、避开陷阱,以及如何获得更好的 ChatGPT 回复。

案例参考:

用 AI 绘图画了亿些小姐姐。。。

不需要编写代码,也能成为Hive SQL面试高手?ChatGPT告诉你...

高质量的 Prompt,可以使 AI 成为你的得力助手!

Prompt 是什么?


如果你需要別人帮忙做事,就需要给他具体的「指令」或「提示」;把角色换成 ChatGPT,Prompt 就是你问问题或提出请求的文字提示。

而决定 ChatGPT 回答质量的重要因素,就在于你提供的「Prompt」是否足够完善。

分享一个使用 ChatGPT 的小技巧:

1、把 ChatGPT 当成人来对待,她知道全世界的知识

2、让她角色扮演,如让她充当算法工程师

3、精准的描述自己的问题,就像你安排你的助手去解决一个问题

4、她会犯错误,可以给出一些示例,她会学着你的表达方式给出反馈

5、把她当成你的助手

提示工程的工作原理


prompt engineering:提示工程

由于指令依赖模型的训练方式或它们训练的数据,有一些特定的 prompt 格式特别有效,并且与目前的任务更好地匹配。下面我们介绍了一些我们发现工作可靠的 prompt 格式,但你可以随意探索可能最适合你任务的不同格式。

经验和例子


注意:“ {此处输入文字} ”是实际文本/上下文的占位符

1. 使用最新模型


为获得最佳效果,我们通常建议使用最新、功能最强大的模型。截至 2022 年 11 月,最佳选择是用于文本生成的“text-davinci-003” 模型和用于代码生成的“code-davinci-002”模型。

2. 用###或“””分隔指令和上下文


不太有效的❌:

将下面的文本总结为最重要的要点列表。
{此处输入文字}

更好的✅:

将下面的文本总结为最重要的要点列表。
文本:""" 
{此处输入文本} 
"""

3. 清晰的描述


尽可能详细、具体说明上下文、结果、长度、格式、样式等

不太有效的❌:

写一首关于 OpenAI 的诗。

更好的✅:

以{著名诗人}的风格写一首关于 OpenAI 的鼓舞人心的短诗,重点介绍最近的 DALL-E 产品发布(DALL-E 是一种文本到图像的 ML 模型)

4. 阐明所需的输出格式。


不太有效的❌:

提取下面文本中提到的实体。提取以下 4 种实体类型:公司名称、人名、特定主题和主题。
文字:{文字}

当显示特定格式要求时,模型会更好地响应。这也使得以编程方式可靠地解析出多个输出变得更加容易。

更好的✅:

提取下面文本中提到的重要实体。首先提取所有公司名称,然后提取所有人员姓名,然后提取适合内容的特定主题,最后提取一般总体主题
所需格式:
公司名称:<comma_separated_list_of_company_names>
人员名称:-||-
特定主题:-||-
一般主题:-||-
文本:{text}

5. 零样本、少量样本,若两者都不起作用,然后进行微调


✅ 零样本

从下面的文本中提取关键字。
文本:{text}
关键词:

✅ Few-shot - 提供几个例子

从下面相应的文本中提取关键词。
文本 1:Stripe 提供 API,网络开发人员可以使用这些 API 将支付处理集成到他们的网站和移动应用程序中。
关键词 1:Stripe、支付处理、API、Web 开发人员、网站、移动应用程序
##
文本 2:OpenAI 训练了非常擅长理解和生成文本的尖端语言模型。我们的 API 提供对这些模型的访问,可用于解决几乎任何涉及处理语言的任务。
关键词 2:OpenAI,语言模型,文本处理,API。
##
文本 3:{text}
关键词 3:

✅微调:查看微调最佳实践微调最佳实践。

6. 减少“不严肃的”和不精确的描述


不太有效的❌:

这个产品的描述应该很短,只有几句话,不要太多。

更好的✅:

使用 3 到 5 句话的段落来描述该产品。

7. 与其说什么不该做,不如说什么该做


不太有效的❌:

以下是代理和客户之间的对话。不要询问用户名或密码。不要重复。
客户:我无法登录我的帐户。
代理人:

更好的✅:

以下是代理和客户之间的对话。代理将尝试诊断问题并提出解决方案,同时避免询问与 PII 相关的任何问题。不要询问用户名或密码等 PII,而是让用户参阅帮助文章 www.samplewebsite.com/help/faq
客户:我无法登录我的帐户。
代理人:

8. 特定代码生成——使用“引导词”将模型推向特定模式


不太有效的❌:

# 编写一个简单的 python 函数
# 1. 问我一个以英里为单位的数字
# 2. 它将英里转换为公里

在下面的代码示例中,向模型添加 “import” 提示它应该开始用 Python 编写。(类似地,“SELECT” 是 SQL 语句开始的一个很好的提示。)

更好的✅:

# 编写一个简单的 python 函数
# 1. 问我一个以英里为单位的数字
# 2. 它将英里转换为公里
import

参数


通常,我们发现 modeltemperature 是改变模型输出的最常用参数。

  1. model-更高性能的模型更昂贵并且具有更高的延迟。
  2. temperature-衡量模型输出不太可能的标记的频率。越高temperature,输出越随机(并且通常具有创造性)。然而,这与“真实”不同。对于大多数事实用例,例如数据提取和如实问答,temperature0 是最好的。
  3. max_tokens( maximum length) - 不控制输出的长度,而是令牌生成的硬截止限制。理想情况下,您不会经常达到此限制,因为您的模型会在它认为完成时或达到您定义的停止序列时停止。
  4. stop(停止序列) - 一组字符(标记),在生成时会导致文本生成停止。

有关其他参数说明,请参阅API 参考。

和大咖一起学习

最近加入了一个干货满满的学习社群,主理人是「程序员小灰」,畅销书《漫画算法》系列作者,全网粉丝超过 100W。

请行业专家做分享:小灰邀请了不少 ChatGPT 的专家,包括生财圈子里的码叔、学长刚蝈等作为嘉宾来星球做分享。

分享系统性知识:小灰在星球开设了系统性分享,一共六大部分25讲,预计每周分享1到2讲。

未来规划:小灰正打算出版相关 ChatGPT 相关的书籍。

有一群志同道合的朋友互相分享,这才是最宝贵的;一个人可以走的更快,但有一群人相互帮衬着可以走到更远。

相关文章
|
设计模式 机器学习/深度学习 SQL
软考高级系统架构设计师通关经验分享
为什么考系统架构设计师是国家设立的计算机技术与软件专业技术资格考试(简称软考)中的一个高级科目,属于工程师高级职称系列,具有一定含金量。浙江省每年通过软考高级的人数约为1000+人,其中系统架构设计师科目的通过人数约为200+人。从学习角度来说,通过准备系统架构设计师的考试的过程,可以查漏补缺,并且了解一些系统架构设计相关的基础知识,实现一定程度上的自我提升;从目的性的角度来说,通过考试,可以在一
15461 4
软考高级系统架构设计师通关经验分享
|
移动开发 前端开发 测试技术
关于前端AB实验,我是这么思考的
背景 大家好, 我是Fly哥, 这次分享的内容主要是关于ABtest ,我们是做用户增长的,说白了就是对应下面几个关键词。拉新、激活、留存,留存的话 又分为 次日留存、 3日留存,这些都是我们的指标, 但是产品设计一个需求的时候, 可能会有实验的性质,不确定哪一组实验,对于指标的反馈是正向的,或者是那一组实验的效果更加明显。 这时候产品就会去创建AB实验,然后拿线上的一部分流量,去做实验, 分析数据, 得出实验结论,然后看是否满足预期, 如果不满足 就暂停实验, 或者进行全量实验。 大家可以看下下面这张流程图: 图片 然后对于我们前端而言,我们关心的点只有两个 第一个就是接入ABtest,
关于前端AB实验,我是这么思考的
|
SQL 存储 关系型数据库
|
Linux iOS开发 MacOS
【chat-gpt问答记录】python虚拟环境venv的简介及使用
【chat-gpt问答记录】python虚拟环境venv的简介及使用
386 2
|
算法 NoSQL IDE
C语言性能优化:代码优化技巧与工具。
C语言性能优化:代码优化技巧与工具。
|
机器学习/深度学习 人工智能 PyTorch
【AI系统】数据并行
数据并行是一种在分布式AI系统中广泛应用的技术,通过将数据集划分成多个子集并在不同计算节点上并行处理,以提高计算效率和速度。在大规模机器学习和深度学习训练中,数据并行可以显著加快模型训练速度,减少训练时间,提升模型性能。每个计算节点接收完整的模型副本,但处理不同的数据子集,从而分摊计算任务,提高处理速度和效率。数据并行按同步方式可分为同步数据并行和异步数据并行,按实现方式包括数据并行、分布式数据并行、完全分片的数据并行等。其中,分布式数据并行(DDP)是当前应用最广泛的并行算法之一,通过高效的梯度聚合和参数同步机制,确保模型一致性,适用于大型NPU集群和AI系统。
756 7
【AI系统】数据并行
|
存储 机器学习/深度学习 人工智能
【AI系统】算子循环优化
循环优化是提升计算性能的关键技术,主要通过改进数据局部性和增强计算并行性来实现。数据局部性优化利用缓存机制减少内存访问延迟,如循环分块、重排等;计算并行性优化则通过多核、向量化等技术最大化硬件效能,如循环展开、融合、拆分等。这些方法共同作用,显著提升程序执行效率。
319 1
|
机器学习/深度学习 存储 计算机视觉
基于YOLOv8深度学习的PCB板缺陷检测系统【python源码+Pyqt5界面+数据集+训练代码】目标检测
基于YOLOv8深度学习的PCB板缺陷检测系统【python源码+Pyqt5界面+数据集+训练代码】目标检测
|
存储 算法 数据挖掘
向量数据库技术分享
向量数据库主要用于支持高效的向量检索场景(以图搜图、以文搜图等),通过本次培训可以掌握向量数据库的核心理论以及两种向量索引技术的特点、场景与算法原理,并通过实战案例掌握向量数据库的应用与性能优化策略。
1994 3
|
XML JSON 前端开发
聊聊 API 管理-开源版 Yapi 到 SaaS 版 Apifox
API 管理这个话题近些年听到的频次越来越多,这本质上是个 web 领域的发展有关,也和开发协作方式有关--前后端分离代替了全栈工程师 hold all 的局面,强调的更多的是 API 复用、分工和协作细化。
 聊聊 API 管理-开源版 Yapi 到 SaaS 版 Apifox

热门文章

最新文章