语言模型的简史
始于20世纪60年代的ELIZA,这是一个早期的自然语言处理程序,设计成罗杰斯式的心理治疗师。这种程序可以解析人类的输入,然后生成相应的响应。快进到2018年, OpenAI 推出了在大量文本数据上训练的 GPT-1。之后是 2019 年更先进的 GPT-2 和 2020 年的 GPT-3,它们具有生成奇妙类人的文本的能力。每一次 GPT 的迭代都这是向前迈出的一大步,展示了机器学习和大数据集在创建日益复杂的语言模型方面的力量。
什么是即时工程?
提示工程提出了涉及到构造给ChatGPT等大型语言模型(LLM)的提示或指令,以优化它们的响应。它严重依赖于语言学,即研究语言结构及其学问。例如,如果你要求ChatGPT写一个故事,一个提到的设计提示可能是这样的:“写一个关于一个名叫西尔弗船长的军官,他会说话的骆驼,以及他们寻找失落宝藏的具体故事。”这个提示,给出了上下文,并设定了AI的响应方向。提示工程师将不断地改进提示,并监视它们的效果,因为底层的AI在不断发展。目标是完善人工智能的交互。
为什么令牌很重要
像 GPT-3 这样的 LLM 通过将文本分层为令牌来处理文本,这些令牌是需要收费的。令牌可以理解为语言模型解析文本的最小单位,例如,“ChatGPT 是 OpenAI 开发的语言模型“这句话会被分解为8个令牌。深思熟虑的提示工程可以节省令牌和资金,因为每个令牌都会消耗计算资源和时间。
及时工程的思维方式
将提示工程视为设计有效的Google搜索查询。有更好和更差的方式来获取你的请求。例如,不是问“谁赢了比赛?”这样含糊不清的问题,你可能会问“谁赢了” 2023年的NBA总预测?”这样具体的问题,更可能得到更准确的答案。因为具体的问题可以提供更多的上下文信息,帮助AI更准确地理解你的需求。
及时工程的最佳实践
以下是编写有效提示的一些关键提示:
- 提供清晰、详细的指示。不要假设背景知识。例如,不是要求人工智能“总结一本书”,你可能会要求它“总结乔治·奥威尔的‘1984’的主要主题和情节要点。”
- 采用一种角色,或者指定你希望AI使用的声音。例如,你可以指示AI“以莎士比亚的风格写一个回应。”
- 期望的格式(例如,摘要,要点)。例如,“按时间顺序启动战争的主要事件。”
- 使用迭代提示来指导AI。如果最初响应不足,则提出后续问题。这就像进行一场对话,每个问题都建立在之前有一个响应的基础上。
- 避免引导性的问题,偏斜响应。例如,不是问“不是真的吗,X?”你可能会问“对于X有什么证据和反对的证据?”
- 不是问“世界的历史是什么?”你可能会问“20世纪世界的主要事件是什么?”
高级即时工程
零射击与少数射击 – 零射击与少射击提示
- 零射击指的是完全依赖于模型的预训练知识来生成答案,而少数射击在要求模型任务之前完成,提供了一些相关的例子来增强模型对任务的理解。例如,在少数射击提示中中,如果你希望人工智能写一个笑话,你可能会要求它在提供几个笑话的例子之前生成自己的笑话。
AI幻觉
- 当AI混淆稀疏数据时会发生奇怪的模型训练输出。这通常在AI被询问及几乎没有数据的主题时,导致其“幻觉”或编造信息。这突出需要进一步的模型需求。
提供和文本嵌入
- 用数字表示文本以捕捉语义和关系。这是一种将文本转化为数值标注的方法,使得我们可以在数学上比较不同的词或句子。例如,“国王”和“女王”这两个词可能有类似的支持表示,因为它们都是有效的。
不要忘记新兴模型
提示工程技术也适用于新兴的 AI 系统,例如文本转语音和文本转音频生成器。例如,当使用文本转语音 AI 时,您可能会在语音输出中提供指定您想要的音调或情感的提示,如“以快乐、兴奋的音调阅读以下文本。”
掌握提示工程需要实践,但它让我们能够充分利用像ChatGPT这样强大的LLM的潜力。通过深思熟虑的提示,我们可以进行更有效的人工智能合作。
原文: https://atlassc.net/90798431be48/2023/09/10/prompt-engineering-mastering