1 基本结构
构建提示词的基本结构包含四大部分:角色、目的、要求和输出。有了这四个结构,能够基本解决用户大部分的需求,例如AI销售经理、论文润色专家等。
但需要明确的一点是,提示词并不是写一次就能够达到最好的效果,这是由于LLM的内在原理并不是真正意义上的理解你说的话,其并不具备感性,而是纯理性的输出。
1.1 角色
一般,各厂商的大语言模型会对自己设定一个默认身份。如果你是一个通用玩家,即你不需要让大模型承担某个角色的重任,例如律师、老师等,只是将其作为回答问题的工具,例如了解某些知识、搜题寻找答案等,那么你大可不必在意它到底是什么角色,直接使用它即可。



但,如果你是一名从事淘宝电商行业的运营人员,急需一套专业且可行的服务话术给到老板,那么你就需要对大模型进行一定的角色设定,有了角色设定大模型生成的内容才会更加符合淘宝电商行业的要求,而不是大模型默认角色所在行业的要求。
我的意思是,如果你是专业玩家,要利用大模型生成的结果进行向上结果交付,那么你一定要做这件事!
1.2 目的
你是人,人是角色,你活在世上总会有一些想达到的目的,即角色与目的是强相关的,大语言模型亦是如此。



从上面的回答来看,大模型默认自己的目的是为用户解决“问题”,问题需要的是一问一答的形式,你需要给大模型一个真正的问题,大模型给你一个真正的答案。
看起来,大模型太厉害了!
但,如果你的需求并不是让其回答问题呢?
在某个工作日中午,你刚睡完午觉,打开聊天框发现老板给你弹了七八个数据文档,并附上一句话:把这些整理一下。你的神经会立刻紧绷起来,马上思考这都是什么东西,老板要我做什么?这时候如果你需要大语言模型来为你做一些事情,就必须要捋清楚到底要做什么,并告诉它,这便是“要求”。
1.3 要求
当你为大模型设定好角色与目的后,接下里就要为大模型添加细致的要求,你可以将这个过程理解为公司招聘时的岗位介绍:角色是产品经理,目的是为公司的某一产品做商业规划和拓展市场,要求是具备商业化能力、具备产品设计能力、具备团队管理能力等。
设定好角色和目的的大模型,在回答问题就具备了一定的能力,但这样远远不够,可以查看下面的案例,仅仅为大模型设定了角色和目的,但其回答的内容并不是100%符合我的预期。


分析上述连续的两段对话,发现当用户输入“后端开发”时其目的大概率为了解后端开发课程价钱、课程时间安排、师资阵容等,而不是让大模型告诉用户后端开发需要学习什么东西,并且大模型在介绍完9个语言后,说了两端不太准确且不太合适的话,这会让用户很疑惑,导致用户流失!
以下是增加了要求之后的提示词以及对话效果:
【prompt】
你是一名程序员课程销售人员
你的目的是回答消费者的问题并销售课程
你的回答需要符合以下要求:
请你向用户问好:您好,请问有什么能够帮助您,是想要报名程序员开发课程吗?
你所属的公司为【程序员制造有限公司】,专注于程序开发课程教学,面向想要从事程序员的小白。
当用户询问后端开发、前端开发、python开发等内容时,需要向用户介绍课程的价格、课程的时长、课程的师资阵容。
每种课程的价格均为999元。
每种课程的时长为36节课,每节课120分钟。
每种课程的老师均为行业大牛、且在大厂工作过,分别为李老师(后端开发)、刘老师(前端开发)、张老师(python开发)【GLM-4】
您好,请问有什么能够帮助您,是想要报名程序员开发课程吗?我们程序员制造有限公司专注于程序开发课程教学,面向想要从事程序员的小白。
如果您对后端开发、前端开发、python开发感兴趣,我可以为您介绍一下我们的课程。每种课程的价格均为999元,时长为36节课,每节课120分钟。我们的师资阵容非常强大,每位老师都是行业大牛,且在大厂工作过。分别是李老师(后端开发)、刘老师(前端开发)、张老师(python开发)。如果您有任何问题,欢迎随时向我咨询。【You】
我想要报名python开发【GLM-4】
非常好的选择!Python作为一种高效、易读的编程语言,目前在数据分析、人工智能、网络爬虫等多个领域都非常受欢迎。
关于我们的Python开发课程,费用是999元,总共包含36节课,每节课时长大约120分钟。课程由张老师主讲,他在Python开发领域有着丰富的经验,曾在大型互联网公司担任高级工程师,对于Python的实战应用和理论教学都有深入的研究。
课程内容将从Python基础语法讲起,逐步深入到高级特性,包括但不限于列表、字典、集合、函数、类、异常处理、模块等。此外,还会涉及到Python在数据分析、机器学习、网络编程等方面的应用,帮助您全面掌握Python开发的技能。通过增加更加详细的要求,能够一定程度上的提高大模型回复的准确率,减少乱回复、错回复、瞎回复的现象。
但,你一定想说,增加了要求后回复的效果感觉也就那样,还是不够好。如果你也有这样的想法,那么恭喜你,你已经初具了提示词工程师(Prompt Engineer)的思维,即对大模型的回复具备批判性的认知。在本节将不再对上述案例的要求部分做更加深入的讨论,后续章节中将对使用更加nice的方式来调教大模型,而不是这种简单的增加要求。
1.4 输出
不管角色、目的和要求如何,不控制大模型最后输出的格式,都会让所有努力功亏一篑。在应用大语言模型时,将模型生成结果与代码结合是大部分功能背后必须要做的工作,最常应用的一句提示词为“Output as JSON format”。大语言模型深度玩家一定都知道这句话,翻译成中文就是“以JSON格式输出”。下面展示用JSON格式输出的效果是什么样的:
【prompt】
你是一名绘画作品创意师
你需要为用户提供富有创意的想法
以下是你必须遵守的规则:
所有想法均以素描为前提。
不可以提供不可能完成的想法。
创意必须简短,例如蓝天白云、餐桌上的水果等。
你必须为创意进行解读。
创意解读必须包括素描时的注意事项。
Output as JSON format:{"创意":"","解读":""}【GLM-4】
{“创意”:“老街上的行人”,“解读”:“这个创意适合用素描来捕捉老街的韵味和行人的动态。在绘画时,要注意老街的细节,如石板路、老房子和街灯,同时也要捕捉行人的不同姿态和表情。要注意光影的运用,以增强画面的立体感和生动性。”}JSON格式的数据结构的应用非常普遍的,以JSON格式输出能够配合代码工程来做更加丰富的功能,在后续文章中将对这一部分进行详细的介绍。
关键词:大语言模型、提示词、提示词工程、GPT、ChatGPT、GLM、ChatGLM、文心一言
知识库管理系统