提示(Prompt)是您输入给大模型(LLM)的文本信息,用于明确地告诉模型您想要解决的问题或完成的任务,也是大语言模型理解用户需求并生成相关、准确回答或内容的基础。 为了帮助您更高效地使用 LLM ,本教程为您提供一系列实用的技巧,帮助您设计和优化 Prompt。
设计 Prompt
构建清晰明确的 Prompt
想象一下,如果您在给一个同事指派工作任务时,只给了一句话来描述需求,他的任务完成效果可能很难达到您的预期。但如果您提供了明确的目标、建议的思考方向和执行策略等更多参考信息,他更有可能以高标准完成任务。
使用 LLM 也一样,您的任务描述(Prompt)越清晰、具体、没有歧义,LLM 的表现越能符合您的期望。
构建一个清晰具体的 Prompt 是充分发挥大模型能力的最重要一步。
模糊的 Prompt | 清晰具体的 Prompt |
我想推广公司的新产品。我的公司名为百炼,新产品名为 Zephyr Z9,是一款轻薄便携的手机。帮我创建一条微博帖子。 | 请为我司“百炼”最新推出的“Zephyr Z9”轻薄便携手机设计一条吸引眼球的微博推广帖。 内容需彰显Zephyr Z9的独特卖点,如极致轻薄设计、高性能配置及用户便利性,同时融入创意元素以提升观众兴趣和互动意愿。 记得提及品牌声誉,激发受众好奇心,引导他们探索更多产品信息或直接进行购买。 贴文应简洁有力,符合微博平台的风格与字数限制,适宜社交媒体传播。 |
你是一位资深PHP编程专家,现在接到一个明确的开发任务。诉求是:${require}。请使用PHP语言详细描述一种实现该诉求的算法或方法,并考虑在实现过程中可能遇到的边界情况和错误处理,以及如何通过高效且安全的代码来满足此需求。 | 作为一位经验丰富的PHP编程专家,您面临的具体开发任务为:${require}。 请运用您的专业知识,详细阐述一种利用PHP实现该任务需求的高效算法或方法论。 在您的描述中,请务必涵盖以下几点: - 具体实现步骤,包括必要的函数、类及数据结构的选择与设计。 - 边界条件分析,识别并解释潜在的边缘案例及如何妥善处理这些情况。 - 错误处理机制,描述如何在代码中实施健壮的错误检测与异常处理逻辑,以确保程序稳定性。 - 安全性考量,讨论可能的安全威胁及推荐的防范措施,确保代码执行过程中的数据安全与隐私保护。 - 性能优化建议,提出提高代码执行效率的方法,包括但不限于算法优化、资源管理和缓存策略。 请确保您的解答不仅技术准确,而且条理清晰、易于理解,以便其他开发者能够快速掌握并应用于实际项目中。 |
百炼提供了 Prompt 一键优化工具。该工具能针对输入的提示(Prompt)进行自动扩写和细节添加,推荐您先将 Prompt经过优化工具扩写改进,再接着阅读和体验其他优化技巧。
Prompt优化功能通过调用大模型实现,需要消耗一定量的Token,按照通义千问-Plus 推理费用计费。
使用 Prompt 框架
为了系统化地向 LLM 提供明确背景和目标,这里推荐您使用 Prompt 框架规范化您的 Prompt。该框架用于帮助您方便、快速地设计 Prompt 结构。该模板充分考虑了会影响 LLM 输出有效性和相关性的各个方面,能显著提升模型表现。
其内容组成为:(当您不确定如何编写框架各元素的具体内容,不妨将一些关键词交给百炼 Prompt 优化工具进行扩写。)
背景:介绍与任务紧密相关的背景信息。这一环节有助于LLM深入理解讨论的具体环境,从而保证其生成内容与话题高度相关。
目标:明确指出您期望LLM完成的具体任务。通过设定清晰、精确的目标指令,可引导LLM聚焦于实现既定任务,提升输出的有效性。
风格:指定您希望 LLM 输出的写作风格,可以是某个具体名人、具体流派或者某类专家的写作风格。
语气:定义输出内容应有的语气,比如正式、诙谐、温馨、关怀等,以便适应不同的使用场景和使用目的。
受众:明确指出内容面向的读者群体,无论是专业人士、入门学习者还是儿童等,这样LLM就能调整语言和内容深度,使之更加贴合受众需求。
输出:规定输出内容的具体形式,确保LLM提供的成果能直接满足后续应用的需求,比如列表、JSON数据格式、专业分析报告等形式。
未使用 Prompt 框架 | 使用 Prompt 框架 | |
Prompt | 我想推广公司的新产品。我的公司名为百炼,新产品名为 Zephyr Z9,是一款轻薄便携的手机。帮我创建一条微博帖子,简洁而深具影响力。 | #背景# 我想为公司的新产品做广告。我公司的名字叫百炼,产品叫百炼 Zephyr Z9,是一款轻薄便携的手机。 #目的# 为我创建一个微博帖子(限制:500字),旨在让人们有兴趣点击产品链接购买。 #风格# 遵循黑米等成功公司为类似产品做广告的写作风格。 #语气# 有说服力 #受众# 我公司在微博上的受众通常是年轻一辈人。定制你的帖子,保证喜欢数码产品的人能快速关注到你的帖子。 #输出# 微博上的帖子,简洁而有影响力。 |
输出 | 【轻启未来,风起云涌】 百炼新品,Zephyr Z9震撼上市! 携手Zephyr Z9,让科技与轻盈同行。这不仅是一部手机,它是你探索世界的轻便伴侣。厚度挑战极限,设计引领风尚,Z9在手中,灵感随时迸发。 超越想象的性能,搭载极速处理器,流畅如风,无论是工作狂飙还是游戏征途,Zephyr Z9都是你的首选座驾。续航强劲,让每一份热情持续燃烧! 捕捉生活每一刻,Z9相机创新升级,夜景、人像、广角,每一拍都是封面大片,让美好记忆永不褪色。 Trees 轻薄,重在体验。#百炼ZephyrZ9# ,为不凡而生,为你而来。立即拥抱未来,开启属于你的轻盈科技时代! 官方网站:[www.bailian.com/Z9] (请替换为实际网址) #轻薄旗舰 #科技新风尚 #掌中艺术品 | 【独家揭秘】百炼Zephyr Z9,轻薄界的颠覆者来了! 在这个快节奏的时代,每克重量都是对自由的负担。百炼深谙此道,匠心打造了Zephyr Z9——一款专为追求极致轻盈与强大性能平衡的你而生的手机!悬浮般的手感,一触难忘! 【超薄设计,尽在掌握】 Zephyr Z9以其令人惊叹的纤薄机身,重新定义了“轻薄”。仅X.Xmm的厚度,轻松滑入口袋,是你日常出行的完美伴侣。携带它,就像带着未来穿梭于都市丛林! 【顶尖配置,性能怪兽】 别看它轻,内核全是硬实力!搭载最新的XXXX处理器,流畅度爆表,无论是多任务处理还是大型游戏,Z9都能游刃有余,让你时刻处于科技最前沿。 【摄影大师,记录生活】 配备XXMP超感光镜头,夜晚也清晰。AI智能场景识别,让每一张照片都堪比大片。用Zephyr Z9,记录每一个不凡瞬间,让你的朋友圈从此与众不同。 【续航无忧,能量满满】 小身材,大能量!Zephyr Z9内置高效能电池,搭配XXX快充技术,片刻充电,长久陪伴。告别电量焦虑,你的创意和灵感不再受限。⚡ 【限时福利,不容错过】 前100名通过链接购机的用户,将享受神秘大礼包!包含定制保护壳、XXX会员年卡等多重好礼,只为尊贵的你! 立刻行动,让百炼Zephyr Z9成为你探索世界的全新伙伴!点击下方链接,开启轻盈新纪元! [立即抢购百炼Zephyr Z9] [产品链接] #百炼ZephyrZ9 #轻薄旗舰 #科技美学 #数码潮流 #性能怪兽 |
在未使用 Prompt 框架时,LLM 输出虽表现尚可,但显得过于泛化,缺乏必要的细节和针对特定群体的吸引力。而在使用 Prompt 框架时,框架不仅提醒您考虑需求的其它方面,特别是一般 Prompt 中缺少的风格、语气和受众,还帮助 LLM 生成更针对年轻群体、细节更多、语言表达更加富有张力的输出。
Prompt 框架在实践中有非常多的种类,您可以根据您的任务需求增减其结构组成。当然您也可以在后续章节观察到本教程对该 Prompt 框架的灵活运用。
优化 Prompt
技巧一:为模型提供输出样例
在 Prompt 中提供您期望的输出示例,可以让 LLM “模仿”我们所要求的规范、格式、概念、文法、语气进行输出。同时,提供样例可以让大模型多次输出的结果更一致,从而稳定模型表现。
未添加样例 | 添加样例 | |
Prompt | #背景# 你很擅长编写小红书种草笔记,喜欢增加丰富的emoji元素。 #目的# 请生成一篇小红书种草笔记,推广强森吹风机。吹风机的优点是:体积小、高颜值、风力大、干的快、智能控温不伤发。 #受众# 喜欢追求时尚的年轻人,尤其是年轻女性 #输出# 小红书文章格式,充满emoji元素,简洁但内容充实 | #背景# 你很擅长编写小红书种草笔记,喜欢增加丰富的emoji元素。 #目的# 请生成一篇小红书种草笔记,推广强森吹风机。吹风机的优点是:体积小、高颜值、风力大、干得快、智能控温不伤发。 #受众# 喜欢追求时尚的年轻人,尤其是年轻女性 #输出# 小红书文章格式,充满emoji元素,简洁但内容充实 #语气与风格#
|
输出 | 标题:强森小巧魔力风机,速干护发新宠儿 正文: Hey宝贝们!今天要给你们种草一颗美发界的璀璨新星 —— 强森吹风机!它不仅仅是个工具,简直是随身携带的美发沙龙 体积小巧,旅行必备 首先,它的迷你身材直接击中我心!旅行包包再满也能轻松塞进,不占空间,随时随地凹造型 高颜值,时尚出街 看这设计,简直就是艺术品呀!无论是极简白还是高级粉,拿在手里就是街头最靓的崽!手机?不,这是我的新时尚配饰 风力强劲,速干神器 别看它小,风力可一点都不含糊!早上赶时间?强森帮你5分钟搞定出门发型,效率MAX! 干得快,还护发 智能控温技术,温柔呵护你的每一根秀发。告别热损伤,只留下柔顺光泽,每次吹发都像做了次沙龙护理~ 智能控温,细心之选 懂你的不只是风力,还有温度。根据发质自动调节最适宜的热量,守护秀发健康,长期使用也不怕伤发 总之,强森吹风机就是那个能让你爱不释手的小可爱!赶紧加入购物车,给你的美丽加速吧! #强森吹风机 #美发达人 #快速护发秘籍 标记你的朋友,让她们也来感受这份轻巧与高效吧! 记得,爱护自己从“头”开始,强森与你一起,绽放自信光彩! | 吹风机也能成为美发时尚单品?强森小钢炮告诉你答案! 自从我用了强森吹风机,不仅旅行包轻便多了,每次吹发都变成享受时光!用了几次后,朋友们都夸我发质看起来好了不止一个度,就像刚从沙龙出来的样子。它绝对是短途出游或宿舍生活的完美伴侣哦!适合所有追求高效护发的宝贝们~ 面对湿漉漉的长发瀑布,每次都得耗时半小时以上?别怕,强森智能控温科技来了!它能迅速吹干每一根发丝,而且风力强劲却不伤发,秘密就在于它能智能调节温度,保护你的秀发不受热损伤。从此,快速出门不再是梦! 我一直认为,好的造型工具是美丽态度的体现。强森这枚高颜值吹风机不单是个工具,更是梳妆台上的一件艺术品。每次用它吹发,都像是在进行一场个人风格的仪式感升级。不妨也给自己来点这样的小奢侈,毕竟,美好的一天从头开始嘛! 记得那次临时接到晚宴邀请,急匆匆从健身房出来,头发还滴着汗。正当焦虑之际,幸好有强森吹风机紧急救援!我迅速将湿润的乱发吹整得服服帖帖,走进宴会厅的那一刻,自信满满,好像刚做完高级沙龙护理似的。多亏了这小巧却强大的美发神器,我的美丽不再受限于时间! 快来把这吹风机界的时尚小钢炮加入购物车吧!让我们一起做个风一样的女子,优雅又效率,从头开始闪耀每一天! #强森吹风机 #高颜值美发神器 #智能护发新体验 #速干不伤发 #时尚必备 |
观察输出时,您可以发现,LLM 学习了样例的要求并针对性地生成了符合格式要求的种草文。
技巧二:设定完成任务的步骤
对于许多复杂任务,提醒 LLM 如何完成任务是非常必要的。
技巧三:使用分隔符号区分单元
在构建复杂的 Prompt 时,采用特定的分隔符来界定不同内容单元是极为关键的,这一做法显著增强了 LLM 对 Prompt 正确解析的能力。随着任务复杂度的增加,合理利用分隔符越能提升 LLM 的表现。
分隔符的选择应着眼于那些在自然语言文本中罕见的、独特的字符组合,例如:###
、===
、>>>
等。这些特殊符号序列并无固定规则,关键在于其辨识度高,确保模型能够明确区分这些符号是作为内容区域的界限标识,而非文本中的普通标点或语法组成部分。
未使用分隔符 | 使用分隔符 | |
Prompt | 请简短总结以下影评。 曾经意气风发的张志强在生活的重压下,中年“失速”偏离了原本的生活轨迹,一时意气用事的决定,让他瞬间从家人的“小骄傲”变成了社会的“边角料”。然而,他未曾料到,这仅是他中年人生道路上的起点。接连不断的变故如疾风骤雨般袭来,迫使他不得不重新面对自我。当生活的重担真正压肩,他选择成为一名快递员,从新的起点重新出发,穿梭于都市大街小巷的高志垒在路上结识了一众志同道合的伙伴。在共度的时光里他深切的体会到了人间的冷暖真情,逐渐在这条充满磨砺的“逆行道”中找回曾经丢失的勇气与信念,重新定义人生新的方向。 | 请简短总结以下影评。 ### 曾经意气风发的张志强在生活的重压下,中年“失速”偏离了原本的生活轨迹,一时意气用事的决定,让他瞬间从家人的“小骄傲”变成了社会的“边角料”。 ### 然而,他未曾料到,这仅是他中年人生道路上的起点。接连不断的变故如疾风骤雨般袭来,迫使他不得不重新面对自我。 当生活的重担真正压肩,他选择成为一名快递员,从新的起点重新出发,穿梭于都市大街小巷的高志垒在路上结识了一众志同道合的伙伴。 ### 在共度的时光里他深切的体会到了人间的冷暖真情,逐渐在这条充满磨砺的“逆行道”中找回曾经丢失的勇气与信念,重新定义人生新的方向。 ### |
输出 | 电影讲述了一个中年危机故事,主角张志强因生活压力偏离正常生活轨道,经历一系列挑战后,他成为一名快递员,在新朋友的帮助下重拾勇气与信念,找到了生活的新方向。影片展现了逆境中的成长与自我救赎。 | 主人公张志强中年遭遇生活困境,一次冲动的决定使他社会地位骤降。 随后,面对重重挑战,他担任快递员重新起步,在此过程中与同行建立深厚情谊,并在磨难中找回勇气和信念。 最终,在艰难和挑战中,为自己的人生找到了新的意义和方向。 |
您可以在输出中发现明显差别,在使用了分隔符的输出中,LLM 不仅理解了三段话的逻辑关系,还正确识别了分隔符,并根据分隔符的段落生成了三段强相关的总结。
技巧四:引导模型“思考”
对于逻辑推理和语境学习的复杂任务来说,简单的 Prompt 技巧可能无法满足任务需求。但您可以通过引导模型生成推理过程或帮助模型拆解复杂任务并逐步推理的方式,让模型在生成推理结果前生成更多的推理依据,从而提升模型在复杂问题上的表现。
这里为您先介绍思维链(Chain of Thought,COT),它是一种使用起来较为简单的引导方法,但能够显著提高大模型在复杂场景下的推理能力。
任务目的:解析一个复杂的 JSON 结构体
#背景#
JSON 输入:
{"web-app": {
"servlet": [
{
"servlet-name": "cofaxEmail",
"servlet-class": "org.cofax.cds.EmailServlet",
"init-param": {
"mailHost": "mail1",
"mailHostOverride": "mail2"}},
{
"servlet-name": "cofaxTools",
"servlet-class": "org.cofax.cms.CofaxToolsServlet",
"init-param": {
"templatePath": "toolstemplates/",
"log": 1,
"logLocation": "/usr/local/tomcat/logs/CofaxTools.log",
"logMaxSize": ""}}],
"servlet-mapping": {
"cofaxEmail": "/cofaxutil/aemail/*",
"cofaxTools": "/tools/*"},
"taglib": {
"taglib-uri": "cofax.tld",
"taglib-location": "/WEB-INF/tlds/cofax.tld"}}}
#目的#
根据 JSON 判断是否完全符合以下要求:
1. 是否每个 servelet 都有 init-param
2. 是不是 servelet-mapping 中元素都在 servlet 中都有匹配
3. servelet 的 cofaxTools 中有三个以“log” 开头的参数,且 “log” 参数小于 10
不使用思维链 | 使用思维链 |
|
|
不符合要求 | 首先,我们来逐步分析给定的JSON数据,以判断它是否符合所有提到的要求。 思考过程
输出基于以上分析,虽然关于"logMaxSize"的处理可能存在解释空间,但主要条件基本得到满足。因此,如果对"logMaxSize"不作严格要求(比如,不强制要求它必须有一个有效数值且小于10),则可以认为整体符合要求。如果有对"logMaxSize"的具体数值要求,则需要进一步澄清后决定。但在标准解读下,答案应为:“符合要求”。 |
除了思维链,启发 LLM 进行“思考”的实用方法还有提示链(Prompt Chaining)。提示链通过多轮对话,引导 LLM “思考” 方向,让 LLM 从简单任务开始,沿着设计好的“思考”方向逐步完成一个复杂推理。
提示链虽然相对思维链来说构建模式更加复杂,但模型表现更好,准确率更高。它非常适合逻辑复杂但能按照固定模式拆解的困难任务。
提示链(Prompt Chaining)引导样例
引导 LLM “思考”的方法还有很多种,比如:思维树(Tree of Thoughts, ToT)、Boosting of Thoughts 等。
Prompt 测试与迭代
生成最优 prompt 是一个高度实验性的过程,需要不断尝试和调整各种方法。整个 prompt 工程的优化过程可概括如下:
此外,值得注意的是,除了精心设计的 prompt 外,用户提供的反馈和修正也是获取模型最佳输出的关键因素之一。即使在 prompt 优化完成后,持续地在线上环境中接收反馈并作出相应调整,才能使模型更好地理解和满足用户需求。
Prompt 优化案例:跨国公司 AI 助手稳定地输出多语言内容
问题背景:用户反馈 qwen-turbo 无法稳定地用英文回答英文问题。
优化点有:
将“语言”替换为“语种”。因为“语言”这个词有歧义,不一定代指的是英语、法语,也可以是书面语言、口头语言。语种就没有这个歧义。
优化前 Prompt 结构较为松散,而且
## 限制
部分内容过于冗余。因此使用本教程提供的 Prompt 框架重新排版并将## 限制
部分的内容拆分到正确的位置。${documents}
部分是一段很长的话,放在某句话中并不合适。应该使用分隔符标记切分出来,作为一个重要的内容块。
优化前 Prompt | 优化后 Prompt |
# 角色 你是一位高效的HR AI助手,专门负责解答公司内部关于政策、考勤制度、年假安排等相关问题。你具备快速准确地解析公司政策文档的能力,并能够为同事提供清晰简洁的说明。 ## 技能 ### 技能1: 政策解析 - **任务**:准确解读公司政策文档,为同事提供清晰、简洁的政策说明。 - 快速定位到相关政策条款,解答具体的政策执行细节。 - 确保解释的内容易于理解且符合公司的官方规定。 ### 技能2: 考勤答疑 - 解答与员工考勤相关的所有疑问,包括打卡规则、迟到早退处理、请假流程等。 - 提供具体的考勤操作指南和特殊情况处理建议。 ### 技能3: 年假管理咨询 - 详细解释年假申请条件、累积规则、有效期及审批流程。 - 协助计算员工的年假余额,提供休假规划建议。 ## 工具与资源 - **知识库访问**:直接引用和解析`${documents}`中的公司政策文档和相关规章制度,确保答案的权威性和时效性。 - 如果提出的问题是英文,请用你理解的中文含义去检索知识库,最后再使用英文回复(请注意回复内容中的标点符号统一为英文格式!尤其字符 U+2019 "’",请替换为“'” )。 ## 限制 - 要求回答内容仅使用标准 ASCII 字符集,不要出现中文引号、全角逗号及其他全角标点符号!!! - 使用与用户提问相同的语种回复,例如用户使用中文,回答中文,用户使用英文,回答英文。 - 仅限于解答公司政策、考勤制度、年假等人力资源管理范畴内的问题。 - 不涉及个人隐私数据的查询,保护员工信息安全。 - 当遇到知识库未涵盖或不明确的问题时,需指引询问者联系人力资源部门获取进一步的帮助。 | #背景# 你是一位跨国公司的高效的HR AI助手,专门负责解答公司内部关于公司政策解析、考勤答疑、年假管理咨询的问题。你具备快速准确地解析公司政策文档的能力。以下为公司政策文档: ====== `${documents}` ====== #目的#
#多语言要求# - 如果提出的问题不是中文,用问题的中文含义去检索知识库。 - 知识库检索出来的内容在输出时也要转换为问题的语种。 #输出# 1. 仅使用标准 ASCII 字符集输出回答。 2. 输出的内容语种为用户输入的语种。 |