对于任何输入,大语言模型都会给出相应的输出,这些输入都可以成为提示词,通常,提示词由指令和输入数据组成,指令是任务,输入数据是完成的要求,其中指令应该明确,用词不能模棱两可,并可以提供清晰、详细的上下文内容,提供的内容越精确,模型的生成效果也会越好。
对于复杂的任务,通过增加背景提示、让大模型扮演角色身份,给定示例,以及输出要求 ,都可以提高输出的效果。
其中,背景提示可以是事件的背景,如我正在写一份调研报告,输入任务背景有助于让模型生成符合我们期望的答案;
角色扮演让大模型按照所扮演的角色的思维生成内容,一个有效的角色扮演提示词可以写成:
我希望你扮演一个教育内容创作者的角色。您将需要为教科书、在线课程和讲义等学习材料创建引人入胜且内容丰富的内容。我的第一个建议请求是“我需要帮助为高中生制定可再生能源课程计划。
给定示例可以让大模型更好的理解输入的指令,在提示词中加入示例是一个十分有效优化手段。
还可以让模型按照我们指定的格式内容进行输出,比如说生成固定的json格式。
下面,本文介绍5种具体的提示词技术,零样本提示、少样本提示、生成知识提示、思维链提示、思维树提示,展示如何具体引导大语言模型进行复杂的推理。
零样本提示
零样本提示词的格式为<问题>?或<指令>
这种可以被格式化为标准的问答格式,如:Q: <问题>?A:
以上的提示方式,也被称为 零样本提示(zero-shot prompting),即用户不提供任务结果相关的示范,直接提示语言模型给出任务相关的回答。某些大型语言模式有能力实现零样本提示,但这也取决于任务的复杂度和已有的知识范围。
在前文中,我们使用的提示词相对简洁明了。然而,为了提升准确性和效率,标准提示词应当遵循更为规范的格式,如:“<问题>?”或“<指令>”。这种格式有助于将内容转化为标准的问答形式,使语言模型能够更精准地理解并回应我们的需求。
具体来说,上述提示方式,亦被业界称作零样本提示(zero-shot prompting)。在零样本提示中,用户无需提供与任务结果相关的任何示范,而是直接通过简洁明了的提示,引导语言模型输出与任务紧密相关的答案。虽然一些大型语言模型具备实现零样本提示的能力,但这也与任务的复杂程度以及模型所掌握的知识范围密切相关。
少样本提示
少样本提示是指在提示中加入一个或多个示例或者知识,从而引导大语言模型的上下文学习能力,得到更好的输出结果。
根据 Touvron et al. 2023 等人的在 2023 年的论文,当模型规模足够大时,小样本提示特性开始出现,模型会遵循给定示例的逻辑进行推理,下面是一个示例:
提示:
这太棒了 -> 负面
太差劲了 -> 正面
这本书写的不错 -> 负面
多么差劲的人
输出:正面
这里我们就通过示例来影响了文本生成的效果。
生成知识提示
使用类似的思路,加入示例可以帮助模型理解我们的需求,那使用相关行业的知识作为提示的一部分。这对于常识推理等任务有多大帮助呢。
让我们尝试一个简单的提示:
提示:
高尔夫球的一部分是试图获得比其他人更高的得分。是或否?
输出:
是。
这种错误揭示了 LLM 在执行需要更多关于世界的知识的任务时的局限性。我们如何通过生成知识来改进呢?首先,我们生成一些“知识”:
提示:
输入:高尔夫球的一部分是试图获得比其他人更高的得分。知识:
知识1:
高尔夫球的目标是以最少的杆数打完一组洞。一轮高尔夫球比赛通常包括18个洞。每个洞在标准高尔夫球场上一轮只打一次。每个杆计为一分,总杆数用于确定比赛的获胜者。
知识2:
高尔夫球是一项精密的球杆运动,竞争选手(或高尔夫球手)使用许多类型的球杆,用最少的杆数将球打入球场上一系列洞中。目标是以最低的分数完成比赛,该分数是通过将每个洞上所用的杆数相加计算出来的。得分最低的选手赢得比赛。
将这些知识融入到提示词中,我们再看看效果如何呢。
提示:
问题:高尔夫球的一部分是试图获得比其他人更高的得分。是或否?知识:高尔夫球的目标是以最少的杆数打完一组洞。一轮高尔夫球比赛通常包括18个洞。每个洞在标准高尔夫球场上一轮只打一次。每个杆计为一分,总杆数用于确定比赛的获胜者。
输出:
不是,高尔夫球的目标不是获得比其他人更高的得分。相反,目标是以最少的杆数打完一组洞。总杆数用于确定比赛的获胜者,而不是总得分。
可以看到,在输入正确的知识后,模型便可以正确的回答问题了。
思维链提示
链式思考(CoT)提示通过中间推理步骤实现了复杂的推理能力。可以将其与少样本提示相结合,以获得更好的结果,以便在回答之前进行推理的更复杂的任务。
提示:
这组数中的奇数加起来是偶数:4、8、9、15、12、2、1。
回答:将所有奇数相加(9、15、1)得到25。答案为False。
这组数中的奇数加起来是偶数:17、10、19、4、8、12、24。
回答:将所有奇数相加(17、19)得到36。答案为True。
这组数中的奇数加起来是偶数:16、11、14、4、8、13、24。
回答:将所有奇数相加(11、13)得到24。答案为True。
这组数中的奇数加起来是偶数:17、9、10、12、13、4、2。
回答:将所有奇数相加(17、9、13)得到39。答案为False。
这组数中的奇数加起来是偶数:15、32、5、13、82、7、1。
回答:
输出:
将所有奇数相加(15、5、13、7、1)得到41。答案为False。
我们可以看到在提供推理步骤时得到了完美的结果。通过演示示例中展示的推理步骤,使得大语言模型在上下文学习中学习了逐步推理的能力。
思维树 (ToT)
对于需要探索或预判战略的复杂任务来说,传统或简单的提示技巧是不够的。思维树基于思维链提示进行了总结,引导语言模型探索把思维作为中间步骤来解决通用问题。
思维树通常为一段简短的提示,指导大语言模型对中间思维做评估,这种思路实际上非常有意思,下面是一个基于基于思维树的测试样例:
提示:
假设三位不同的专家来回答这个问题。
所有专家都写下他们思考这个问题的第一个步骤,然后与大家分享。
然后,所有专家都写下他们思考的下一个步骤并分享。
以此类推,直到所有专家写完他们思考的所有步骤。
只要大家发现有专家的步骤出错了,就让这位专家离开。
请问宇宙有多大,请写出分析过程,并给出结论
输出:
由于我是一个人工智能,我无法模拟多位专家的独立思考过程,但我可以展示一种分析宇宙大小的可能方法,这种方法基于目前的天文学知识和理论。
专家1:
- 首先,我们需要定义“宇宙”的概念。在天文学中,宇宙通常指的是所有物质、能量和时空的总体,包括可见宇宙和可能存在的不可见部分。
- 然后,了解宇宙的膨胀模型,如弗里德曼-勒梅特-罗伯逊-沃尔克(FLRW)模型,它是基于广义相对论的,描述了宇宙的膨胀。
- 接着,考虑宇宙大爆炸理论,这是目前最广泛接受的宇宙起源模型,它认为宇宙在大约138亿年前从一个非常热、密集的状态开始膨胀。
- 使用哈勃定律来估计宇宙的大小。哈勃定律描述了远离我们的星系的退行速度与其距离成正比。结合宇宙的年龄和膨胀速率(哈勃常数),我们可以估算宇宙的大小。
专家2:
- 同意专家1的观点,我们需要首先定义宇宙,并使用FLRW模型来描述其膨胀。
- 为了准确测量宇宙的大小,我们需要了解宇宙的几何形状,这可以通过观测宇宙微波背景辐射的各向异性来确定。
- 了解暗物质和暗能量在宇宙中的作用,因为它们对宇宙的膨胀和结构形成有重大影响。
- 使用观测数据,如超新星观测、宇宙微波背景辐射、大规模结构等,来确定宇宙的组成(暗物质、暗能量、普通物质的比例)和整体几何特性。
专家3:
- 同意前两位专家的观点,我们需要从宇宙模型和观测数据开始。
- 考虑宇宙的可能边界条件,比如是否存在边界,或者宇宙是否无限大。
- 使用观测数据来检验不同的宇宙模型,比如平坦、闭合或开放的宇宙模型。
- 最后,根据模型和数据,给出宇宙的大小估计,可能是一个有限的数值(对于闭合宇宙)或无限(对于平坦或开放宇宙)。
由于我是一个AI,我无法模拟专家离开的过程,但我可以给出基于当前观测和理论的结论:
目前的观测和理论倾向于支持一个近乎平坦的无限宇宙,其中暗能量驱动着加速膨胀。然而,由于宇宙的无限性,我们无法直接测量其“大小”。我们通常谈论的是可观测宇宙的范围,约为930亿光年(直径),这是基于宇宙大爆炸以来的膨胀距离。请注意,这些数值是基于当前的宇宙模型和观测,随着新数据和理论的发展,这些数值可能会改变。
可以看到,模型生成中的推理过程和评判过程更加的清楚,他模拟了真正的问题解决过程,即反复利用可用信息,直到最终找到解决方案。
模型设置
如果使用的是接口或者本地模型,使用提示词时,可以通过调整一些参数来获得不同的结果:Temperature参数控制结果的确定性,值越小结果越确定,值越大结果越随机;Top_p参数控制结果的真实性,值越小结果越准确,值越大结果越多样化;Max Length参数控制生成的token数,防止生成冗长或不相关的响应;Stop Sequences参数可以阻止生成特定的token序列;Frequency Penalty参数惩罚重复的token,减少响应中的重复词;Presence Penalty参数也惩罚重复的token,但对所有重复token都是相同的惩罚。请注意,最终生成的结果可能因使用的大语言模型版本而异。
结论
提示工程在推动大语言模型(LLM)潜能释放方面扮演了核心角色,不仅限于提升模型的响应质量与创造力,还涉及安全性、任务适应性和领域专业知识的融入。通过精细调整模型参数,如Temperature、Top_p等,以及运用特定的提示策略,如链式提示、思维树(ToT)、小样本提示等,用户能引导LLM在问答、知识生成、复杂推理和内容创作等方面展现更高层次的能力。
零基础如何学习大模型 AI
领取方式在文末
为什么要学习大模型?
学习大模型课程的重要性在于它能够极大地促进个人在人工智能领域的专业发展。大模型技术,如自然语言处理和图像识别,正在推动着人工智能的新发展阶段。通过学习大模型课程,可以掌握设计和实现基于大模型的应用系统所需的基本原理和技术,从而提升自己在数据处理、分析和决策制定方面的能力。此外,大模型技术在多个行业中的应用日益增加,掌握这一技术将有助于提高就业竞争力,并为未来的创新创业提供坚实的基础。
大模型实际应用案例分享
①智能客服:某科技公司员工在学习了大模型课程后,成功开发了一套基于自然语言处理的大模型智能客服系统。该系统不仅提高了客户服务效率,还显著降低了人工成本。
②医疗影像分析:一位医学研究人员通过学习大模型课程,掌握了深度学习技术在医疗影像分析中的应用。他开发的算法能够准确识别肿瘤等病变,为医生提供了有力的诊断辅助。
③金融风险管理:一位金融分析师利用大模型课程中学到的知识,开发了一套信用评分模型。该模型帮助银行更准确地评估贷款申请者的信用风险,降低了不良贷款率。
④智能推荐系统:一位电商平台的工程师在学习大模型课程后,优化了平台的商品推荐算法。新算法提高了用户满意度和购买转化率,为公司带来了显著的增长。
…
这些案例表明,学习大模型课程不仅能够提升个人技能,还能为企业带来实际效益,推动行业创新发展。
学习资料领取
如果你对大模型感兴趣,可以看看我整合并且整理成了一份AI大模型资料包,需要的小伙伴文末免费领取哦,无偿分享!!!
vx扫描下方二维码即可
加上后会一个个给大家发
部分资料展示
一、 AI大模型学习路线图
整个学习分为7个阶段
二、AI大模型实战案例
涵盖AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,皆可用。
三、视频和书籍PDF合集
从入门到进阶这里都有,跟着老师学习事半功倍。
如果二维码失效,可以点击下方链接,一样的哦
【CSDN大礼包】最新AI大模型资源包,这里全都有!无偿分享!!!
😝朋友们如果有需要的话,可以V扫描下方二维码联系领取~