文本概括

自然语言生成中的一个标准任务是文本摘要。文本摘要可以涵盖许多不同的风格和领域。事实上,语言模型最有前景的应用之一就是将文章和概念概括成简洁易读的摘要。让我们尝试使用提示进行一个基本的摘要任务。

信息提取:

虽然语言模型是被训练用于执行自然语言生成及相关任务,但它同样非常擅长执行分类和一系列其他自然语言处理(NLP)任务

这是一个从给定段落中提取信息的提示词示例

问答

让模型给出具体回答的最佳方法之一是改善提示的格式。如前所述,一个提示可以结合指令、上下文、输入和输出指示(output indicators)来获得更好的结果。虽然这些组成部分不是必需的,但随着你给出的指令越具体,你将获得越好的结果,这成为了一种良好的实践。

下面是一个例子,展示了按照更结构化的提示词来会是什么样子的。

文本分类

到目前为止,你已经使用了简单的指令来执行任务。作为提示词工程师,你需要更擅长提供更好的指令。但这还不是全部!你还会发现,在更困难的用例中,仅仅提供指令是不够的。这就是你需要更多考虑上下文和其他元素(在提示词中使用)的地方。你可以提供的其他元素包括输入数据示例

让我们通过一个文本分类的示例来演示这一点。

你给出了对文本进行分类的指令,模型以'Neutral'回应,这是正确的。这没有问题,但假设你真正需要的是让模型以你希望的确切格式给出标签。因此,你希望它返回的是neutral而不是Neutral。你如何实现这一点呢?有几种不同的方法可以做到这一点。在这里,你关心的是具体性,所以你给提示词提供的信息越多,结果就越好。

我们再试一次:

这次模型返回了neutral,这是你所寻找的具体标签。看起来,提示中提供的示例帮助模型在其输出中保持了具体性。

为了强调有时具体性为什么很重要,请查看下面的例子并找出问题所在:

这里的问题是什么?作为提示,模型完全忽略了虚构的nutral标签。相反,模型输出了Neutral,因为它对这个标签有一定的偏好。但假设你真正想要的是nutral。你怎么解决这个问题?也许你可以尝试为标签添加描述或在提示中增加更多示例?

对话

你可以通过提示工程进行更有趣的实验,比如指导大语言模型系统如何表现,指定它的行为意图和身份。 当你在构建对话系统,如客户服务聊天机器人时,这尤其有用。

比如,可以通过以下示例创建一个对话系统,该系统能够基于问题给出技术性和科学的回答。 你可以关注我们是如何通过指令明确地告诉模型应该如何表现。 这种应用场景有时也被称为角色提示(Role Prompting)

我们的AI研究助手听起来有点太技术性了,我们改变提示词,并指示系统给出更易于理解的回答。

代码生成

大语言模型(LLMs)在代码生成方面非常有效。 在此方面,Copilot 就是一个很好的示例。通过巧妙的提示,你可以执行大量的代码生成任务。

我们先用它写个简单的用户欢迎程序:

下面的示例展示了通过稍微多一点的提示词设计工作,LLMs可以变得多么强大。

在这种情况下,你提供了关于数据库模式的数据,并要求它生成一个有效的 MySQL 查询。

推理

当今大型语言模型(LLM)面临的最困难任务之一是需要某种形式的推理的任务。推理是最具吸引力的领域之一,因为有了推理,就可以从LLM中涌现出各种复杂的应用类型。

目前,涉及数学能力的推理任务已经有了一些改进。 对于当前的大型语言模型来说,执行推理任务可能会有一些难度,因此就需要更高级的提示词工程技术。

我们将介绍几个基本示例来展示算术功能。

我们试着用提示词去改进它:

如果你提供更好的指令并结合示例,这可能有助于获得更准确的结果。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐