提示词(prompt)工程指南(四):提示应用 您所在的位置:网站首页 链接如何转化为二维码格式 提示词(prompt)工程指南(四):提示应用

提示词(prompt)工程指南(四):提示应用

2023-04-09 01:33| 来源: 网络整理| 查看: 265

在本指南中,我们将介绍一些高级和有趣的方式,利用提示工程来执行更有用和更高级的任务。

完整的中文版本指南和更丰富的参考资料在 Github 和 Gitee 中,自动持续翻译更新: 🐙 关于提示词工程(prompt)的指南、论文、讲座、笔记本和资源大全

https://github.com/yunwei37/Prompt-Engineering-Guide-zh-CNhttps://gitee.com/yunwei37/Prompt-Engineering-Guide-zh-CN

目录:

提示词(prompt)工程指南(四):提示应用 生成数据PAL(程序辅助语言模型)Python笔记本生成数据

LLMs有强大的文本生成能力。使用有效的提示策略可以引导模型产生更好、更一致和更准确的回复。LLMs还可以特别有用于生成有用于运行各种实验数据。例如,我们可以使用它生成快速样本以用于情感分类器,就像这样:

提示:

生成10个情感分析例子。将示例归类为积极或消极。生成2个消极的示例和8个积极的示例。使用以下格式进行示例: 问: 答:

输出:

问: 我刚刚得到了最好的消息! 答: 积极 问: 我们在工作中得到了加薪! 答: 积极 问: 我为今天所取得的成就感到自豪。 答: 积极 问: 我有史以来过得最好的一天! 答: 积极 问: 我真的很期待周末。 答: 积极 问: 我刚收到了最好的礼物! 答: 积极 问: 我现在非常开心。 答: 积极 问: 我非常幸运能有这样一个神奇的家人。 答: 积极 问: 外面的天气真的很阴暗。 答: 消极 问: 我刚得到了一些可怕的消息。 答: 消极

这非常有用。我们在指南的另一部分中使用这个示例进行不同的测试。

PAL(程序辅助语言模型)

Gao等,(2022)提出了一种使用LLMs阅读自然语言问题并生成程序作为中间推理步骤的方法。被称为“程序辅助语言模型(PAL)”,与思维链提示不同的是,它不是使用自由格式文本来获得解决方案,而是将解决步骤卸载到编程运行时,如Python解释器。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3iJL7m5L-1680086168248)(…/img/pal.png)]

让我们看一个使用LangChain和OpenAI GPT-3的示例。我们有兴趣开发一个简单的应用程序,能够解释问题并利用Python解释器提供答案。

具体来说,我们有兴趣创建一个函数,允许使用LLM回答需要日期理解的问题。我们将向LLM提供一个提示,其中包括从这里采用的一些示例。

这些是我们需要的导入:

import openai from datetime import datetime from dateutil.relativedelta import relativedelta import os from langchain.llms import OpenAI from dotenv import load_dotenv

让我们先配置一些东西:

load_dotenv() # API configuration openai.api_key = os.getenv("OPENAI_API_KEY") # for LangChain os.environ["OPENAI_API_KEY"] = os.getenv("OPENAI_API_KEY")

设置模型实例:

llm = OpenAI(model_name='text-davinci-003', temperature=0)

设置提示+问题:

question = "Today is 27 February 2023. I was born exactly 25 years ago. What is the date I was born in MM/DD/YYYY?" DATE_UNDERSTANDING_PROMPT = """ # Q:2015还有36小时就要到了。从今天算起一周后的日期是什么(以MM/DD/YYYY的格式呈现)? # 如果2015年还有36小时就要到了,那么今天就是36小时前。 today = datetime(2015, 1, 1) - relativedelta(hours=36) # 从今天算起一周后, one_week_from_today = today + relativedelta(weeks=1) # 用%m/%d/%Y格式呈现的答案是 one_week_from_today.strftime('%m /% d /%Y')。 """

格式:

格式:仅返回已翻译的内容,不包括原始文本。 Q:2019年的第一天是星期二,今天是2019年的第一个星期一。今天的日期是什么?格式为MM/DD/YYYY。 如果2019年的第一天是星期二,而今天是2019年的第一个星期一,那么今天晚了6天。 today = datetime(2019, 1, 1) + relativedelta(days=6) 答案的格式为%m/%d/%Y today.strftime('%m/%d/%Y') Q:音乐会原定于1943年6月1日举行,但因一天而延迟到今天。10天前的日期是什么?格式为MM/DD/YYYY。 如果音乐会原定于1943年6月1日举行,但因一天而延迟到今天,那么今天晚了一天。 today = datetime(1943, 6, 1) + relativedelta(days=1) 10天前的日期是 ten_days_ago = today - relativedelta(days=10) 答案的格式为%m/%d/%Y ten_days_ago.strftime('%m/%d/%Y') Q:今天是1969年4月19日。24小时后的日期是什么?格式为MM/DD/YYYY。 今天是1969年4月19日。 today = datetime(1969, 4, 19) 24小时后的日期是 later = today + relativedelta(hours=24) 答案的格式为%m/%d/%Y later.strftime('%m/%d/%Y') Q:珍妮以为今天是2002年3月11日,但实际上今天是3月12日,晚了1天。24小时后的日期是什么?格式为MM/DD/YYYY。 如果珍妮以为今天是2002年3月11日,但实际上今天是3月12日,则今天日期为3/1/2002。 today = datetime(2002, 3, 12) 24小时后的日期是 later = today + relativedelta(hours=24) 答案的格式为%m/%d/%Y later.strftime('%m/%d/%Y') Q:珍妮出生于2001年2月的最后一天。今天是她16岁的生日。昨天的日期是什么?格式为MM/DD/YYYY。 如果珍妮出生于2001年2月的最后一天,而今天是她16岁的生日,则今天是晚了16年。 today = datetime(2001, 2, 28) + relativedelta(years=16) 昨天的日期是 yesterday = today - relativedelta(days=1) 答案的格式为%m/%d/%Y yesterday.strftime('%m/%d/%Y') Q:{question}这将输出以下内容: `02/27/1998`Python笔记本

描述

笔记本

学习如何将Python解释器与语言模型结合使用以解决任务。

程序辅助语言模型

更多示例即将推出!

上一节(高级提示)

下一节(ChatGPT)

开源、免费自动持续翻译更新关于 GPT 和 prompt 工程的资料合集并同步国内 Gitee 镜像加速访问: 关于提示词工程(prompt)的指南、论文、讲座、笔记本和资源大全(自动持续更新):

https://github.com/yunwei37/Prompt-Engineering-Guide-zh-CNhttps://gitee.com/yunwei37/Prompt-Engineering-Guide-zh-CN

关于 GPT-4 语言模型的提示(prompt)、工具和资源的中文精选列表(自动持续更新)

https://github.com/yunwei37/awesome-gpt4-zh-CNhttps://gitee.com/yunwei37/awesome-gpt4-zh-CN

使用 OpenAI API 的例子和中文指南(自动持续翻译更新 OpenAI 官方文档)

https://github.com/yunwei37/openai-cookbook-zh-cnhttps://gitee.com/yunwei37/openai-cookbook-zh-cn

这个资源库包含了为 Prompt 工程手工整理的资源中文清单,重点是生成性预训练变换器(GPT)、ChatGPT、PaLM 等(自动持续更新)

https://github.com/yunwei37/Awesome-Prompt-Engineering-ZH-CNhttps://gitee.com/yunwei37/Awesome-Prompt-Engineering-ZH-CN openai-cookbook-zh-cn

这个资源库包含了为 Prompt 工程手工整理的资源中文清单,重点是生成性预训练变换器(GPT)、ChatGPT、PaLM 等(自动持续更新)

https://github.com/yunwei37/Awesome-Prompt-Engineering-ZH-CNhttps://gitee.com/yunwei37/Awesome-Prompt-Engineering-ZH-CN


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有