提示工程指南
https://www.promptingguide.ai/zh
https://github.com/dair-ai/Prompt-Engineering-Guide
提示工程(Prompt Engineering)是一门较新的学科,关注提示词开发和优化,帮助用户将大语言模型(Large Language Model, LLM)用于各场景和研究领域。 掌握了提示工程相关技能将有助于用户更好地了解大型语言模型的能力和局限性。
研究人员可利用提示工程来提升大语言模型处理复杂任务场景的能力,如问答和算术推理能力。开发人员可通过提示工程设计、研发强大的工程技术,实现和大语言模型或其他生态工具的高效接轨。
提示工程不仅仅是关于设计和研发提示词。它包含了与大语言模型交互和研发的各种技能和技术。提示工程在实现和大语言模型交互、对接,以及理解大语言模型能力方面都起着重要作用。用户可以通过提示工程来提高大语言模型的安全性,也可以赋能大语言模型,比如借助专业领域知识和外部工具来增强大语言模型能力。
基于对大语言模型的浓厚兴趣,我们编写了这份全新的提示工程指南,介绍了大语言模型相关的论文研究、学习指南、模型、讲座、参考资料、大语言模型能力以及与其他与提示工程相关的工具。
https://www.promptingguide.ai/zh/introduction/elements
提示词要素
如果您接触过大量提示工程相关的示例和应用,您会注意到提示词是由一些要素组成的。
提示词可以包含以下任意要素:
指令:想要模型执行的特定任务或指令。
上下文:包含外部信息或额外的上下文信息,引导语言模型更好地响应。
输入数据:用户输入的内容或问题。
输出指示:指定输出的类型或格式。
设计提示的通用技巧
以下是设计提示时需要记住的一些技巧:
从简单开始
在开始设计提示时,你应该记住,这实际上是一个迭代过程,需要大量的实验才能获得最佳结果。使用来自OpenAI或Cohere的简单的 playground 是一个很好的起点。
你可以从简单的提示词开始,并逐渐添加更多元素和上下文(因为你想要更好的结果)。因此,在这个过程中不断迭代你的提示词是至关重要的。阅读本指南时,你会看到许多示例,其中具体性、简洁性和简明性通常会带来更好的结果。
当你有一个涉及许多不同子任务的大任务时,可以尝试将任务分解为更简单的子任务,并随着结果的改善逐步构建。这避免了在提示设计过程中一开始就添加过多的复杂性。
指令
你可以使用命令来指示模型执行各种简单任务,例如“写入”、“分类”、“总结”、“翻译”、“排序”等,从而为各种简单任务设计有效的提示。
请记住,你还需要进行大量实验以找出最有效的方法。以不同的关键词(keywords),上下文(contexts)和数据(data)试验不同的指令(instruction),看看什么样是最适合你特定用例和任务的。通常,上下文越具体和跟任务越相关则效果越好。在接下来的指南中,我们将讨论样例和添加更多上下文的重要性。
有些人建议将指令放在提示的开头。另有人则建议是使用像“###”这样的清晰分隔符来分隔指令和上下文。
例如:
提示:
### 指令 ### 将以下文本翻译成西班牙语: 文本:“hello!”
输出:
¡Hola!
具体性
要非常具体地说明你希望模型执行的指令和任务。提示越具描述性和详细,结果越好。特别是当你对生成的结果或风格有要求时,这一点尤为重要。不存在什么特定的词元(tokens)或关键词(tokens)能确定带来更好的结果。更重要的是要有一个具有良好格式和描述性的提示词。事实上,在提示中提供示例对于获得特定格式的期望输出非常有效。
在设计提示时,还应注意提示的长度,因为提示的长度是有限制的。想一想你需要多么的具体和详细。包含太多不必要的细节不一定是好的方法。这些细节应该是相关的,并有助于完成手头的任务。这是你需要进行大量实验的事情。我们鼓励大量实验和迭代,以优化适用于你应用的提示。
例如,让我们尝试从一段文本中提取特定信息的简单提示。
提示:
提取以下文本中的地名。 所需格式: 地点:<逗号分隔的公司名称列表> 输入:“虽然这些发展对研究人员来说是令人鼓舞的,但仍有许多谜团。里斯本未知的香帕利莫德中心的神经免疫学家 Henrique Veiga-Fernandes 说:“我们经常在大脑和我们在周围看到的效果之间有一个黑匣子。”“如果我们想在治疗背景下使用它,我们实际上需要了解机制。””
输出:
地点:里斯本,香帕利莫德中心
输入文本来自这篇 Nature 文章
。
避免不明确
给定上述关于详细描述和改进格式的建议,很容易陷入陷阱:想要在提示上过于聪明,从而可能创造出不明确的描述。通常来说,具体和直接会更好。这里的类比非常类似于有效沟通——越直接,信息传达得越有效。
例如,你可能有兴趣了解提示工程的概念。你可以尝试这样做:
解释提示工程的概念。保持解释简短,只有几句话,不要过于描述。
从上面的提示中不清楚要使用多少句子以及什么风格。尽管你可能仍会从上述提示中得到较好的响应,但更好的提示应当是非常具体、简洁并且切中要点的。例如:
使用 2-3 句话向高中学生解释提示工程的概念。
做什么还是不做什么?
设计提示时的另一个常见技巧是避免说不要做什么,而应该说要做什么。这样(说要做什么)更加的具体,并且聚焦于(有利于模型生成良好回复的)细节上。
以下是一个电影推荐聊天机器人的示例,因为我写的指令——关注于不要做什么,而失败了。
提示:
以下是向客户推荐电影的代理程序。不要询问兴趣。不要询问个人信息。 客户:请根据我的兴趣推荐电影。 代理:
输出:
当然,我可以根据你的兴趣推荐电影。你想看什么类型的电影?你喜欢动作片、喜剧片、爱情片还是其他类型的电影?
以下是更好的提示:
提示:
以下是向客户推荐电影的代理程序。代理负责从全球热门电影中推荐电影。它应该避免询问用户的偏好并避免询问个人信息。如果代理没有电影推荐,它应该回答“抱歉,今天找不到电影推荐。”。 ```顾客:请根据我的兴趣推荐一部电影。 客服:
输出:
抱歉,我没有关于你兴趣的任何信息。不过,这是目前全球热门的电影列表:[电影列表]。希望你能找到喜欢的电影!
提示词示例
上一节介绍了如何提示大语言模型的基本示例。
在本节中,我们会提供更多示例,介绍如何使用提示词来完成不同的任务,并介绍其中涉及的重要概念。通常,学习概念的最佳方式是通过例子。下面几个例子展示了如何使用精心制作的提示词来执行不同类型的任务。
主题:
What is Prompt Engineering? A Detailed Guide For 2025
https://www.datacamp.com/blog/what-is-prompt-engineering-the-future-of-ai-communication
https://dzone.com/articles/a-comprehensive-guide-to-prompt-engineering
What is prompt engineering?
https://www.ibm.com/think/topics/prompt-engineering
标签:Prompt,语言,示例,提示,模型,电影,任务,Engineering From: https://www.cnblogs.com/lightsong/p/18634325