prompt工程策略(一:使用 CO-STAR 框架来搭建 prompt 的结构)

2024-05-15 22:12

本文主要是介绍prompt工程策略(一:使用 CO-STAR 框架来搭建 prompt 的结构),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

原文:我是如何赢得GPT-4提示工程大赛冠军的
原文的原文: How I Won Singapore’s GPT-4 Prompt Engineering Competition


为了让 LLM 给出最优响应,为 prompt 设置有效的结构至关重要。CO-STAR 框架是一种可以方便用于设计 prompt 结构模板。该模板考虑了会影响 LLM 响应的有效性和相关性的方方面面,从而有助于得到更优的响应。
在这里插入图片描述

  • C) 上下文(Context):提供任务有关背景信息。这有助于 LLM 理解正在讨论的具体场景,从而确保其响应相关的。
  • O) 目标(Objective):定义你希望 LLM 执行的任务。明晰目标有助于 LLM 将自己响应重点放在完成具体任务上。
  • S) 风格(Style):指定你希望 LLM 使用的写作风格。这可能是一位具体名人的写作风格,也可以是某种职业专家(比如商业分析师或 CEO)的风格。这能引导 LLM 使用符合你需求的方式和词语给出响应。
  • T) 语气(Tone):设定响应的态度。这能确保 LLM 的响应符合所需的情感或情绪上下文,比如正式、幽默、善解人意等。
  • A) 受众(Audience):确定响应的目标受众。针对具体受众(比如领域专家、初学者、孩童)定制 LLM 的响应,确保其在你所需的上下文中是适当的和可被理解的。
  • R) 响应(Response):提供响应格式。这能确保 LLM 输出你的下游任务所需的格式,比如列表JSON专业报告等。对于大多数通过程序化方法将 LLM 响应用于下游任务的 LLM 应用而言,理想的输出格式是 JSON。

CO-STAR 的一个实际应用

假设你是一位社交媒体管理者,你需要帮助草拟一篇 Facebook 帖文,其內容是宣传你公司的新产品。

  • 如果不使用 CO-STAR,那么你可能会使用这样的 prompt:

Write a facebook post to advertise my company’s new product. My company’s name is Alpha and the product is called Beta, a new ultra-fast hairdryer.# 写一篇脸书帖子为我公司的新产品做广告。我公司的名字叫阿尔法,产品叫贝塔,一种新型的超快吹风机。

GPT-4 的输出如下:

Introducing the Revolutionary Beta Hairdryer by Alpha!- Say goodbye to long, tedious hair drying sessions! Alpha is proud to unveil the Beta, our latest innovation in haircare technology.- Ultra-Fast Drying: The Beta is designed to cut your drying time in half, thanks to its advanced, powerful motor. Get ready faster and enjoy more time doing what you love!
Shop Now: [Link to product page]'''
Alpha推出革命性的Beta吹风机!
-告别漫长而乏味的吹风会!阿尔法很荣幸推出Beta,这是我们在护发技术方面的最新创新。
-超快干燥:Beta的设计可将干燥时间缩短一半,这要归功于其先进、强大的电机。更快地做好准备,享受更多的时间做你喜欢的事情!
立即购物:[链接到产品页面]
'''

结果只是泛泛而谈,缺乏具体的细节和有针对性的吸引力,而这些是吸引目标受众所必需的。

  • 使用 CO-STAR 模板

CO-STAR 会提醒你将任务涉及的其它方面也整合进 prompt 之中,具体来说就是上面的简单 prompt 中缺失的 STYLE(风格)、TONE(语气)、AUDIENCE(受众) 方面:

# CONTEXT #
I want to advertise my company’s new product. My company’s name is Alpha and the product is called Beta, which is a new ultra-fast hairdryer.
# OBJECTIVE #
Create a Facebook post for me, which aims to get people to click on the product link to purchase it.
# STYLE #
Follow the writing style of successful companies that advertise similar products, such as Dyson.
# TONE #
Persuasive
# AUDIENCE #
My company’s audience profile on Facebook is typically the older generation. Tailor your post to target what this audience typically looks out for in hair products.
# RESPONSE #
The Facebook post, kept concise yet impactful.'''
#上下文#
我想为我公司的新产品做广告。我公司的名字叫阿尔法,产品叫贝塔,是一种新型的超快吹风机。
#目标#
为我创建一个Facebook帖子,旨在让人们点击产品链接进行购买。
#风格#
遵循成功公司为类似产品做广告的写作风格,比如戴森。
#语气#
有说服力的
#受众#
我公司在Facebook上的受众群通常是老一辈。定制你的帖子,以针对这些受众在头发产品中通常想要的东西。
#响应#
脸书上的帖子简洁而有影响力。
'''

通过使用 CO-STAR,GPT-4 的响应会变得明显更有针对性、效果更好:

Embrace Effortless Elegance with Alpha Beta — The Ultra-Fast Hairdryer for the Wise Generation.
Rediscover the joy of simple, effective hair care with Alpha Beta. Our latest innovation is more than just a hairdryer; it’s a promise of swift, gentle, and reliable hair styling for those who appreciate the finer things in life.
- Easy and Intuitive Use: Say goodbye to complicated gadgets. Alpha Beta is
crafted for comfort and simplicity, perfect for those who value straightforward,
hassle-free technology.
- Time-Saving Technology: We understand your time is precious. That’s why Alpha Beta cuts down drying time significantly, giving you more moments to enjoy life’s pleasures.
Make every day a good hair day with Alpha Beta. Experience the blend of sophistication and simplicity today.
[Your Product Link Here]'''
阿尔法贝塔——智慧一代的超快吹风机,让您轻松享受优雅。
用Alpha Beta重新发现简单有效的头发护理的乐趣。我们的最新创新不仅仅是吹风机;它承诺为那些欣赏生活中美好事物的人提供快速、温和、可靠的发型。
-简单直观的使用:告别复杂的小工具。Alpha Beta是
为舒适和简洁而精心打造,非常适合那些重视直率的人,
无障碍技术。
-节省时间技术:我们理解您的时间是宝贵的。这就是为什么阿尔法贝塔大大缩短了干燥时间,让你有更多的时间享受生活的乐趣。
用阿尔法贝塔让每一天都成为一个好发日。今天,体验精致与简洁的融合。
[此处为您的产品链接]
'''

CO-STAR 框架能引导用户以一种结构化的方式向 LLM 提供有关你的任务所有关键信息,从而确保得到完全符合你的需求的定制化的更优的响应。

这篇关于prompt工程策略(一:使用 CO-STAR 框架来搭建 prompt 的结构)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/993062

相关文章

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

中文分词jieba库的使用与实景应用(一)

知识星球:https://articles.zsxq.com/id_fxvgc803qmr2.html 目录 一.定义: 精确模式(默认模式): 全模式: 搜索引擎模式: paddle 模式(基于深度学习的分词模式): 二 自定义词典 三.文本解析   调整词出现的频率 四. 关键词提取 A. 基于TF-IDF算法的关键词提取 B. 基于TextRank算法的关键词提取

使用SecondaryNameNode恢复NameNode的数据

1)需求: NameNode进程挂了并且存储的数据也丢失了,如何恢复NameNode 此种方式恢复的数据可能存在小部分数据的丢失。 2)故障模拟 (1)kill -9 NameNode进程 [lytfly@hadoop102 current]$ kill -9 19886 (2)删除NameNode存储的数据(/opt/module/hadoop-3.1.4/data/tmp/dfs/na

Hadoop数据压缩使用介绍

一、压缩原则 (1)运算密集型的Job,少用压缩 (2)IO密集型的Job,多用压缩 二、压缩算法比较 三、压缩位置选择 四、压缩参数配置 1)为了支持多种压缩/解压缩算法,Hadoop引入了编码/解码器 2)要在Hadoop中启用压缩,可以配置如下参数

Makefile简明使用教程

文章目录 规则makefile文件的基本语法:加在命令前的特殊符号:.PHONY伪目标: Makefilev1 直观写法v2 加上中间过程v3 伪目标v4 变量 make 选项-f-n-C Make 是一种流行的构建工具,常用于将源代码转换成可执行文件或者其他形式的输出文件(如库文件、文档等)。Make 可以自动化地执行编译、链接等一系列操作。 规则 makefile文件

使用opencv优化图片(画面变清晰)

文章目录 需求影响照片清晰度的因素 实现降噪测试代码 锐化空间锐化Unsharp Masking频率域锐化对比测试 对比度增强常用算法对比测试 需求 对图像进行优化,使其看起来更清晰,同时保持尺寸不变,通常涉及到图像处理技术如锐化、降噪、对比度增强等 影响照片清晰度的因素 影响照片清晰度的因素有很多,主要可以从以下几个方面来分析 1. 拍摄设备 相机传感器:相机传

在JS中的设计模式的单例模式、策略模式、代理模式、原型模式浅讲

1. 单例模式(Singleton Pattern) 确保一个类只有一个实例,并提供一个全局访问点。 示例代码: class Singleton {constructor() {if (Singleton.instance) {return Singleton.instance;}Singleton.instance = this;this.data = [];}addData(value)

usaco 1.3 Mixing Milk (结构体排序 qsort) and hdu 2020(sort)

到了这题学会了结构体排序 于是回去修改了 1.2 milking cows 的算法~ 结构体排序核心: 1.结构体定义 struct Milk{int price;int milks;}milk[5000]; 2.自定义的比较函数,若返回值为正,qsort 函数判定a>b ;为负,a<b;为0,a==b; int milkcmp(const void *va,c

pdfmake生成pdf的使用

实际项目中有时会有根据填写的表单数据或者其他格式的数据,将数据自动填充到pdf文件中根据固定模板生成pdf文件的需求 文章目录 利用pdfmake生成pdf文件1.下载安装pdfmake第三方包2.封装生成pdf文件的共用配置3.生成pdf文件的文件模板内容4.调用方法生成pdf 利用pdfmake生成pdf文件 1.下载安装pdfmake第三方包 npm i pdfma

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]