第一章 提示词必备要素与基本技巧
第二章 提示词扩展大模型思维
第三章 提示词构建大模型应用(写作中…)
提示词必备要素与基本技巧
前言
自DeepSeek爆火以来,我国正式迈入了人工智能大模型领导者行列。越来越多的小伙伴加入到学习和应用人工智能大模型的队伍中。从日常生活到工作,人工智能大模型逐渐成为我们生活中不可缺少的部分,并悄然改变着我们的生活方式。
然而很多人在使用大模型的过程中觉得它只是一个普通的问答工具,甚至常常会回答错误我们的问题。具体有如下表现:
- 对于大模型处理文科例如撰写文本,文档总结等问题,它的回答不是我们想要的风格,或者有时它的表述不明确,容易造成歧义。
- 对于理科例如逻辑思维题,计算题大模型的回答更一般,常常给出错误的答案。
产生这种现象的原因如下:
- 大家常用的大模型包括Qwen, DeepSeek-V3, llama等,它们的工作原理是通过对大量文本的学习,并结合所用户所提问题,给出概率最大的词语组合形成回答。(直观理解就是它们只是对所学字词的重复组合,很难产生逻辑推理能力,所以解决算术问题能力很一般,更像是一个“满分文科生,普通理科生”)。
- 你向大模型提出的问题质量很低,语义不明确,大模型无法理解
第一个现象随着DeepSeek-R1, OpenAI-O1模型的出现正在逐步改善,但实际应用中证明它们的表现也与我们的提问质量息息相关。简而言之,要想快速提升大模型的能力,我们必须提出高质量的问题。既然提问的艺术如此重要,那么我们如何掌握与大模型交流的技巧呢?别急,笔者接下来就结合所学知识和工作经验向大家分享与大模型交流的艺术——提示词工程。
一、什么是提示词工程
1.1 提示词工程概念
提示词工程:Prompt Engineering 我们向大模型提出的问题叫“提示词”,提示词工程就是一门关注提示词编写和优化的学科,通俗易懂讲就是教我们怎么向大模型提问题的学科,探讨如何设计好的提问用于指导AI帮助我们高效完成某任务。
1.2 提示词工程重要性
可以预见的是,未来世界人工智能大模型会像个人电脑一样成为我们工作生活不可或缺的部分。百度创始人李彦宏曾提出一个观点:在未来AI时代,编写提示词的能力决定了你的工资水平。
当前大模型在不断进步,模型的能力不断提升, DeepSeek-R1, OpenAI-O1大模型甚至初具思考能力,但这并不代表我们不需要学习提示词。实际上无论是简单的模型问答回复,亦或是模型函数调用(Function calling), 检索增强生成系统(Retrieval-Augmented Generation)的编写,还是AI智能体(AI Agent)的构建本质上都是大模型提示工程和其它开发工程的结合。
毫不夸张的说,提示词Prompt是人工智能时代的编程语言 ,提示词工程Prompt Engineering是人工智能时代的软件工程,提示工程师Prompt Engineer是人工智能时代的程序员。下面是某国外网站上提示词工程师的招聘信息,希望成为大家认真学习提示词的动力哈~:
二、提示词组成部分
2.1 提示词组成四要素:指令、上下文、输入、输出
大家平时提问大模型的问题通常很简单,比如“讲个笑话”,“对文章写一个总结”,“写一个遍历目录函数”等,这些显然都是不完备的提示词。以“写一个遍历目录函数”为例,多数大模型会返回Python编写的程序代码。这时候有人要说,我是java程序员为什么不返回java代码。原因显而易见,你没有在提问中指明你需要返回的编程语言类型。
设想一下你在做题时答案错误,但是你只告诉了老师错误答案,并没有告诉老师你的解题过程,老师是不可能告诉你如何修改的,因为你缺乏修改的必备要素。同样一个好的提示词一定是包含完整构成要素的。机器学习大佬吴恩达曾总结出提示词必备的四个基本要素:
指令: 想要模型执行的特定任务的说明。
输入数据: 用户输入的内容或问题
输出提示: 指定输出的类型格式
上下文: 除指令和输入输出外,其它任何的额外信息,包括背景信息,角色设定等。
下面详细向大家介绍提示词必备四要素该怎么写。
2.2 指令:清晰明确
指令的编写原则要清晰,明确,避免含糊不清的词语。
举个例子:如果我们想编写一段关于某个产品的描述,有下面两种提示词:
- 对于这种商品的介绍应该尽量简短,只需要一些句子即可,不要太长。
- 请使用3-5句话介绍某个商品
很显然第二种提示词更容易得到我们想要的回复效果。提示词和大家平常对话一样,我们必须清晰明确的描述需求。想象一下你与别人对话:“请帮我用一些句子回答某个问题”,对方肯定也不清楚“一些”该如何衡量。
问题:如果我们想要大模型生成一首中文古诗,应该如何表述?
回答:使用右图提示词达到想要效果:
2.3 输入:使用###和"""将输入和指令分开,更清晰
我们一般会把指令放在提问的开头部分,随后编写我们的输入,也就是大模型要处理的内容。有一个小技巧是使用符号将输入和指令分开,这样会让大模型更明确哪些是指令,哪些是输入,从而准确的回答我们的问题。
举个例子,如果我们想将“尽量用华丽的英语”这句话翻译成英文,如果我们用下图左边方式提问,gpt以为我们是要写一段华丽的英文,所以回答错误。而右边的回答因为将指令和输入分开,回答正确。
2.4 输出:指定详细具体的输出格式
如果我们只是简单的提问大模型,输出的方式千奇百怪,往往不能达到稳定效果。比如我们提问DeepSeek两次
“帮我制定一个减肥计划。”,DeepSeek两次返回了不同的回答,结果有繁有简。为了得到稳定的输出结果,我们在提问大模型时最好指定我们需要的输出格式。
举个例子,我们还是想让大模型帮我们生成减肥计划,并以 【序号:减肥方法:该方法好处】的格式进行输出,我们采用如下提示词,你会发现无论你如何提问,DeepSeek都会按照你的指定格式输出:
请帮我输出五条减肥计划,输出格式为: """ 序号: 减肥项目: 该项目作用 """
2.5 Context:背景介绍、角色扮演,有趣更有用的提示词要素
我们在提问大模型时,除了清楚表述我们的请求外,还有一个特别有趣的小技巧:给大模型指定一个角色和背景。这样既可以使大模型在回答时得到引人入胜的沉浸式对话(这也是此前爆火的模仿甄嬛的大模型,模仿赵本山的大模型等AI智能体构建的关键步骤),还可以使大模型快速定位相关背景知识从而得到准确高效的回答。
举个例子,我们同样请大模型帮我们设计减肥计划,首先是没有提出背景知识的提问:【给我个减肥计划】,DeepSeek会给出如下回答,回答效果看起来不错,但是仔细阅读会发现是很多已知知识的简单重复,内容详细但细节缺失:
我们给大模型加上背景知识再提问一次:【我想让你扮演一个专业的健身私人教练,你应该利用你的运动科学知识、营养建议和其它相关要素为你的客户我制定专业的计划。给我一个减肥计划】,我们再来看看大模型的回答,从周一到周五给出了详细量化的减肥方法,我们好像真的聘请了一个专业的健身教练!
由于大模型在被设定为特定的角色或者给予特定背景后常常可以获得专业精确的回答,为此有大神专门总结了各种场景下的大模型角色设定提示词,具体的内容可以参考github上的两个项目,笔者这里分享项目中的内容让大家直观感受一下:
当然除了设定大模型的角色,还有个实用技巧是设定用户的角色。举个例子,当我们问大模型【怎样提高英语成绩?】,大模型会给出如下回答,说的普通没有特别惊艳的地方。
如果我们加入自己的角色背景,提问【你是一名英语老师,我是5岁的幼儿园小朋友,还不会写字,怎么提高我的英语成绩呢?】
如果我们换一种角色背景:提问【我是一名25岁的程序员,托福考了105分,我该如何提高我的英语成绩】,大模型回答如下:
以上不同角色下的不同回答充分说明大模型了解我们的角色背景,对症下药的制定了学习方案,很显然这是我们想要的结果~
特别注意::我们发现大模型可以开启多轮对话,其实也是大模型将我们历史的会话记录加入到我们的历史Context中,当历史会话记录太长大模型效果会降低是因为大模型存储历史记录文本的长度是有一定限度的,超过该限度大模型会遗忘很多东西。
2.6 大模型四要素总结
通过以上的分享我们详细了解了大模型提示词必备四要素的重要作用,这里我使用一张表格总结我们的提示词编写技巧,Element是必备要素,Description是必备要素的概念,Examples是必备要素的编写示例,Tips是必备要素的编写技巧,大家可以对照表格进一步理解这四要素:
三、提示词万能模板
3.1 万能模板
有小伙伴可能要问“我看完了四要素还是不会写提示词怎么办”,别着急,接下来我就结合以上必备要素和我工作中的实践,分享下面这个万能提示词模板,亲测可覆盖99%的问题:
1. 给大模型赋予角色和能力
2. 说明用户的角色和处境
3. 简单语言指示大模型要完成的任务
4. 指定输入内容
5. 指定输出格式
6. 指定大模型回复语言风格(也可以通过一定参考范例代替)
以后大家的提示词参照这个万能模板编写,大模型一定可以给出精确的回复。
3.2 万能模板示例
我们以“高考志愿填报”为例,对照上面的万能模板编写我们的提示词:
- 给大模型赋予角色和能力: 你是一个“中国高考志愿填报辅导大师”,是一名经验丰富的教育顾问,精通中国的高等教育体系。
- 说明用户的角色和处境:我是一名山西考生,参与2025年高考,考了672分。我希望上一个地理位置好,专业前景好的学校和专业。
- 简单语言指示大模型要完成任务:请你帮我分析情况并给出我填报志愿的建议。
- 指定输入内容:(这个问题暂时没有需要输入的部分)
- 指定输出格式:以表格的形式给出建议表,每个建议包含“学校的优势劣势”、“专业的优势劣势”、“未来职场可能面对的收益和困扰”,并在最后给出你的总体建议
- 指定大模型回复风格:使用简洁明了,通俗易于理解的语句回复,不要使用专业术语,同时使用友善和鼓励语气。
我们把上述提示词交给DeepSeek【你是一个“中国高考志愿填报辅导大师”,是一名经验丰富的教育顾问,精通中国的高等教育体系。我是一名山西考生,参与2025年高考,考了672分。我希望上一个地理位置好,专业前景好的学校和专业。请你帮我分析情况并给出我填报志愿的建议。以表格的形式给出建议表,每个建议包含“学校的优势劣势”、“专业的优势劣势”、“未来职场可能面对的收益和困扰”,并在最后给出你的总体建议。使用简洁明了,通俗易于理解的语句回复,不要使用专业术语,同时使用友善和鼓励语气。】,可以看到大模型的回答还是非常精确的~
四、总结?刚刚开始
以上就是我们今天的提示词分享内容啦,掌握提示词的必备四要素和万能模板,我们可以轻松让大模型按照我们的指示返回精确的结果。
不过目前的提示词只能让大模型成为一个文科高材生,对于一些理科问题大模型的能力还是有点捉襟见肘,比如最经典的9.11和9.8哪个大的问题。那么我们如何通过提示词让大模型在理科方面也颇有建树呢?
系列文章下篇会讲解如何通过提示词让大模型具备理科思考能力,感兴趣大家点个关注吧(下篇内容本周完成并分享,大家不要走开~)。各位看官感兴趣也可以关注我的微信公众号: 大模型真好玩。 更多精彩的内容,工作学习中的大模型经验分享和免费的资料都会在该公众号分享~