Prompt Engineering: 使用生成式AI的科学指南
Prompt Engineering 是高效利用 AI 生成内容的关键技能。通过设定明确指令、角色扮演、示例提示等技巧,我们可以提高 AI 输出的质量和精准度。在代码分析、结构化数据生成、文本创作等场景中,它极大提升了生产力,同时需要警惕幻觉与广告植入等问题。
· 约 1 分钟
前言 #
人工智能领域正在被大模型席卷,过去六个月内,我们见证了各种 AI 工具的兴起(如 ChatGPT、Claude-Instant、PaLM、Midjourney)。每个人都应该关注 AI 领域的发展,因为 AI 可以自动化许多你当前耗费大量时间的任务。
什么是 Prompt Engineering #
Prompt Engineering 是与生成式 AI 交互的一种输入风格指南。它的核心是开发一系列风格指南和输入模板,通过调整输入影响 AI 生成的输出。通过适当的提示(prompt)和约束,我们可以改变 AI 的认知方式及“意图”,进而影响其生成的内容。
借助 Prompt Engineering 技巧,我们可以控制 AI 工具输出的范围,使其聚焦于特定话题或思路,同时提高输出质量,减少偏差和错误,增强答案的准确性,从而让 AI 生成符合我们期望的结果。从整体来看,Prompt Engineering 就是利用输入风格和约束,引导与生成式 AI 交互的过程,以实现有效且可控的输出。
理解生成式 AI 的思维方式 #
在学习如何编写有效的 Prompt 之前,我认为有必要先了解生成式 AI 的基本工作原理。以流行的文本生成 AI 为例,它的大脑由数十亿个人工神经元组成,这些神经元的结构被称为Transformer 架构,它是一种复杂的神经网络。我们可以将其理解为编码器-解码器(Encoder-Decoder,简称 ED) 模型,其中:
- 编码器(Encoder):将用户输入(自然语言句子)转换为 AI 可理解的形式(上下文信息)。
- 解码器(Decoder):将 AI 处理后的信息转换回用户可理解的文本(输出目标语言句子)。
需要注意的是,AI 本质上只是一个数学函数。尽管它远比 f(x) = 2x+1 这样的简单函数复杂,但仍然遵循一定的数学原理。AI 通过将句子拆分为 Token(标记) 来理解文本。例如,输入 “I prefer coffee to tea.",AI 可能会拆分为 "I"、"prefer"、"coffee"、"to"、"tea",并将这些词向量化(转换成一组加密数字)以便理解句子。
AI 基于前一个词预测下一个词,并不是在真正“思考”,而是在计算可能性,利用涌现(emergence) 现象生成答案(这也是为什么它偶尔会给出逻辑混乱的回答)。因此,我们需要掌握 Prompt Engineering 技巧,以便让 AI 以尽可能符合我们期望的方式进行回应。
编写 Prompt 的技巧(以 Claude-Instant 为例) #
想要与生成式 AI 进行高效的文本交互,我们必须学会提供适当的提示词(Prompt)。以下是一些关键的 Prompt 编写技巧:
1. 直接给出明确指令 #
这是最常见的方式,即提供上下文 + 直接指令,这种方式简单明了。