提示词工程?NO!问题构建?YES!
一、提示词工程不是未来
ChatGPT大火后,提示词工程(Prompt Engineering)概念成为了大众的焦点。许多人为了紧跟AI步伐,不断地学习各类提示词工程的技巧,以便于能够更加有效地与AI进行对话,并解决现实生活中的问题。
在招聘市场上,甚至催生了一个新宠儿——提示词工程师(Prompt Engineer)。按字面意思理解,就是掌握了提示词工程的技巧的人,利用与AI模型沟通的能力,为企业解决问题。
提示词工程一时间风头无两,许多人也纷纷认为,提示词工程是未来所有人都必须具备的一项技能,甚至该技能会替代掉许多工作,尤其是基础类工作。
但实际上,我们或许过于高估了提示词工程在未来的地位。Sam Altman(OpenAI的CEO)在其于2022年的一则访谈中也有提到他对于提示词工程在未来的观点。
我并不认为在5年后我们还会需要提示词工程,因为它会被集成到任何地方。无论是文本还是声音,基于其所处的场景,你只需要用语言和电脑进行交互,让电脑去完成你让它做的事情。……我认为最基本的交互方式,就是自然语言。
Andrej Karpathy(前特斯拉的AI负责人)甚至说到:
当前最火热的编程语言,是英语。
提示词工程在未来的重要性将会被降低的原因可能有以下三点:
- 未来的AI系统将会变得更加直观,更善于理解自然语言,因此也会减少对于“精心设计”的提示词的需求;
- 像GPT-4这类新型的AI模型,已经在提示词制作方面显示出了不错的前景,AI本身正处于提示词工程过时的边缘;
- 提示词的有效性取决于特定的算法,这限制了它们在不同AI模型或版本中的效用。
因此,到底什么样的能力,能够持续地、持久有效地,给予我们不断地利用AI发挥潜力?这就是问题构建。
二、问题构建
1. 什么是问题构建
问题构建(Problem Formulation)是以清晰简介的方式识别、定义问题的过程。它会将问题分解为更小、更易于管理的部分,收集有关问题的信息并分析,并生成潜在的解决方案。问题构建的目标是对问题有一个全面的了解,并生成可有效实施的潜在解决方案的过程。
一言以蔽之,问题构建,是识别、分析和描述问题的能力。
2. 提示词工程 VS 问题构建
为什么是问题构建而非提示词工程,才是应用AI的未来方法,需要通过观察二者的差异了解。
提示词工程的重点在于,选择合适的单词、短语、句子及标点符号等来制作(Craft)出最佳的文本输入。因此,提示词工程的要求是能够掌握特定的AI工具和语言能力。
问题构建则强调划定问题的重点、范围和边界,以此来定义问题。因此,问题构建的重点在于对问题所属领域的全面理解,以及抽取现实世界问题的能力。
可以这么说,若问题没有被准确构建,那么再复杂的提示词也是没有用的。而若问题本身能够被清晰定义,那么提示词在语言上粗糙点也没关系,解决方案才是关键。
3. 问题构建步骤
第一步,识别问题。
问题的发生一定会伴随着一些明显的特征,让我们能够感受到问题的存在。此时的问题可能非常具体且易于确定,也可能很宽泛或带有创造性。
例如,我要查询某天发生了什么事情,这个问题非常具体。但如果是要让AI帮我们撰写一份符合公司实际需要的市场活动方案,则是更加宽泛、更需要创造力的。
第二步,定义问题。
在此步骤中,需要澄清问题的本质和范围,并将问题拆分成更小的可管理的子问题,尤其是当问题涉及多方面因素时。因为如果问题过于复杂,往往很难产生有效的解决方案。
与此同时,需要收集与问题相关的信息,并对信息进行处理分析。收集信息一般可以通过数据分析、专家访谈或用户研究等方式获取。
例如,“撰写一份符合公司实际需要的市场活动方案”这一问题,非常宽泛,且需要创造力。我们需要对该问题进行拆解,如“活动的执行目的是什么”、“执行该活动有哪些资源可用”等。其次,我们可以获取更多关于策划该活动的关键信息,例如,对目标群体进行采访调研获取客户期望、收集竞争对手的类似做法、询问市场活动专家了解活动注意事项等。
问题拆分的结果与收集分析的信息,将成为构建问题的关键。
第三步,问题重构。
问题重构意味着改变看待问题的角度,也被称作替代解释(Alternative Interpretation)。
基于我们对问题的定义以及对问题相关信息的收集,原始的问题可能会发生变化,我们可能发现,真正的问题并不是一开始所认为的问题,而是另有内涵。
例如,当用户给你反馈说“为什么页面上没有某个按钮”时,其问题本身可能并不在于“按钮是否存在”,甚至可能也不在于“功能是否存在”,而是用户“需要的某项服务没被找到”。或许该服务的相关功能在产品内是有提供的,只是用户在操作过程中没遇到或忽视了。
问题的准确重构,能够指导AI有效地拓宽解决方案的范围,从而帮助我们找到更好的解决方案,并克服创造性的障碍。
第四步,约束设计。
最后,我们需要通过定义解决方案的输入、过程和输出来限制问题的边界,这主要是为了解决AI返回信息的要求问题。
通常我们可以通过提示词来进行约束设计。提示词工程中的“Few-Shot Prompting”方法就是一种典型的约束设计方式。它通过举例的方式,让AI理解任务本身的要求,从而输出让提问者满意的输出信息。
例如,提示词输入:
The odd numbers in this group add up to an even number: 4, 8, 9, 15, 12, 2, 1.
A: Adding all the odd numbers (9, 15, 1) gives 25. The answer is False.
The odd numbers in this group add up to an even number: 17, 10, 19, 4, 8, 12, 24.
A: Adding all the odd numbers (17, 19) gives 36. The answer is True.
The odd numbers in this group add up to an even number: 16, 11, 14, 4, 8, 13, 24.
A: Adding all the odd numbers (11, 13) gives 24. The answer is True.
The odd numbers in this group add up to an even number: 17, 9, 10, 12, 13, 4, 2.
A: Adding all the odd numbers (17, 9, 13) gives 39. The answer is False.
The odd numbers in this group add up to an even number: 15, 32, 5, 13, 82, 7, 1.
A:
AI会返回结果:
Adding all the odd numbers (15, 5, 13, 7, 1) gives 41. The answer is False.
一般来说,当任务本身是以生产为导向时,用更加严格的标准进行约束设计会获得更加好的结果,因为生产意味着标准和效率。但如果面向一个更为需要创造力的任务时,在约束设计上则可以适当放宽(甚至消除),让AI本身能够探索更多,从而提供更加新颖的解决方案。
作者:吸猫狂魔;公众号:吸猫狂魔
本文作者 @吸猫狂魔 。
版权声明
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处。如若内容有涉嫌抄袭侵权/违法违规/事实不符,请点击 举报 进行投诉反馈!