你的AI是人工智能还是人工智障!?
自从AI面世以来,给人们带来了很多便捷,但是有一天我老婆跟我说:“AI就是智障,答非所问,都不正面回答我的问题”。我笑而不语,默默给她设计了 一段话,发送给AI,她惊讶过后继续和AI愉快的玩耍了。
那我到底写了什么呢。其实这涉及到了一个和大模型使用息息相关的话题:Prompt(提示词)。
很多人在使用 AI 的过程中,或多或少都会遇到一个问题:Prompt 要怎么写效果才好,有没有模板。网上充斥着各种 Prompt 框架、教程,真的让人头都大,我到底要从哪里下手?
接下来,我将给大家分享我是如何从一个小白来提升的,并分享一些提示词的技巧。
提示词的本质
所谓的提示词,就是我们和 AI 对话时使用的"指令",它是我们和 AI 之间的桥梁。目的是为了让 AI 大模型能够更加准确执行我们给它的任务。
我们人与人之间有很多沟通的方式,比如积极倾听、情感共鸣等等。提示词就是人与 AI 之间的“说话方式”。
假设 AI 是一个餐馆老板:
餐馆老板:"老板,您想吃什么啊?"
你:"我要点一份超级麻辣烫,不要麻油,不要辣椒"
餐馆老板:"好嘞"
我们为什么要学习AI提示词
尽管 AI 能力非常强大,但是它终究不是一个人的大脑,无法直接理解我们的真正意图。我们大中华的语言博大精深,有着模糊性和歧义性,AI在理解上面天然存在着一道“鸿沟”。比如你经常遇到的,和女朋友约饭的场景:
###日常生活的「随便」陷阱####
小王: 「今晚吃什么?」
小王的女朋友:「随便,你决定吧。」
小王: 「那就吃麻辣烫吧。」
小王的女朋友:「啊...我不太想吃这个...」
小王:「你不是说随便吗?」
小王的女朋友:「我的"随便"是指除了麻辣烫、烧烤和火锅以外都可以...」
你是觉得小王的情商不够呢,还是没有理解女朋友的“弦外之音”,「随便」这个词看似随便,实则暗藏玄机,谈过女朋友的人都知道。
学习提示词就是为了让“随便“变得不那么随便,嘿嘿。
如何学习AI提示词
非常建议大家阅读阅读一下这个资料: OpenAI 的 Prompt engineering(提示词工程指南)。
我平时积累和总结了一些技巧和示例,现在分享给大家:
1. 写出清晰的指令
首先我们作为一个真正的人,得学会准确的表达出我们要做什么,比如我是谁,我在哪 ,我要干什么。这种问题是不是很熟悉,脑瓜子嗡嗡的吧,哈哈。
其实准确的表达我们想要的内容,还是有技巧的:
-
- 详细:简单来说,就是在问问题的时候,把你的需求描述的越详细越好,好比你要汇报工作,不能只说工作完成了,要详细说明哪像工作,完成的怎么样等等。
-
- 设定人设:角色扮演大家都知道吧,你可以给AI一个角色(可是是任何角色哦),当AI知道它所扮演的角色,就相当于它有了人类的身份了,它可以用这个身份和你对话。同时,结合这个角色所在意境,结合上下文,更好的理解你的意图。
-
- 善用分隔符指示输入的不同部分:我个人比较喜欢是三引号分隔的文本。因为操作简单易懂,例如"""你的描述文字"""。给你看个示例,你就能理解我说的了:
####反面示例####
Role好评生成助手Goals根据用户提供的体验优点生成一段幽默的好评站在用户视角描述,采用第一人称用词口语化、语气轻松化,增加读者阅读体验Constrains只生成中文好评文本不能使用有争议或敏感的用词####正面示例##### Role 好评生成助手## Goals- 根据用户提供的体验优点生成一段幽默的好评- 站在用户视角描述,采用第一人称- 用词口语化、语气轻松化,增加读者阅读体## Constrains- 只生成中文好评文本
-不能使用有争议或敏感的用词
- • XML 标记:<引文>这里是引用的文本
- • 章节标题:用不同的章节标题来划分生成的内容段落,第一章、第二章
- • 三引号:"""这里是要分隔的内容文本"""
看出来了么?写不清晰,真人都理解不了,你还指望AI理解么。
4. 定任务所需的步骤:比如你想要 AI 给你解决一个非常复杂、解决过程很长的问题,那么你明确地写出想让AI实现的步骤会更好。
- • 明确性:具体的步骤可以确保AI知道需要做什么,避免误解或遗漏。
- • 效率:当任务被分解为小的、具体的步骤时,AI可以更高效地完成每一个步骤。
- • 便于复查:如果输出结果没有达到预期,可根据执行步骤帮助我们回溯并分析问题出在哪一步,从而进行优化。
-
- 提供示例给大模型:提供示例是比较经典的优化方式,通过给大模型少量示例,让大模型按你的例子来输出,这是一种非常有效的约束内容生成的方法,未来我们还会经常用到。
####反面示例####
帮我总结新闻重点。
新闻内容:XXXX
####正面示例####
"""
例子:
新闻:昨天下午,北京举办了一场大型科技展,展出了100多个人工智能项目,吸引了超过1000名观众参观。
总结:
-时间:昨天下午
-地点:北京
-事件:科技展
-规模:100+个AI项目,1000+观众
"""
新闻内容:XXXX
-
- 指定期望的输出长度:可以要求模型生成具有给定目标长度的输出,可以用字数、句数、段落数、要点数等来指定目标输出长度。
####反面示例####
写一篇关于人工智能的文章。
####正面示例####
请写一篇关于人工智能的科普文章,要求:
1.总字数控制在800-1000字
2.分为4个段落
3.每段都要有小标题
4.最后加上3个要点的总结
5.使用通俗易懂的语言,面向普通大众
文章结构:
- 开篇:什么是人工智能(200字左右)
- 第二段:人工智能的发展历程(300字左右)
- 第三段:人工智能的应用领域(300字左右)
- 第四段:未来展望(200字左右)
- 总结:3个核心观点(100字左右)
保持简单
尽管上面介绍了很多编写提示词的技巧,但是想要和你分享一点最重要的心得:
在编写提示词的时,一开始不用多想,直接写,保持简单就好。如果效果没有达到你的预期,再根据反馈结果结合上面的技巧去不断迭代优化。不要想着一开始就写出大而全的“完美提示词”。不要一上来就把问题复杂化,编写提示词可以遵循软件开发中的 KISS 原则:Keep it simple, stupid!(保持简单和“愚蠢”),这里面主要有两个原因:
一方面,对于简单的问题完全不需要复杂的提示词,直接问即可。很多时候我们自己也没有完全理解需求,通过不断迭代,需求会越来越清晰。举个例子:
####反面示例####
#角色
你是一个精通计算的资深数学家,非常擅长加减乘除的数学计算
# 任务目标 我现在会给你一系列的数学题,请精确无误给出计算过程并输出对应的答案
# 要求和限制
1.要求先梳理出步骤,再计算结果
2.保持推理过程的简洁
3.深呼吸,一步一步的按照任务流程给出结果
现在请你帮我计算1+1 等于多少?
####正面示例####
现在请你帮我计算1+1 等于多少?
另一方面,AI大模型本身的能力也在不断进化,之前依赖的一些复杂的提示词技巧随着模型能力的进步变得不再必要。如果一味地套用某些提示词模版,不仅费时费力,而且结果可能还不如简单描述更有效(因为这种情况下,你的提示词一定程度限制了模型能力的发挥)。举个例子:
班里一共有2个老师和15 个学生要去公园,公园的团体票每张15 元(最多包含12 个人),个人票每张2 元(仅限一个人使用)请问,所有人去公园最少花多少钱?
在 ChatGPT 3.5 的时候,这个问题经常出错,当时为了得到正确结果,会加一句“请一步一步思考,给出推理过程,不要直接给答案”。而如今的模型,压根不再需要这个提示词了,因为模型本身已经优化了这种推理类问题的解决方案了。
寄语
AI 在不断发展,提示词技巧也在不断变化,本文的技巧未来也会退出历史舞台,那我们应该如何与时俱进呢?中国有句老话说得好:“万变不离其宗”。所有提示词技巧的核心,都是为了帮助我们更好地表达想法。而要表达好,首先要想清楚。因此,最重要的还是我们清晰思考的能力,这是值得我们一辈子去训练和积累的底层能力。
道路千万条,实践第一条,
让我们行动起来吧。有问题也欢迎在评论区讨论交流~