面向开发者的 ChatGPT 提问工程 笔记
2023-05-23 14:16:29 14 举报
AI智能生成
思维导图
作者其他创作
大纲/内容
课程简介
提示工程关键词原则
原则1: 编写清晰具体的指令
策略1: 使用分隔符清晰表示输入的不同部分
"""/<>/<tag></tag>
用于告诉模型需要处理哪个部分。
例如:"""文本内容""" 将由三重引号分隔的文本总结为一句话。
用于告诉模型需要处理哪个部分。
例如:"""文本内容""" 将由三重引号分隔的文本总结为一句话。
策略2: 要求结构化输出
让解析模型输出内容的过程更容易,方便读入处理。
例如:生成三个虚构的书名及其作者和类型的列表,并以JSON格式提供以下key:book_id、title、author、genre。
例如:生成三个虚构的书名及其作者和类型的列表,并以JSON格式提供以下key:book_id、title、author、genre。
策略3: 要求模型检查是否满足条件
要求模型首先需检查这些条件,如果不满足,则应指示其停止继续尝试。可以考虑潜在的边界情况,以避免产生意外的错误或结果。
策略4: 小批量提示
在模型执行实际任务之前,提供可供其参考的实例。例如,按以下Prompt所描述,模型就会参考第一个例子,并同样以比喻与排比的手法来解释韧性是什么:
原则2: 给模型充足的思考时间
策略1: 指定完成任务的步骤
举例:text = f"""
In a charming village, siblings Jack and Jill set out on \
a quest to fetch water from a hilltop \
well. As they climbed, singing joyfully, misfortune \
struck—Jack tripped on a stone and tumbled \
down the hill, with Jill following suit. \
Though slightly battered, the pair returned home to \
comforting embraces. Despite the mishap, \
their adventurous spirits remained undimmed, and they \
continued exploring with delight.
"""
首先,用一句话总结由三重引号分隔的文本
其次,将总结翻译成法语
第三,以法语总结中的每个名称列表
第四,以french_summary和num_names为键,输出一个JSON对象
In a charming village, siblings Jack and Jill set out on \
a quest to fetch water from a hilltop \
well. As they climbed, singing joyfully, misfortune \
struck—Jack tripped on a stone and tumbled \
down the hill, with Jill following suit. \
Though slightly battered, the pair returned home to \
comforting embraces. Despite the mishap, \
their adventurous spirits remained undimmed, and they \
continued exploring with delight.
"""
首先,用一句话总结由三重引号分隔的文本
其次,将总结翻译成法语
第三,以法语总结中的每个名称列表
第四,以french_summary和num_names为键,输出一个JSON对象
策略2: 指导模型制定自己的解决方案
模型的局限性
模型会编造看似正确但实际上错误的答案
如何避免:
1. 要求模型基于提供的文本找到相关引用并回答问题
2. 跟踪答案来源
1. 要求模型基于提供的文本找到相关引用并回答问题
2. 跟踪答案来源
提示工程需要迭代
通常无法在第一次尝试时就获取到想要的答案,Prompt的编写通常也需要有这样一个迭代开发的过程:
1. 编写Prompt(要求明确且具体)
2. 尝试运行并获取结果
3. 分析结果为什么没有获得预期输出
4. 进一步细化与调整Prompt
5. 重复这个过程,直到得到合适的Prompt
1. 编写Prompt(要求明确且具体)
2. 尝试运行并获取结果
3. 分析结果为什么没有获得预期输出
4. 进一步细化与调整Prompt
5. 重复这个过程,直到得到合适的Prompt
总结类应用
限制摘要输出字数
例如
你的任务是生成来自电子商务网站的产品评论的简短摘要。
总结下面用三重引号分隔的评论,最多 30 个单词。
你的任务是生成来自电子商务网站的产品评论的简短摘要。
总结下面用三重引号分隔的评论,最多 30 个单词。
限制摘要侧重点
你的任务是生成来自电子商务网站的产品评论的简短摘要。
总结下面用三重引号分隔的评论,最多 30 个单词,并且侧重于派送效率。(and focusing on any aspects that mention <shipping and delivery> of the <product>.)
总结下面用三重引号分隔的评论,最多 30 个单词,并且侧重于派送效率。(and focusing on any aspects that mention <shipping and delivery> of the <product>.)
有时候,即便我们要求了侧重点,模型仍会输出其他方面的信息。这个时候,我们可以要求其“提取”信息而不是“总结”信息。extract the information
推理类应用
识别评论的情感,判断是好评还是差评
give your answer as a single word, either "positive" or "negative"
从文本中提取出自己关心的内容
推断出文本的主题,可以对文本进行分类
确定以下由三个引号分隔的文本中讨论的五个主题。
让每个项目一两个词长。
将你的回复格式化为以逗号分隔的项目列表。
确定以下主题列表中的每一项是否是以下文本中的主题,该文本由三重引号分隔。以列表的形式给出你的答案,每个主题用 0 或 1。
让每个项目一两个词长。
将你的回复格式化为以逗号分隔的项目列表。
确定以下主题列表中的每一项是否是以下文本中的主题,该文本由三重引号分隔。以列表的形式给出你的答案,每个主题用 0 或 1。
翻译类应用
要求分别以正式与非正式进行翻译,应对不同场合
自动识别用户的语言
扩展类应用
基于客户评论和情绪生成回复邮件
temperature 参数,为0更精确,>0 增大越具有不确定性
打造聊天机器人
设置对话中所包含的不同角色的信息
提供之前对话的上下文
课程总结
0 条评论
下一页
为你推荐
查看更多