大规模语言模型(LLM, Large Language Models)扮演着越来越重要的角色。然而,想要真正发挥这些模型的强大能力,关键在于如何向模型输入明确、详细且符合预期的指令,这就是我们今天要讨论的重中之重——Prompt的写作。
▐ 定义
▐ Prompt的运行过程
-
用户或系统向语言模型提供一个Prompt,这个Prompt包含任务指令、背景信息、示例以及格式说明。 -
例如,Prompt 可以是:“写一篇关于气候变化的文章,包括其原因、影响和解决方案。”
-
模型首先对输入的Prompt进行预处理,包括分词(tokenization)和编码(encoding)。 -
预处理过程将文本转换为一系列的词汇ID(token IDs),这些IDs会传递到Embedding层,进行进一步处理。
-
编码后的文本输入到基于Transformer架构的神经网络中。Transformer架构包括多个层的自注意力机制(Self-Attention Mechanism)和前馈神经网络(Feed-Forward Neural Network)。 -
在自注意力机制层,模型能够考虑输入序列中每个词汇与其他词汇的关系,计算注意力权重(Attention Weights),从而捕捉远距离依赖关系。 -
随后,前馈神经网络层对自注意力层的输出进行非线性变换,以生成新的表示。 -
多个Transformer层堆叠在一起,使模型逐步构建对输入Prompt的深层理解。 -
位置编码(Positional Encoding)也被添加,以补充位置信息,因为自注意力机制本身不区分词汇的位置顺序。
-
模型根据计算结果,从生成的概率分布中采样下一个词汇。每个生成的词汇会迭代地输入回模型,以生成后续词汇。这个过程持续进行,直到满足输出条件(例如达到预定句子长度或遇到特殊结束符)。 -
这一过程称为解码(Decoding),可以使用贪心搜索(Greedy Search)、束搜索(Beam Search)或其他采样方法(如随机采样和核采样),以生成最优的文本输出。
-
生成的输出文本可能需要进一步的格式调整和后处理,以确保符合Prompt要求的输出格式和风格。例如,可能需要删除冗余内容、调整空格或修正拼写错误。 -
如果Prompt要求生成不超过200字的摘要,则可以在后处理步骤中对生成文本进行截取,同时确保摘要完整和连贯。
什么是好Prompt
精准打造Prompt的四大基本要素
▐ 明确的目标和任务
-
避免模糊:使用具体的词语和句子,避免让模型猜测你的意图。这样可以减少理解错误,提高生成内容的质量。
▐ 上下文和背景信息
-
明确任务请求者的角色(例如:学生、研究员、产品经理)。 -
了解请求者身份有助于定制答案的专业性和语调。
-
明确需要完成的任务或回答的问题。 -
包含具体的细节和预期输出。
-
提供与任务相关的背景历史,例如之前的研究、项目进度或市场状况。 -
涉及当前的环境或条件,包括任何变化或影响因素。
-
明确任务的具体要求和条件(例如:字数限制、格式要求、时间限制)。 -
说明任何必须满足的约束条件。
-
阐明回答的目标受众。 -
调整回答的复杂性和语言风格以适应特定读者。
通过提供这些上下文和背景信息,模型能够理解任务的背景,识别关键因素并生成有效和相关的建议。例如,模型会更倾向于提供实用的、在你的新兴城市中可行的交通系统建议,而不是泛泛而谈。这样可以确保任务的完成更符合实际需求和目的。
▐ 详细的衡量标准或考评维度
任务描述:学生综合评估
-
目标和任务对应性差:考评维度仅包括“出勤率”和“参加课外活动的次数”,未直接涉及学术成绩。 -
维度不全面:缺少“学术能力”和“品行表现”等全面评估学生综合表现的关键维度。 -
衡量标准不完整:只有“出勤天数”和“活动参与次数”作为衡量标准,缺少对学术和品行的评估。 -
衡量标准不清晰:没有明确的标准来评估“活动参与次数”和“出勤率”与学生综合表现的关系。
-
目标和任务对应性高:考评维度包括学术成绩、班级出勤率、课外活动参与度和品行表现,直接反映学生的综合表现。 -
维度全面且适用:涵盖了学生学术、出勤、活动参与及品行,全面评估学生各方面表现。 -
衡量标准完整:如学术成绩平均分、出勤率百分比、参加活动次数和品行评分。 -
衡量标准清晰且客观:明确的评分标准如学术成绩按百分制评分、出勤率按正常考勤记录计算、活动参与次数分档次评分、品行评分以行为记录评分,确保评估透明和公正。
任务描述:生成面试总结
-
目标和任务对应性差:仅提供模糊的特质要求,没有明确的考评维度。 -
维度不全面:考评维度缺乏细化,没有具体描述候选人每个特质的表现如何评估。 -
衡量标准不完整:没有具体的衡量标准,容易导致主观性强,无法保证评估一致性。 -
衡量标准不清晰:缺少明确的评分和评价细则,难以确保评估过程透明和公正。
-
目标和任务对应性高:明确考评维度与面试特质的关系,涵盖候选人的聪明、成熟和阳光等特质。 -
维度全面且适用:各维度详细且适用于全面评估候选人的特质及综合能力。 -
衡量标准完整:如会学习、有好奇、辩证思考、有自知、能共情、客观理性、有能量、够真诚和不抱怨等均有量化标准。 -
衡量标准清晰且客观:明确的评分标准确保每个维度有具体的评估依据,确保评分过程透明和公正。
▐ 明确的输入和输出格式
-
文本格式(如长篇回答、摘要) -
结构化数据格式(如JSON、XML、CSV) -
编码数据格式(如源代码) -
模版:模板是一个预先定义的格式或结构,用于指导模型生成输出。
JSON格式输出
{
"students": [
{
"name": "Alice",
"total_score": 255,
"average_score": 85,
"grades": {
"Math": 85,
"English": 78,
"Science": 92
}
}
]
}
模版输出
-
输出格式须遵循以下JSON模板。
{
"students": [
{
"name": "<NAME>",
"total_score": <TOTAL_SCORE>,
"average_score": <AVERAGE_SCORE>,
"grades": {
"Math": <MATH_SCORE>,
"English": <ENGLISH_SCORE>,
"Science": <SCIENCE_SCORE>
}
}
]
}
再攀新高:8个指标优化Prompt
▐ 样本和示例
-
样本的意义
-
明确任务要求:通过提供具体的示例,模型可以更清楚地理解任务的目标和期望的输出格式。这对于需要精确输出格式的任务非常重要。 -
减少歧义:样本可以消除任务描述中的模糊性,提供明确的指引,使模型更容易生成符合预期的输出。
-
快速学习:提供样本,可以让模型通过少量数据快速学习任务特性,减少训练需求,这是 few-shot 和 one-shot 学习的核心理念。 -
提升准确性:通过提供多样化的示例,模型可以更好地捕捉任务中的细微差别,提升生成结果的准确性和一致性。
-
跨领域应用:通过 carefully curated 的示例,模型可以适应不同领域的任务需求,如文本分类、情感分析、问答生成等。 -
任务复杂性:样本可以帮助模型应对从简单到复杂的任务需求,提供从初级到高级的任务解决方案。
-
样本的类型
-
提供给模型的单个输入输出配对示例,帮助模型理解任务要求和期望的输出格式。适用于模型已有相关领域知识时。 -
适用场景:模型已有一定基础知识,只需要一个示例来了解具体格式和期望输出。
-
提供给模型的多个(通常是2-5个)输入输出配对示例,进一步明确任务细节和复杂性。适用模型对任务有一定了解但需要更多具体示例时。 -
适用场景:任务较复杂,或者模型对任务不够熟悉,需要通过多个示例来学习任务特征。
-
路由样本和衡量标准的关系
输入:
这款耳机音质非常好,但是佩戴时间长了耳朵会有些不舒服。电池续航也不错,能够支持一整天的使用。
输出:
-优点: 音质好,电池续航长
-缺点: 长时间佩戴后耳朵不舒服
-评价: 这款耳机的音质非常好,可以提供出色的听觉享受。另外,电池续航也很优秀,能够支持一整天的使用。不过,长时间佩戴可能会导致耳朵感到不适。
-
示例输出清晰地反映了输入中的产品特点,如音质好和电池续航长,同时也包括了舒适度欠佳的情况。无夸大或遗漏。 -
示例输出详细提到了产品的具体优点和缺点,确保了评价的全面性。例如,强调了音质好和电池续航优秀,并指出佩戴长时间后耳朵不舒服。 -
示例输出语法正确,结构清晰,语言通顺易懂。例如,综合句子连接自然,不显得生硬或断裂。
-
具体应用场景
-
衡量标准:分类准确率、召回率。 -
样本关系:提供正负面和中立分类的示例,帮助模型理解分类边界。
输入:“这场比赛真是令人激动!”
输出:“体育”
-
衡量标准:分类正确性(正面、中性、负面)、文本流畅度。 -
样本关系:多情感示例展示,使模型更好地捕捉情感细节。
任务:情感分析。
示例1:
输入:句子 - “我非常喜欢这款手机,它的功能很强大。”
输出:情感 - “正面”
示例2:
输入:句子 - “这次服务让我很失望。”
输出:情感 - “负面”
示例3:
输入:句子 - “这部电影不过不失。”
输出:情感 - “中性”
-
衡量标准:译文准确性、流畅性、语法正确性。 -
样本关系:双语示例帮助模型掌握准确的翻译对,确保译文忠实且流畅。
-
衡量标准:摘要内容覆盖率、简洁度、流畅度。 -
样本关系:展示长文本和对应的高质量摘要,使模型学习如何提炼关键信息。
-
衡量标准:回答准确性、完整性、相关性。 -
样本关系:通过问答对示例,指导模型生成准确且相关的答案。
任务: 根据以下文本生成一个合理的问题。
输入: "苹果公司最新发布的iPhone 12备受关注,其出色的摄像头和强大的处理能力给用户留下了深刻印象。"
输出: "苹果公司最新发布的哪款手机备受关注?"
▐ 简洁和直接
任务描述:《1984》的核心观点做个总结
-
啰嗦:包含了多余的背景和具体的情节要求,信息量过大且有些不必要。 -
不简洁:用词过于繁琐,任务分解过细,易使执行者陷入细节而忽略核心观点。 -
容易误解:指令过于复杂,容易导致执行者在把握重点时出现偏差。
-
简洁性:去除了冗长的描述,指令内容简明扼要。 -
直接性:明确任务要求,聚焦于总结核心观点和主题思想。 -
易执行:简洁明确的指令减少了误解的可能性,使执行者能够迅速聚焦任务。
▐ 避免歧义
▐ 分步骤和层次化的指导
-
引言:背景介绍、研究问题、研究目标 -
文献综述:按主题分类、总结前人研究、提出研究空白 -
研究方法:样本选择、数据收集方法、数据质量控制 -
结果与讨论:数据呈现、结果解读、文献支持或反驳 -
结论与建议:研究发现、政策建议、研究局限性和未来方向
任务描述:撰写一份关于人工智能伦理问题的研究报告
-
缺乏分步骤:任务描述没有将撰写过程逐步展开,导致任务太过模糊和复杂。 -
缺少层次化信息:没有提供报告的总体框架或内部逻辑,也没有细化每一部分应该包含的具体内容。
-
分步骤:任务被明确地分解为多个独立且具体的步骤,从选择主题到撰写每个部分,都有清晰的指示。 -
层次化信息:提供了研究报告的总体架构,并在每一部分中进一步细化了具体内容和要求。每一层次的信息都为下一层次铺平了道路,使得整篇报告的撰写过程逻辑清晰且容易实现。
▐ 考虑多种可能性和边界条件
-
考虑多种可能性和边界条件
-
聊天机器人:需要处理用户可能输入的各种类型的问题,包括模糊查询、拼写错误、语法错误等。 -
数据处理和分析工具:确保在面对缺失值、异常值或格式不一致的数据时,能够提供有意义的反馈或处理结果。 -
客户服务系统:在客户提供的描述不全或存在矛盾时,提供合理的回应或请求进一步的信息。 -
自动化测试:确保在测试过程中无论输入多么异常,系统都能有适当的应对策略,避免崩溃或无效输出。
请提供地点和日期以查询天气情况。地点应包括城市或地区名称,日期格式为 yyyy-mm-dd。
1. 如果地点和日期格式不正确,请输出“输入格式错误,请重新输入。”
2. 如果地点不存在或无法识别,请输出“无法识别的地点,请检查您输入的地点名称。”
3. 如果日期是未来30天之后的时间,请输出“日期超出允许范围,请输入最近一个月的日期。”
4. 如果日期是过去的时间,请输出“日期是过去的时间,目前只支持查询未来的天气。”
**注意**:
- 地点名称可以使用城市名或地区名,例如“纽约”或“东京”。
- 日期必须符合 yyyy-mm-dd 格式。
- 所有输出应友好、简洁,便于用户理解。
-
纠错机制
-
电子邮件自动回复:纠正和提示拼写错误,避免误解,同时请求用户确认关键信息,以确保回复的准确性。 -
搜索引擎:自动纠错用户输入的搜索关键字,并提供相关提示或推荐,增强用户体验。 -
表单提交系统:自动检测并提示用户输入的格式错误,避免提交无效表单数据。 -
翻译工具:检测和纠正输入句子中的拼写或语法错误,提供更高质量的翻译结果。
请提供邮件地址和回复内容,以发送自动回复。邮件地址应为有效的电子邮件地址格式,回复内容请尽量详细。
1. 如果邮件地址格式错误,请输出“邮件地址格式无效,请重新输入正确的邮件地址。”
2. 如果回复内容为空或过于简短,请输出“回复内容太短,请提供更详细的信息。”
3. 如果检测到拼写错误,请标记错误并建议修改,例如:“检测到拼写错误‘adn’,建议修改为‘and’。”
4. 如果发送邮件服务器不可用,请输出“邮件发送失败,服务器暂时不可用,请稍后再试。”
**注意**:
- 邮件地址必须包含 '@' 和有效的域名。
- 回复内容应至少包含10个字符。
- 提供拼写错误的检测和建议修改功能,增强用户体验。
▐ 语言和文化敏感性
-
多语言支持: PROMPT 具备多语言适应性,确保不同语言背景的用户能够准确理解和使用。 -
文化适应性: 考虑到不同文化背景的差异,避免对特定文化、族群、宗教或政治观点的偏见和歧视。 -
中性语言使用: 使用中性、不偏不倚的语言,确保在各类文化环境下的普遍接受度。
-
避免冒犯性内容: 确保语言不含冒犯性、歧视性或可能引起误解的成分。 -
隐私保护: 重视和保护用户隐私,避免泄露个人信息,遵循相关法律法规(如GDPR)。 -
透明度和知情同意: 明确告知用户 AI 系统的功能和限制,确保其在知情的情况下使用系统。 -
无偏见: 避免算法和数据模型中带有的系统偏见,确保输出结果公正、公平。
“请描述中国新年的习俗。”
语言和文化敏感性:
正面: 提供了一个特定文化背景下有意义的话题。
改进空间: 需要确保所有文化背景的人理解何为“中国新年”。
伦理考虑:
正面: 语言中性,没有冒犯性内容。
改进空间: 若用户分享个人经验,需提醒其保护隐私。
“你认为现代化进程对社会有何影响?”
语言和文化敏感性:
正面: 这是一个较为中性的特题,适合不同文化背景的人回答。
改进空间: 提问题时需避免文化中特定的政治经济偏见。
伦理考虑:
正面: 语言中性,无冒犯。
改进空间: 若讨论政治、经济等敏感话题,需适当引导,避免引发争议。
▐ 数据隐私和安全性
-
避免敏感信息: 在设计PROMPT时,确保不会包含或请求敏感信息,如个人识别信息(PII)、财务数据、健康数据等。 -
脱敏处理: 如果需要测试真实数据,确保所有数据已进行脱敏处理,即所有敏感信息被替换或删除。
-
遵循隐私条例: 确保提示设计符合相关隐私法规和条例,如GDPR、CCPA等。如果提示涉及国际用户,应考虑跨国隐私法规。 -
数据最小化原则: 提示内容应遵循数据最小化原则,仅要求模型使用完成任务所需的最低限度信息。
-
敏感信息暴露:提示中包含客户的姓名、地址及联系方式,这些都是个人敏感信息(PII)。 -
隐私风险:直接暴露客户的详细个人信息,可能违反隐私法规(如GDPR、CCPA)。 -
不合规:整个提示未考虑数据最小化原则,包含了不必要的细节。
-
脱敏处理:将客户的个人信息替换为匿名ID(如“客户001”、“客户002”)。 -
数据最小化:仅保留与任务相关的反馈内容,去除不必要的个人信息。
▐ 约束
-
约束的类型
-
定义:内容约束是对生成内容的主题、信息点或观点的具体要求,确保输出内容围绕特定主题展开。 -
实例:撰写一篇关于气候变化影响的文章,必须包括至少三种应对策略。 -
说明:通过指定主题和信息点,可以确保生成内容集中且有深度地探讨特定问题。
-
定义:格式约束是对输出内容的结构或排版形式的要求,确保生成内容符合预期的布局和组织方式。 -
实例:生成一个包含引言、主体和结论三部分结构的技术报告。 -
说明:这种约束对文档或报告有特别的用处,使生成的内容便于阅读和分段。
-
定义:风格约束是对生成内容的写作风格或语气的要求,确保输出内容符合预期的文化和情感语境。 -
实例:用幽默和轻松的语调撰写产品描述。 -
说明:适用于广告文案、博客文章等需要特定表达风格的场景,使内容更具吸引力。
-
定义:长度约束是对生成内容的字数、段落数或字符数的要求,确保输出内容在预定的长度范围内。 -
实例:撰写一篇不超过300字的新闻简报。 -
说明:这种约束常用于新闻报道、推文或市场营销材料,需要简洁明了地传达信息。
-
定义:技术约束是对生成内容使用特定专业术语或技术语言的要求,确保输出内容在专业领域内的准确性。 -
实例:在生成的软件说明中,使用特定的编程术语。 -
说明:适用于技术文档或专业论文,确保内容精确且专业。
-
定义:时间约束是对生成内容涉及特定时间节点或历史事件的要求,确保输出内容与特定时间背景相关。 -
实例:描述19世纪工业革命对英国经济的影响。 -
说明:适用于历史研究、时间序列分析等场景,确保内容准确反映特定历史时期。
-
定义:目标受众约束是对生成内容的受众人群设定特定要求,确保输出内容适合预期的阅读或使用群体。 -
实例:撰写一篇适合高中生阅读的微积分基础介绍。 -
说明:这种约束确保内容的复杂度和表达方式适应目标受众的理解能力。
-
定义:语境约束是对生成内容的上下文或景的要求,确保输出内容与预定的情境或场景相符。 -
实例:在商业会议的背景下生成CEO的演讲稿。 -
说明:这种约束有助于生成适用于特定情境的内容,使其在应用场景中具有更高的实用性。
类型: 综合约束
内容约束: 描述机器学习相关内容。
格式约束: 包括引言、方法、结果、结论四个部分。
风格约束: 使用正式且专业的语气。
长度约束: 字数不超过5000字。
类型: 内容约束、长度约束
内容约束: 需提供IoT的定义和五种实际应用。
长度约束: 不超过200字。
#### 任务描述
撰写一篇关于气候变化对全球农业生产影响的文章。
请撰写一篇800字的文章,详细讨论气候变化对全球农业生产影响,特别强调对水资源管理和农作物产量的影响。
#### 背景信息
近年来,全球气候变化对农业生产造成了重大影响。例如,不规律的降水模式和极端天气事件使得水资源管理变得复杂,农作物产量也受到影响。
#### 角色描述
研究员
#### 任务目标
分析气候变化对全球农业生产的影响,特别是水资源管理和农作物产量。
#### 特定要求和条件
文章必须包括关于水资源管理和农作物产量的具体讨论,字数不超过200字。
#### 目标受众
农业科学家和政策制定者
#### 衡量标准
- **准确性**:文章内容必须真实反映气候变化对农业生产的影响。
- **完整性**:需包含关于水资源管理和农作物产量的具体细节。
- **流畅性**:文章语法正确、语言通顺。
- **相关性**:内容紧扣气候变化影响农业生产的主题。
#### 分步骤指南
1. 介绍气候变化对全球农业生产的总体影响。
2. 详细讨论气候变化对水资源管理的影响。
3. 详细讨论气候变化对农作物产量的影响。
#### 层次化信息
- **引言:** 介绍气候变化及其对农业生产的总体影响。
- **水资源管理:** 详细讨论气候变化如何影响水资源的获取和管理。
- **农作物产量:** 详细讨论气候变化如何影响农作物的生长和产量。
#### 考虑多种可能性和边界条件
**示例1:**
**输入:** 北美:水资源短缺,农作物种类改变。
**输出:** 北美正在经历严重的水资源短缺,导致一些传统作物的种植受到影响。改良作物品种和新灌溉技术成为应对措施。
**示例2:**
**输入:** 非洲:降水模式变化,影响农作物种植。
**输出:** 非洲不规律的降水模式对小农场主造成重大影响。农作物产量波动,影响粮食安全。需要国际援助和新技术支持。
#### 自动检测与修正
设置机制,如果未按要求描述水资源管理和农作物产量,则提示重新输入相关信息。
**示例:**
**输入:** 未提及水资源管理。
**输出:** “请包括关于水资源管理的讨论内容。”
#### 语言和文化敏感性
确保内容对各个文化背景的读者友好,避免使用技术术语影响理解。
**示例:**
- **营销文章:** 使用通俗易懂的语言,避免技术术语。
#### 数据隐私和安全性
**示例:**
**输入:** 客户反馈内容,客户ID已脱敏。
#### 任务约束
- **内容约束:** 描述气候变化影响农业生产的应对策略。
- **格式约束:** 包括引言、主体和结论。
- **风格约束:** 使用正式语调。
- **长度约束:** 不超过800字。
结语
本文分享自微信公众号 - 大淘宝技术(AlibabaMTT)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。