即时工程完全指南:提示工程师的关键概念和技术 -- 知识铺
2024 年 3 月 13 日
阿克谢·K.
13 分钟阅读
随着人工智能 (AI) 工具在各行业中变得越来越普遍,以补充人类的努力,快速工程已成为一项关键技能。
提示工程师是自然语言专家,负责与大型语言模型(LLMs)进行通信以达到预期的结果。
在本文中,我们将解释即时工程的要点及其关键概念。我们还将探索多种以精确、上下文驱动的方式开发提示的技术。
为了进一步帮助您理解,我们将使用不同的 AI 模型尝试这些提示,看看它们如何响应。
- What Is Prompt Engineering?
- Prompt Elements
- Prompt Engineering Techniques
- 1. Zero-Shot Prompting
- 2. One-Shot Prompting
- 3. Information Retrieval
- 4. Creative Writing
- 5. Context Expansion
- 6. Content Summarization With Specific Focus
- 7. Template Filling
- 8. Prompt Reframing
- 9. Prompt Combination
- 10. Chain-Of-Thought Prompting
- 11. Iterative Prompting
- 12. Interactive Storytelling and Role-Playing
- 13. Implicit Information Injection
- 14. Language Translation With Contextual Nuance
- 15. Automatic Prompt Engineer
- Prompt Engineering Use Cases
- Tips for Successful Prompt Engineering
- Future Trends in Prompt Engineering
- Prompt Engineering FAQ
什么是即时工程?
提示工程是指创建精确有效的提示,以从大型语言模型中获取上下文驱动的 AI 输出 (LLMs)。它需要自然语言处理方面的专业知识和LLM能力。
及时的工程师必须提出清晰且针对具体情况的问题和陈述,从而从人工智能模型中得出最相关和最准确的响应。
无论是生成详细的营销报告、创建引人入胜的网站内容,还是开发完美的编程语言代码,有效的提示工程都是行业专业人士应该添加到他们的投资组合中的一项节省时间的技能。
请注意,提示工程师不需要熟悉编程语言或具备软件开发技能。任何具有良好语言能力和分析思维的人都可以学习即时工程。
提示基础知识
在深入研究高级提示技术之前,让我们先回顾一下指导语言模型的提示基础知识。
首先,提示意味着使用自然语言(例如英语)向人工智能工具解释你想要什么并获得相关响应。
通过提示与语言模型交互
大型语言模型是生成式人工智能工具,可以根据收到的输入创建类似人类的文本。这些输入称为提示。
例如,考虑一家网络机构想要为他们开发的新网站设计工具生成标语。在这种情况下,精心设计的提示可能如下所示:
“为一个工具生成一个口号,让每个人都可以轻松地进行网站设计。”
此提示很清晰,并指示 LLM 所需的特定内容类型 - 针对网站设计工具的潜在用户的朗朗上口且简洁的标语。目的是向 LLM 清楚地传达您的目标,以获得准确且相关的输出。
让我们看看当我们将该提示输入 ChatGPT-4 时给出的结果:
情境和教学的力量
为了最大限度地提高语言模型的有效性,您必须在提示中包含两个组成部分:上下文和说明。
添加上下文有助于模型更好地理解场景,而指令设计则告诉它您具体希望它做什么。
例如,考虑一下提示:“作为健康和保健博主,总结一下地中海饮食的四个主要好处。”在这种情况下:
- 背景——“作为健康和保健博主”帮助模型理解总结的视角和深度。
- 说明 - “总结地中海饮食的四个主要好处。”告诉模型需要关注什么并产生什么输出。
出于以下几个原因,提供清晰、充分的背景和说明至关重要:
- 减少歧义——减少收到不相关或偏离主题的输出的机会。
- 更多控制——从人工智能获得可预测的响应。
- 节省时间——减少来回沟通即可达到预期结果。
这是当我们将其提供给 ChatGPT-4 时上下文驱动的提示给出的结果:
提示元素
在为人工智能聊天机器人制作自然语言提示时,理解基本元素对于实现所需的输出至关重要。
提示元素引导 AI 模型朝您预期的方向发展,确保清晰度和上下文。
以下是需要考虑的一些主要组成部分:
上下文设置
正确地设置舞台可以使获得预期结果产生重大影响。
背景的重要性
上下文为人工智能提供了清晰的背景或周围信息,使其能够生成相关且适当的内容。如果没有适当的上下文,响应可能最终会变得通用或偏离目标。
例如,如果您向模型询问“绿色技术”,引入“用于交通运输”的背景会缩小对与车辆相关的绿色技术的响应范围。
介绍背景
一个好的提示不仅要有上下文,还要有效地介绍它。上下文越详细、越具体,人工智能的理解就越好。
例如,指定“改善电子商务网站用户体验的建议”,而不是“电子商务的建议”。
清晰的指示
清晰的指令驱动情境人工智能交互。
制定精确的说明
明确、直接的指令可以确保人工智能输出更加精确,并减少歧义的空间。
为了说明这一点,不要提示“告诉我有关网站开发人员的信息”,而是指定“解释网站开发人员的角色和职责”。
避免含糊的语言
含糊或矛盾的语言可能会混淆模型,导致响应不太准确。
例如,“讨论网站设计”是模糊的。相反,“讨论电子商务平台网站设计的趋势”更直接。
所需的输出格式
开发提示时指定输出格式至关重要。它有助于大型语言模型增强内容创建。
格式化
规定人工智能响应的结构或风格可以将输出细化为所需的形状或形式。
例如,请求“列出网站开发人员最常用的五种工具”可确保列表格式简洁。
音调和长度
确定语气有助于将自然语言情感注入人工智能的答案中。同时,定义长度可以让人工智能模型确定其响应的深度。
定下基调
您可以通过指示所需的语气来控制答案的情感共鸣或专业等级。
例如,“对以下网站设计提供专业评论。”
长度决定深度
指示您是否需要简洁的摘要或详细的解释,以确保量身定制的人工智能响应。
例如,“写一篇关于响应式网站设计演变的简短介绍(30-40 个字)。”
快速工程技术
现在让我们更深入地研究一些基本的提示工程技术和策略,以帮助您掌握模型提示。
1. 零样本提示
零样本提示涉及在不向大型语言模型提供任何示例或先前上下文的情况下生成响应。当您需要快速回答基本问题或一般主题时,此技术是理想的选择。
这是使用 ChatGPT-3.5 进行零样本提示的示例:
2. 一键提示
一次性提示是指根据用户提供的一个示例或一段上下文来提取响应。
为了说明这一点,我们在 ChatGPT-3.5 中尝试了这种策略:
3.信息检索
信息检索提示是将大型语言模型视为搜索引擎时的提示。它涉及向生成人工智能提出一个非常具体的问题,以获得更详细的答案。
一些LLMs由于其数据源而更擅长信息检索提示。例如,Google 的 Gemini 可以访问当前的互联网信息,而 ChatGPT 只知道 2022 年 1 月之前发生的事情。
下面是一个使用 Gemini 进行信息检索提示的示例:
4.创意写作
制作创意内容提示可以帮助您生成富有想象力的叙述、引人入胜的故事以及根据受众的喜好和兴趣量身定制的独特文本表达。
以下是要求 GPT-3.5 生成式 AI 进行创造性写作的提示示例:
5. 上下文扩展
上下文扩展技术围绕丰富人工智能的信息来有效增强其理解。
编写上下文扩展提示的一个好方法是通过 5 个“Ws 和 How”方法,该方法涉及通过询问与主题相关的 Who、What、Where、When、Why 和 How 问题来扩展查询。
以下是 ChatGPT-4 如何使用该方法来扩展一个简单陈述的上下文:“锻炼对你的健康有益”。
6. 有针对性的内容概括
有效的提示工程还在于将人工智能的注意力引导到输入的特定部分,特别是当您需要特别强调的简洁摘要时。
通过制定精确的说明,您可以突出显示您希望模型优先考虑的文本元素,确保摘要抓住所需焦点的本质。
假设您有网站优化技术的综合指南,但您只对移动优化策略感兴趣。在这种情况下,您的提示应该清楚地表明这一点。
例如,“总结这篇关于网站优化的文章,但只关注与移动优化相关的策略:[在此处复制+粘贴文章]。”
以下是 ChatGPT-4 完成任务的方式:
想用人工智能优化您的网站吗?
查看我们关于网站人工智能的文章:人工智能如何帮助改进您的网站。
7. 模板填充
模板填充可让您轻松创建多功能且结构化的内容。您将使用带有占位符的模板来启用针对不同情况或输入的提示自定义,同时保持一致的格式。
使用变量和占位符自定义模板
在模板填充中,您可以通过为占位符定义多个变量来进一步自定义生成式 AI 工具的输出。
通常,内容管理者或网络开发人员使用此策略为其网站创建多个定制的人工智能生成的内容片段。
假设您正在管理一个电子商务网站。在这种情况下,您可以使用产品描述的标准模板,允许人工智能填充产品名称、功能和价格等字段,以便为每个答案创建新的描述。
当您需要人工智能生成的内容来满足特定的准则或格式时,此技术非常有用。
另一个实际用例是创建自动化但个性化的电子邮件。动态模板填充保证邮件整体结构一致,具体内容根据用户信息而变化。
举个例子,我们以这个提示为例:“使用模板‘你好{Name},欢迎使用我们的{Service}生成一封个性化的欢迎电子邮件。我们很高兴你在这里! {结束}’”
8. 及时重构
提示重构或 AI 提示自定义可让您巧妙地更改提示的措辞,同时保持查询的原始意图。
它可以鼓励语言模型产生多种响应,以不同的方式回答原始意图。
维持意图的措辞技巧
一种方法是使用同义词或改写问题,同时保持主题一致。它将在响应中产生不同的细微差别,这在您寻找各种想法时特别有用。
例子
原始提示 – 有哪些方法可以优化网站速度?
重构提示 – 您能列出改善网站加载时间的技术吗?
9. 快速组合
提示组合技术涉及将不同的指令或问题合并成一个单一的、多方面的提示,以从人工智能中得出全面的答案。
在本教程中,我们以这个提示为例——“您能解释一下共享主机和 VPS 主机之间的区别,并推荐哪个更适合小型电子商务网站吗?”
10. 思维链提示
思维链提示是指使用实时人工智能交互来引导工具获得更准确、更全面的答案。
您可以提供一系列相关示例或问题来优化原始查询,而不是仅仅依赖单个提示。
如何使用思维链提示
有效的思维链提示的关键是将复杂的问题或主题分解为更小、更易于管理的部分。然后,将这些部分呈现为一系列相互基础的提示,推动人工智能得到所需的答案。
我们要求 ChatGPT-4 为我们提供一个思维链提示的例子,它给出的结果如下:
11. 迭代提示
迭代提示是另一种有效的技术,您可以通过提出后续问题来建立以前的响应。有了它,您可以更深入地研究某个主题,提取更多见解,或澄清初始输出中的任何歧义。
如何使用迭代提示
迭代提示的关键是关注人工智能的初始答案。您可以构建后续提示来详细说明该答案的特定部分、深入研究子主题或寻求澄清。当您需要收集详细信息时,它特别有用。
LLMs 更擅长自然语言处理 (NLP),可以熟练地处理迭代提示并以类似人类的方式制定响应。
下面是使用 Claude AI 进行迭代提示的简单示例,Claude AI 是一个具有良好 NLP 功能的 LLM:
12. 互动讲故事和角色扮演
利用人工智能进行交互式故事讲述和角色扮演是一种制作动态内容的创造性且引人入胜的方式。
这项技术利用了人工智能根据提示和之前的交互来调整其反应的能力,从而实现流畅且不断发展的叙述。
协作讲故事
协作讲故事更进一步,让人工智能实时适应您的输入。它允许您和工具进行来回交流,为展开的故事做出贡献,创造互动和身临其境的体验。
例子
提示——我想和你开始一个合作讲故事的练习。我们将写一个关于魔法存在但已被遗忘很长时间的土地的奇幻故事。
这是故事的主角和最终目标:
角色:多拉里斯,一位年轻的农民,偶然发现了一本古老的咒语书。
目标:利用魔法的力量来结束森林小村庄的饥荒。
13.隐式信息注入
通过隐式信息注入,您可以巧妙地注入上下文,以便人工智能模型无需明确告知即可理解您的需求。
隐式上下文策略
当您寻求细致入微或量身定制的响应时,此技术特别有用。例如,您可以使用“详细”或“详细”等词语来引导人工智能输出更正式的输出,而不是说“用正式的语气写下来”。
例子
提示 – 您能否提供一些提高网站流量的快速提示?
14. 具有语境细微差别的语言翻译
多语言内容生成不仅仅是将单词从一种语言转换为另一种语言。使用即时工程,您可以确保人工智能考虑文化或情境背景,从而产生更准确、更细致的翻译。
通过上下文提高翻译准确性
通过在提示中添加文化或情境提示,您可以引导人工智能提供适合上下文的翻译。它在商业通信、法律文件或任何细微差别可能极大改变含义的文本中特别有用。
例子
提示 - 将短语“She Take the ball and ran with it”从英语翻译成法语,记住这是负责项目的商业隐喻。
15.自动提示工程师
自动提示工程 (APE) 是人工智能领域的一项进步,它利用新的 LLM 功能帮助 AI 自动生成和选择指令。
它将任务转化为黑盒优化问题,使用机器学习算法启发式地生成和评估候选解决方案。
人工智能代理使用类似的方法来中断任务并自动生成后续提示,以最少的人机交互完成给定的工作。要了解有关该工具的更多信息,请查看我们的 Auto-GPT 安装指南。
APE 工作流程说明
APE 工作流程由五个主要步骤组成:
- 您为聊天机器人指定一项特定的工作并展示一些示例。
- 聊天机器人想出了不同的方法来完成这项工作,要么通过简单的推理,要么通过考虑它所知道的类似任务。
- 然后在实践中测试这些不同的方法。
- 聊天机器人会对每种方法的效果进行评分。
- 然后人工智能会选择更好的方法并应用它。
机器学习的好处和应用
当配备自我提示功能时,生成式人工智能工具可以简化从上下文驱动的数据分析到自动化客户服务的任务,从而消除了持续不断的人工生成提示的需要。
我们请 ChatGPT-4 用一个简单的例子来解释 APE 工作流程:
及时的工程用例
让我们探讨如何在各种实际场景中使用这些技术,从代码开发和 SEO 友好的内容生成到医疗诊断。
生成和调试代码
快速工程对于代码生成和调试非常有用。您可以制作特定的提示,让 AI 生成代码片段、调试现有代码,甚至建议替代编码方法。
例如,您可以使用“生成一个 Python 函数来计算数字的阶乘”之类的提示来获取函数代码。
制作 SEO 友好的文章
除了要求人工智能从头开始创建一篇文章之外,您还可以使用它来改进您当前的文章。最常见的人工智能内容优化实践之一是复制整个博客文章以及您希望该工具自然添加的某些关键字。
自定义虚拟助手
通过正确的提示,您可以定制虚拟助手,在您的网站上提供目标受众的沟通。这对于旨在提供个性化受众参与体验的企业尤其重要。
通过使用即时工程技术,您可以创建不仅具有功能性而且还可以根据每个用户的偏好和历史记录进行定制的交互。
学习和教育支持
精心设计的提示可以极大地帮助教育和学习。使用所讨论的技术,您可以成为自己的即时工程师,并使用 AI 模型更好地理解复杂的理论,例如导数、积分和语法。
例子
提示 – 您能一步步解释如何将法语动词“être”变位为现在时吗?
分析和解释数据
及时的工程设计可以帮助从复杂的数据集中提取有用的见解。在允许访问大数据源后,您可以要求LLMs通过多模态AI提示来分析信息并生成可视化摘要。
您可以制作提示,让 AI 扫描数据中可能不会立即显现的趋势、模式和关系。
例如,作为负责分析和解释大量数据集的提示工程师,您可以提示 AI 图像生成器创建图表或图形来展示数据中的重要趋势和相关性。
然后,您可以使用迭代提示并要求人工智能解释可视化并描述可以得出的有意义的叙述、见解和结论。
通过信息检索提示提出有针对性的问题,可以进一步帮助你引导人工智能识别重大发现并阐明“那又怎样?”从数据来看。
然后,您可以使用内容摘要将复杂信息提炼为关键要点。
研究和医学诊断
在医学研究和诊断中,即时工程可以改变游戏规则。通过精心设计的提示和 APE,人工智能应用程序可以帮助诊断医生分析症状、筛选医学文献,甚至提出潜在的治疗方案。
例如,提示可以引导人工智能扫描大量研究论文,以确定罕见疾病的可能治疗方法。
然而,与人工智能讨论您的症状并不能替代医生的咨询。请记住,人工智能只是一个不能完全信任的工具。
成功快速工程的技巧
有效的即时工程是关于理解技术并很好地应用它们。以下是一些改进您的方法的技巧。
分析模型响应
研究模型如何对各种提示做出反应很重要。这种理解将帮助您改进提示,以实现更准确和完整的响应,尤其是在使用生成式人工智能工具时。
利用用户反馈
改进提示工程的一个非常有效的方法是主动向人工智能应用程序反馈它们对提示的响应程度。
反馈集成是最重要的LLM功能之一,可帮助生成式 AI 工具细化语言模型。从本质上讲,这使他们能够更好地为您提供您想要的东西。
适应模型更新
掌握模型架构变化、添加的数据和新的LLM功能至关重要。这可以帮助您调整提示并更好地利用新功能。
协作和社区投入
与他人合作为快速工程提供了新的视角。您可以在论坛、社交媒体和专业网络中征求社区意见,以提高您的即时制作技能。
尝试不同的提示策略
尝试不同的技术可以让您更深入地了解什么是最有效的。这将使您更灵活地将提示应用于各种用例和上下文。
快速工程的未来趋势
与增强现实 (AR) 和虚拟现实 (VR) 集成
即时工程可以通过优化 3D 环境中人工智能驱动的交互来增强沉浸式 AR/VR 体验。
提示工程的进步可以让用户在实时模拟环境中使用自然语言与人工智能角色交谈、请求信息和发出命令。
及时的工程师可以为人工智能提供空间、情境和对话环境,并在游戏、培训、旅游和其他 AR/VR 应用中培养非常类似人类的交流。
提示还可以考虑用户的位置、操作和环境,以实现高度相关的响应。
跨领域创造力
突破即时工程的界限可能会激发人工智能产生新颖的艺术、音乐、故事和其他创意作品。及时的工程师可以指导人工智能融合不同媒介和流派的概念,或者将人类和机器的创造力结合到协作作品中。
即时工程可以不断探索人工智能创造力的新应用,同时解决道德问题。如果实施得当,它可以使艺术人工智能工具的使用变得民主化。
实时语言翻译与交流
即时工程可以实现口语和书面语言的即时翻译。提示可以提供跨多种语言的上下文,以便人工智能可以实时双向翻译,同时保留细微差别。
这可以实现商业、外交和个人环境中的无缝多语言沟通。需要仔细的提示工程来考虑地区方言、文化差异和言语模式。
结论
即时工程是计算机科学中的一门新兴学科,它可以彻底改变我们与技术交互的方式。
掌握这项技能对于利用从压缩复杂数据到执行细致入微的语言翻译的全部 LLM 功能至关重要。
尽管某些语言模型擅长特定类型的提示,但精心设计的查询可以显着提高任何生成式人工智能工具的响应质量。
精通即时工程需要采用迭代思维。这需要持续测试、收集用户见解、利用社区智慧以及适应新的LLM功能。
有效地开发提示从基本技术开始。开始尝试信息检索、上下文放大、摘要、重构和迭代提示,以熟悉语言模型。
如果您知道任何其他提示策略,请在下面的评论中分享。您的贡献将丰富阅读本文的即时工程师的集体知识。
快速工程常见问题解答
让我们解决一些有关即时工程的常见问题。
使用即时工程有什么好处?
及时的工程增强了大型语言模型的性能,使它们在生成有用的输出时更加高效和通用。它对于信息检索、数据分析、人工智能内容增强和定制语言生成等任务至关重要。
即时工程有多困难?
快速工程是一项相对容易学习的技能。
但是,我们建议初学者从简单的查询开始,然后转向更复杂的概念,这些概念需要对自然语言处理和有效的语言建模有细致的了解,以制定优化的数据查询。
你能找到一份快速工程的工作吗?
是的,随着人工智能和机器学习的发展,对提示工程师等专业角色的需求正在增加。许多科技公司和研究机构正在创建涉及职责的角色,例如作为数据科学团队的一部分制定提示。
即时工程师做什么的?
即时工程师专门负责编写查询或指令来指导大型语言模型和人工智能系统。他们专注于优化用户与人工智能之间的交互,确保从数据分析到客户参与的各种应用程序中输出更准确、更有意义的结果。
Akshay 是一位高级内容作家,喜欢撰写有关技术的文章。作为计算机工程专业的毕业生和经过认证的数字营销人员,他的目标是让每个人都能更轻松地使用技术。他还喜欢烹饪、旅行和学习新语言。在 LinkedIn 上关注他
- 原文作者:知识铺
- 原文链接:https://index.zshipu.com/gpt/post/20240328/%E5%8D%B3%E6%97%B6%E5%B7%A5%E7%A8%8B%E5%AE%8C%E5%85%A8%E6%8C%87%E5%8D%97%E6%8F%90%E7%A4%BA%E5%B7%A5%E7%A8%8B%E5%B8%88%E7%9A%84%E5%85%B3%E9%94%AE%E6%A6%82%E5%BF%B5%E5%92%8C%E6%8A%80%E6%9C%AF--%E7%9F%A5%E8%AF%86%E9%93%BA/
- 版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。
- 免责声明:本页面内容均来源于站内编辑发布,部分信息来源互联网,并不意味着本站赞同其观点或者证实其内容的真实性,如涉及版权等问题,请立即联系客服进行更改或删除,保证您的合法权益。转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。也可以邮件至 sblig@126.com