GPT-4提示词冠军如何写 prompt:CO-STAR 框架、文本分段、系统提示

CO-STAR框架

GPT-4提示词冠军如何写 prompt:CO-STAR 框架、文本分段、系统提示_第1张图片

CO-STAR框架用来构建提示词(prompt),分隔符对提示词进行文本分段。

  • © 上下文:为任务提供背景信息通过为大语言模型(LLM)提供详细的背景信息,可以帮助它精确理解讨论的具体场景,确保提供的反馈具有相关性。
  • (O) 目标:明确你要求大语言模型完成的任务清晰地界定任务目标,可以使大语言模型更专注地调整其回应,以实现这一具体目标。
  • (S) 风格:明确你期望的写作风格你可以指定一个特定的著名人物或某个行业专家的写作风格,如商业分析师或 CEO。这将指导大语言模型以一种符合你需求的方式和词汇选择进行回应。
  • (T) 语气:设置回应的情感调设定适当的语气,确保大语言模型的回应能够与预期的情感或情绪背景相协调。可能的语气包括正式、幽默、富有同情心等。
  • (A) 受众:识别目标受众针对特定受众定制大语言模型的回应,无论是领域内的专家、初学者还是儿童,都能确保内容在特定上下文中适当且容易理解。
  • ® 响应:规定输出的格式确定输出格式是为了确保大语言模型按照你的具体需求进行输出,便于执行下游任务。常见的格式包括列表、JSON 格式的数据、专业报告等。对于大部分需要程序化处理大语言模型输出的应用来说,JSON 格式是理想的选择。

示例:

# CONTEXT(上下文) # 我想推广公司的新产品。我的公司名为 Alpha,新产品名为 Beta,是一款新型超快速吹风机。
# OBJECTIVE(目标) # 帮我创建一条 Facebook 帖子,目的是吸引人们点击产品链接进行购买。
# STYLE(风格) # 效仿 Dyson戴森 等成功的公司的宣传风格,它们在推广类似产品时的文案风格。
# TONE(语调) # 说服性
# AUDIENCE(受众) # 我们公司在 Facebook 上的主要受众是老年人。请针对该群体在选择护发产品时的典型关注点来定制帖子。
# RESPONSE(响应) # Facebook 上的帖子,简明扼要,但又富有感染力。

分隔符

任务越复杂,合理使用分隔符进行文本分段对模型的反应影响越明显。分隔符可以是任何不常见组合的特殊字符序列,如:

  • ###
  • ===
  • >>>
  • xml标签

选择哪种特殊字符并不重要,关键是这些字符足够独特,使得模型能将其识别为分隔符,而非常规标点符号。

示例:

<<>> 中每段对话的情感分类为 "积极 ""消极"。给出情感分类,无需任何其他前言文本。
###
对话示例
[Agent]: 早上好,今天我能为您做些什么? [Customer]: 这个产品真差劲,一点都不符合广告宣传! [Customer]: 我非常不满,要求全额退款。 
[Agent]: 早安,我今天怎么为您服务? [Customer]: 嗨,我只想说我真的很喜欢你们的产品。它超出了我的预期! 
###
输出示例 
负面
正面
###
<<< [Agent]: 您好!欢迎使用我们的客服。今天有什么可以帮到您的? [Customer]: 嗨,我只想让你知道我收到了订单,它非常棒! [Agent]: 那太好了!我们很高兴您对购买感到满意。还有其他需要帮助的吗? [Customer]: 不,就这些了。只是想表达一下我的好评。感谢您的优质服务! 
[Agent]: 您好,感谢您联系我们。今天有什么可以帮助您的? [Customer]: 我对最近的购买非常不满。这完全不是我所期待的。 [Agent]: 我很抱歉听到您有这样的体验。您能否提供更多细节,以便我为您提供帮助? [Customer]: 产品质量不佳,而且送达晚了。 >>> 

也可以使用xml标签对提示词进行描述和分段,XML 标签的名词最好与说明中描述的单词相同。

系统提示/自定义指令

  • “系统提示”和“系统消息”是通过 Chat Completions API 编程方式交互时使用的术语。
  • “自定义指令”则是在通过 https://chat.openai.com/ 的用户界面与 ChatGPT 交互时使用的术语。

这三个术语表达的是相同的概念。

系统提示(System Prompts)是一种附加提示,您可以在其中提供有关 LLM 行为方式的指示。它被认为是额外的,因为它不属于您对 LLM 的正常提示。相反,系统提示会附加到您在聊天中发出的每个新提示的开头。

示例:

您将使用以下文本回答问题:[插入文本]。您将使用以下格式的 JSON 对象进行回复:{"Question": "Answer"}。如果文本不包含足够的信息来回答问题,请不要编造信息并将答案设为“NA”。您只能回答与 [插入范围] 相关的问题。切勿回答与年龄、性别和宗教等人口统计信息相关的任何问题。

GPT-4提示词冠军如何写 prompt:CO-STAR 框架、文本分段、系统提示_第2张图片

仅使用 LLM 分析数据集,无需插件或代码

LLM不擅长的数据集分析类型

你可能已经知道,LLM 在执行精确数学计算的能力方面有限,因此不适合需要对数据集进行精确定量分析的任务,例如:

  • **描述统计:**通过平均值或方差等度量,定量汇总数值列。
  • **相关性分析:**获得列之间的精确相关系数 。
  • **统计分析:**例如假设检验,以确定数据点组之间是否存在统计上的显著差异。
  • **机器学习:**对数据集执行预测模型,例如使用线性回归、梯度提升树或神经网络。
LLM 擅长的数据集分析类型

LLM擅长识别模式和趋势。这种能力源于他们对各种各样、大量数据的广泛训练,使他们能够辨别出可能不会立即显现的复杂模式。

这使得它们非常适合基于数据集内的模式查找的任务,例如:

  • **异常检测:**根据一个或多个列值识别偏离常态的异常数据点。
  • **聚类:**对跨列具有相似特征的数据点进行分组。
  • **跨列关系:**识别跨列的组合趋势。
  • **文本分析(**针对基于文本的列):基于主题或情感的分类。
  • 趋势分析(针对具有时间方面的数据集):识别时间列内的模式、季节性变化或趋势。

对于这种基于模式的任务,单独使用 LLM 实际上可能比使用代码在更短的时间内产生更好的结果!

示例

假设您在公司的营销团队工作。您的任务是利用这组客户信息来指导营销工作。这是一项两步任务:首先,使用数据集生成有意义的客户细分。接下来,针对每个细分市场提出最佳营销思路。现在这是一个实际的业务问题,法学硕士的模式发现(针对第 1 步)能力可以真正发挥其优势。

让我们使用 4 种提示工程技术为这项任务设计一个提示,如下所示:

  1. 将复杂的任务分解为简单的步骤

    大语言模型(LLM)擅长处理简单的任务,对于复杂的任务则表现不佳。因此,在面对复杂任务时,把它分解成一步步简单的指令是至关重要的。这种方法的核心思想是,明确告知 LLM 你自己执行该任务时会采取的每一个步骤。

    这样的分步指导,比起直接要求 LLM「对客户进行分组并提出营销策略」的方式,能显著提高其输出的准确性。

  2. 引用每个步骤的中间输出。

    在提供步骤时,我们会用大写字母标记每个步骤的输出,例如数据聚类(CLUSTERS)、聚类描述(CLUSTER_INFORMATION)、聚类命名(CLUSTER_NAME)、营销策略(MARKETING_IDEAS)和策略解释(RATIONALE)。这样做是为了区分指令中的变量名和其他文本,方便后续引用这些中间输出。

  3. 格式化 LLM 的响应。

    此处我们请求一个 Markdown 格式的报告,以增强响应的可读性和结构性。利用中间步骤的变量名,可以明确报告的结构。

    此外,你还可以随后让 ChatGPT 将报告以可下载文件形式提供,便于你在编写最终报告时参考使用。

  4. 将指令与数据集分离。

    在我们的首个提示中,你会发现我们并没有直接将数据集交给大语言模型(LLM)。反而,提示只给出了数据集分析的任务指令,并在底部添加了这样的话:

    # START ANALYSIS # 如果你明白了,请向我请求数据集。

    随后 ChatGPT 表示它已理解,并在下一个提示中,我们通过 CSV 字符串的形式将数据集传递给它。

    GPT-4提示词冠军如何写 prompt:CO-STAR 框架、文本分段、系统提示_第3张图片

    这是因为LLM的上下文窗口是有限制的。结合了指令和数据的长提示可能会超出此限制,从而导致截断和信息丢失

    更复杂的答案是,将指令和数据集分开有助于 LLM 清晰地理解两者,从而降低遗漏信息的可能性。您可能遇到过这样的情况:LLM“意外忘记”了您在较长的提示中给出的某条指令 — 例如,如果您要求 100 字的回复,而 LLM 给您的回复是一段较长的段落。通过先接收指令,然后再接收指令所针对的数据集,LLM 可以先消化它应该做什么,然后再对接下来提供的数据集执行它。

    但请注意,这种指令和数据集的分离只能通过聊天 LLM 实现,因为它们保留了对话记忆,而完成 LLM API 则没有。

系统提示:
我希望你扮演数据科学家的角色来分析数据集。不要编造数据集中不存在的信息。对于我提出的每个分析要求,提供确切且确定的答案,不要提供代码或指导在其他平台上进行分析的方法。
提示:
# CONTEXT #
我销售葡萄酒。我手头有一个客户信息数据集:[出生年份,婚姻状况,收入,子女数量,上次购买至今天数,消费金额]#############
# OBJECTIVE #
我希望你利用这个数据集将我的客户分组,并为每个群组制定营销策略。请按照这个步骤操作,不要使用编码: 
1. 数据聚类(CLUSTERS):利用数据集的各列特征,将数据行进行聚类,确保同一聚类中的客户在这些特征上相似,而不同聚类的客户则明显不同。每条数据只能属于一个聚类。对于每个聚类, 
2. 聚类描述(CLUSTER_INFORMATION):描述聚类的特点。 
3. 聚类命名(CLUSTER_NAME):根据聚类描述,为这个客户群体起一个简洁的名字。 
4. 营销策略(MARKETING_IDEAS):为这个客户群体制定营销策略。 
5. 策略解释(RATIONALE):说明为什么这些营销策略对这个客户群体有效。
#############
# STYLE #
商业分析报告
#############
# TONE #
专业、技术性
#############
# AUDIENCE #
我的商业伙伴们。让他们相信你的营销策略是深思熟虑的,并且有充分的数据支持。
#############
# RESPONSE: MARKDOWN REPORT #
— 客户群组:[CLUSTER_NAME] 
— 群组档案:[CLUSTER_INFORMATION] 
— 营销策略:[MARKETING_IDEAS] 
— 理由:[RATIONALE]
最后提供一个表格,列出每个群组中的行号,以佐证你的分析。表头如下:[[CLUSTER_NAME], 行号列表]#############
# START ANALYSIS #
如果你已经明白,请向我索要我的数据集。

示例

# Role:Facebook 推广文案专家

## Profile:
- Language: 中文
- Description: 精通 Facebook 推广策略,尤其擅长为老年受众撰写有吸引力的推广文案,熟悉 Dyson 等成功公司在类似产品推广时的风格。

### Skill:
1. 精准把握老年受众的心理和需求
2. 熟练运用说服性语言技巧
3. 擅长借鉴成功公司的推广风格
4. 能够突出产品优势和特点
5. 精通 Facebook 平台的推广规则和特点

## Goals:
1. 吸引老年受众点击产品链接进行购买
2. 突出新型超快速吹风机 Beta 的优势
3. 参照 Dyson 等成功公司的宣传风格
4. 针对老年受众在选择护发产品时的关注点定制文案
5. 保持帖子简洁而有影响力

## Constrains:
1. 严格遵守 Facebook 的推广规则
2. 语言要简洁明了,避免复杂的词汇和句式
3. 不能夸大产品效果,保证信息真实可靠
4. 要充分考虑老年受众的阅读习惯和接受能力
5. 突出公司名为 Alpha

## OutputFormat:
1. 文案内容简洁,不超过 3002. 包含清晰的产品购买链接
3. 使用大字体和醒目的标题
4. 配以相关的产品图片或视频(如有)
5. 适当使用表情符号增加亲和力

## Workflow:
1. First, 研究 Dyson 等成功公司类似产品的推广文案风格和特点
2. Then, 分析老年受众在选择护发产品时的关注点,如对头发损伤小、操作简单等
3. Next, 突出新型超快速吹风机 Beta 的优势,如快速干发、护发功能等
4. Also, 结合公司名 Alpha,强调品牌信誉和售后服务
5. Finally, 精心编排文案,添加购买链接、表情符号等,使其简洁而有吸引力

## Initialization:
作为一名 Facebook 推广文案专家,我会严格遵循您的要求,为您精心创作推广文案。首先,我会对相关成功案例进行研究;然后,深入分析老年受众的需求;接着,突出产品优势和品牌特点;之后,精心编排文案;最后,添加购买链接和表情符号,以达到吸引老年受众购买的目的。

你可能感兴趣的:(prompt,数据库)