三、问题解决方式:从人脑方案到内外脑并用
问题解决方式与人们对运用哪些工具解决问题的基本认知有关。在传统认知里,“人脑”主导了大部分的问题解决过程,人脑的边界即可解决的问题的边界。然而,随着生成式AI时代的到来,以机器智能为代表的“外脑”实现了对人脑的辅助,通过远超人脑的存储、计算能力,拓宽了人力可及的边界。人工智能的加持,让“内外脑”并用成为可能。为了更好地构建“内外脑”系统,我们需要提前进行三项工作:学会分配任务、学会传达任务和学会明确需求。
1.学会分配任务
从智能产生的根本机制来看,人工智能与人类智能具有完全不同的智能基础。人工智能的本质是以计算的方式机械地模拟人脑的生物功能,依据理性策略产生强大的计算—表征能力,严格按照规则和约束解决问题。对人工智能的提升(如情感理解能力、情境适应能力等),本质上都是对机器关于该参数计算能力的提升,其有限性由自身算力来决定。这种精确、可计算的特性决定了人工智能的应用是面向已知领域的信息总结过程。由于语境的更新,人工智能很难捕捉、解读新的表征,这时便需要人类智能来实现更新。相较于人工智能,人类智能在时间、算力和交流尺度三个方面的有限性十分突出:有限的寿命和算力决定了人类只能处理有限的、少量的数据,是一种短链的突现式智能,也是以经验感知为主的具身智能;有限的交流尺度则意味着,人类无法如机器一样以复制的方式转移信息,只能基于展望未知的想象能力,以学习的方式获得智能。这些有限性塑造了人类智能区别于人工智能的特征:人类智能是基于具身、直觉、意志的突现式智能,具有面向未来的创新能力;人工智能则是精确、可描述、可计算的计算智能,侧重于面向过去的总结。可以看出,人工智能弥补了人类智能在数据处理方面的客观不足,而不可被计算的“灵光一现”式的创造机遇则只能属于人类智能。
基于两种智能生产机制的差异,我们可以将二者的智力生产分成理性智力劳动和非理性智力劳动两个层次。前者指智力劳动中那些可被数据描述、可被算法解析的逻辑性、理性化部分,后者则强调那些无法用算法解析与表达的目标性领域。在仅以人脑为主导的智力劳动中,两个部分往往没有明晰的界限,需要借助生成式AI这一媒介实现分割。举例来看,在传统的人脑主导的思维模式下,创作一段小说开头需要搜索灵感、选择风格、调动语言,这些任务杂糅在一起,完整而不可拆分。但在使用ChatGPT时,我们可能会传达这样的指令:“写一段具有马尔克斯风格的开头,描述一个女人在河边徘徊的场景,使用青苔、水草等元素。”稍等片刻,机器便会输出结果。无论它的回答内容是否满足我们的需要,这样的一问一答,都实现了对写作任务的切割与分配:抽象的、意志的劳动,如捕捉灵感、描述目标等任务仍由人脑完成;纯粹机械的、技艺性的、无差别的、同劳动特殊形式毫不相干的劳动活动,如从既有经验中总结规律、输出结果的任务,则被剥离出来,交由机器“外脑”回答。在马克思看来,这种机器化生产使人类劳动逐渐去技能化,成为旁观机器作业的助手。但正如上文提到,人工智能与人类智能间存在难以逾越的鸿沟,面对生成式AI,人类并非站在流水线旁边的机器生产的附庸,而是“内外脑”并用时的指挥者。
2.学会传达任务
由于人工智能只能从事机械的、技艺性的理性智力劳动,如何利用人类智能传达任务指令,协调好人脑的“赋魂”与“外脑”的执行,实现“内外脑”的并用,就变得格外重要。一般认为,博物馆等知识媒介,是一种围绕客观性组织的线性的“本质性资料库”(Essence Archive)。在“本质性资料库”中,受众接收的是确定的实体或符号。与之相反,生成式AI则是围绕概率性组织的“或然率资料库”(Probability Archive),是一个不确定的群集,松散、混乱而充满变化。我们与生成式AI的每一次交互,都可能获得不同的输出。这意味着,向生成式AI下达任务可能不是一劳永逸的,而是一个动态的、不断调整的过程。这也是生成式AI区别于其他算法媒介之处——它是一种可“微调”(Fine Tuning)的算法媒介。
所谓“微调”,是指模型从训练数据中读取文本标记,并预测下一个标记的过程。预测出错时,模型会更新内部权重,使其更有可能在下一次做出正确预测。在标记、反馈的过程中,人类智能得以对人工智能进行调整。一方面,我们可以调整生成式AI的训练数据,用包含偏好、需求的私有资料训练出个性化的人工智能;另一方面,我们还可以通过交互中的提示,标记实现针对部分参数的部分微调。此外,基于强化学习框架的人类反馈强化学习(Reinforcement Learning from Human Feedback,RLHF)也是生成式AI适应人类指令的有力推手。该技术不需要预先标记文本,但需要对机器输出内容做倾向性反馈,依此实现语言模型的优化。现有研究已说明,这种标记/反馈—调整的训练激发了模型的理解能力,使之可以在没有显式示例的情况下,更好地完成新任务指令。基于此,我们在向生成式AI下达任务时,可以遵循以下三项原则。第一,由简入繁。在下达任务时,我们可以先进行零样本(Zero-shot)提示,即不向生成式AI提供具体显式示例。例如,当模型能够识别熊和企鹅的特征时,要求其根据“类熊形态”(熊的特征)和“黑白相间”(企鹅的特征)这两个标签及对应样本,在不给定熊猫样本的情况下,仅凭对熊猫的描述识别出熊猫。当然,这时的输出可能并不准确,若我们想获得更优质的结果,可以尝试给出少样本(Few-shot)提示,即给出少量示例供模型学习。比如,在对熊猫的描述之外,增加几张熊猫的图片作为学习样本。如果以上两种提示都未能得到满意的结果,则可以对模型进行前面提到的“微调”,使之更好地理解任务。第二,化大为小。当我们让生成式AI进行故事创作等复杂任务时,它可能只会给出一段枯燥、粗糙的流水账。这时,我们可以试着分割该任务,将大的故事分成小的结构,先让生成式AI完成一个开头,再继续创作下一部分内容,直至结尾。通过化大为小的方式,生成式AI可以一步步给出更符合人类要求的答案。第三,设置自查。这一部分需要我们为生成式AI设置一个关于“好”的判准,并要求其在输出前检查答案是否符合要求。比如,我们可以提示生成式AI,“一份好的旅行策划应包括时间、目的地、交通、住宿、花费等信息,以表格形式呈现”,要求其在输出答案前完成自查,如果答案不符合要求,则重新生成内容。通过自查,生成式AI可以交出一份更符合人类标准的答案。
3.学会明确需求
由上述内容可以看出,向生成式AI下达任务的过程,是一个逐渐逼近需求的过程,不同的提问方式可能带来迥异的输出结果。这也催生了一门新兴学科——提示工程(Prompt Engineering)。提示工程关注提示词的开发与优化,致力于帮助用户了解大语言模型的能力及局限,进而更好地将其应用于任务场景中。通过遵循一些通用的提示技巧,我们可以更好地向生成式AI阐明需求,获得更满意的输出结果。例如,采用具体而精确的指令。为任务加上限定词可以帮助生成式AI更好地完成任务,例如,提示“一个300字以内的、讲述爱情破裂的、悲情的短故事”要优于“一个爱情故事”。当然,考虑到提示语的长度限制,设置提示时应排除不必要、不相关的细节,仅表述最贴合需求的内容。其次,侧重陈述预期目标。在阐释需求时,我们应聚焦于希望生成式AI实现的目标,即让模型产生良好响应的细节,尽量避免只告诉其“不该做”的事。举例来说,提示“设计一个推荐电影的代理程序,不要询问顾客兴趣”便是关注“不要做”的提示,生成式AI可能仍会询问顾客的兴趣偏好;如果将提示变成“设计一个推荐电影的代理程序,从全球热门电影中推荐电影,避免询问用户的偏好;如果没有电影推荐,代理程序应该回答‘无推荐’”,生成式AI完成任务的可能性会更高。