在进行了chatgpt提示词优化之后,我得到了想要的电商评论意图信息

一、提示词工程优化指南

由于指令跟随模型的训练方式或者它们被训练的数据,有些特定的提示格式工作得特别好,更好地适应手头的任务。

openai上有一些工作得非常好的提示格式,但是这不是唯一的,大家可以随意探索不同的格式,看看哪些最适合你的任务。


1. Use the latest model,For best results, we generally recommend using the latest, most capable models.
使用最新的模型,为了获得最好的结果,我们通常推荐使用最新,最有能力的模型。

2. Put instructions at the beginning of the prompt and use ### or """ to separate the instruction and context 
将指令放在提示的开始处,并使用###或"""来分隔指令和上下文

3. Be specific, descriptive and as detailed as possible about the desired context, outcome, length, format, style, etc 
尽可能具体、描述性和详细地说明所需的上下文、结果、长度、格式、风格等

4. Articulate the desired output format through examples (example 1, example 2). 
Show, and tell - the models respond better when shown specific format requirements. This also makes it easier to programmatically parse out multiple outputs reliably.
通过示例(示例1,示例2)来表达所需的输出格式。展示和告诉 - 当显示特定的格式要求时,模型的反应会更好。这也使得以编程方式可靠地解析多个输出变得更容易。

5. Start with zero-shot, then few-shot (example), neither of them worked, then fine-tune 
首先从零样本学习,然后少样本学习,如果它们都没有起作用,那么进行微调

具体解释一下这三个名词:

- 零样本学习:在机器学习中,零样本学习是指训练模型去理解和处理在训练数据集中未曾出现过的类别。也就是说,模型需要有能力在未看过任何某类别样本的情况下,也能对这类别进行识别。

- 少样本学习:在机器学习中,少样本学习是指训练模型去处理只有很少样本的类别。也就是说,尽管训练数据可能非常有限,模型仍然需要能够准确地识别出这些类别。

- 微调:在机器学习中,微调是指在已有的预训练模型(已在大数据集上进行过训练)的基础上,对模型进行细微的调整,以适应新的、特定的任务。这通常是通过在新的任务数据上进行额外的训练来实现的。

6. Reduce “fluffy” and imprecise descriptions
减少“模糊”和不准确的描述

7. Instead of just saying what not to do, say what to do instead
不仅仅是说不做什么,而是说该做什么

8. Code Generation Specific - Use “leading words” to nudge the model toward a particular pattern
代码生成特定 - 使用“引导词”来引导模型朝特定的模式


二、提示词优化实际应用

2.1 优化chatgpt指令——当你不知道如何写提示词的时候也许有帮助

在你把任何随手写写的指令提交给 ChatGPT 之前,只需要先提交下边的这个指令:

作为自然语言处理 (NLP) 专家,您在完善大规模语言模型的提示方面拥有丰富的经验,您的任务是分析和增强用户提供的指令(prompt)。

步骤 1:仔细阅读用户提供的指令,掌握其内容和上下文。想出一个与用户目标一致的角色。

第 2 步: 识别指令中的任何上下文空白、歧义、冗余或复杂语言。

第 3 步:应用该{角色}并整合已确定的改进措施来修改指令。

第 4 步:将改进后的指令反馈给用户。优化后的指令应以 “我希望您扮演一个{角色}”开始。请记住,我们制作的指令必须从我的角度出发,即作为用户,向您的 ChatGPT 界面(GPT3.5 或 GPT4 版本)提出请求。例如,合适的提示语可以从 “您将作为建筑专家,协助我设计创新的建筑和结构 “开始。

开始时,请用户提交他们希望优化的指令。然后,有条不紊地改进用户的提示,并立即返回增强版本,无需详细说明所做的具体修改。

As an expert in natural language processing (NLP), with extensive experience in refining prompts for large-scale language models, your task is to analyze and enhance a prompt provided by the user. Step 1: Thoroughly read the prompt provided by the user to grasp its content and context. Come up with a persona that aligns with the user’s goal. Step 2: Recognize any gaps in context, ambiguities, redundancies, or complex language within the prompt. Step 3: Revise the prompt by adopting the {persona} and integrating the identified enhancements. Step 4: Deliver the improved prompt back to the user. You should start the optimized prompt with the words “I want you to act as a {persona}” . Keep in mind that the prompt we’re crafting must be composed from my perspective, as the user, making a request to you, the ChatGPT interface (either GPT3 or GPT4 version). For example, an appropriate prompt might begin with ‘You will serve as an expert architect, assisting me in designing innovative buildings and structures’. Begin the process by requesting the user to submit the prompt they’d like optimized. Then, methodically improve the user’s prompt, returning the enhanced version immediately without the need to detail the specific changes made.

(PS: 推荐大家使用英文来写 ChatGPT 指令,通常能达到更好的效果。)

当发了上边的内容之后,对chatgpt提指令,它会帮忙优化并给出优化后的结果。这里的第一种是假定我非常直白地描述我的需求,第二条是我对人工智能有一定了解之后,知道如果我使用意图来描述结果会更接近我希望的意思。


演示区 


2.2 对电商评论进行初始意图分析提示词

这是我从网上摘录的三条评论信息,接下来我将以这三条信息举例来说明,根据上边得出的提示与chatgpt对话。

评价ID:1 衣服发货很快,很快就收到货了,跟直播间描述的一样,质量很好的哦,只是颜色买的暗了点,打算回购几件其他颜色。客服小七的态度非常好,在她家买了几年衣服了,一如既往的物美价廉 性价比:高

评价ID:2 穿第一天袖口轻微起球,第二天俩袖口都有起球,脱下来一看衣服上全起球了。毛衣洗两次起球我能理解,这个内搭新买的洗了穿两天全是起的球球,二十块钱也是钱啊,什么品质怎么不保证一下呀。问客服只会搪塞,只是一次糟糕的购物体验

评价ID:3 宝贝拿到了,谢谢客服小姐姐的耐心解答,尺码很合适挺标准的,包装很精致瞬间有种大牌的感觉,打开包装,衣服的颜色很纯,和图片上一样,很满意!!!布料摸着还挺舒服,非常喜欢,觉得性价比蛮高的,如果有什么优惠活动别忘了通知我呀!!


演示区 

 当然,这种文本的形式不利于我们后续的数据分析,我们可以对它提要求,比如返回json数据格式


2.3 迭代后的意图分析提示词

在经过多次迭代优化之后,如下文所示:  


演示区 

我希望你扮演一个人工智能分析师,帮助我对评论进行意图分析,并返回json格式的中文内容,json的内容即评价ID,意图,意图情感,意图分类,意图分类明细,说明。每个json只放一个意图,如果有多的意图,分成多条返回

【评价ID】返回评价ID字段
【意图】只取这些范围:1.营销体验 2.服务 3.开单发货 4.物流配送 5.安装服务 6.商品体验。
【意图情感】分成正面评价、负面评价、中性评价。
【意图分类】意图分类请根据已有大模型数据归类
【意图分类明细】要总结评价信息,每个意图分类明细根据积极和消极只有两种可能。
举例:
{
  "意图": "物流配送",
  "意图分类": "物流时效",
  "意图分类明细": "发货速度快"
}
{
  "意图": "物流配送",
  "意图分类": "物流时效",
  "意图分类明细": "发货速度慢"
}
【说明】摘录具体的评价内容

'''
评价ID:1
衣服发货很快,很快就收到货了,跟直播间描述的一样,质量很好的哦,只是颜色买的暗了点,打算回购几件其他颜色。客服小七的态度非常好,在她家买了几年衣服了,一如既往的物美价廉 性价比:高
评价ID:2
穿第一天袖口轻微起球,第二天俩袖口都有起球,脱下来一看衣服上全起球了。毛衣洗两次起球我能理解,这个内搭新买的洗了穿两天全是起的球球,二十块钱也是钱啊,什么品质怎么不保证一下呀。问客服只会搪塞,只是一次糟糕的购物体验
评价ID:3
宝贝拿到了,谢谢客服小姐姐的耐心解答,尺码很合适挺标准的,包装很精致瞬间有种大牌的感觉,打开包装,衣服的颜色很纯,和图片上一样,很满意!!!布料摸着还挺舒服,非常喜欢,觉得性价比蛮高的,如果有什么优惠活动别忘了通知我呀!!
'''
 

 chatgpt返回了下边json格式的内容

{
  "评价ID": "1",
  "意图": "开单发货",
  "意图情感": "正面评价",
  "意图分类": "发货速度",
  "意图分类明细": "发货速度快",
  "说明": "衣服发货很快,很快就收到货了"
},
{
  "评价ID": "1",
  "意图": "商品体验",
  "意图情感": "正面评价",
  "意图分类": "商品质量",
  "意图分类明细": "商品质量好",
  "说明": "跟直播间描述的一样,质量很好的哦"
},
{
  "评价ID": "1",
  "意图": "服务",
  "意图情感": "正面评价",
  "意图分类": "客服服务",
  "意图分类明细": "客服态度好",
  "说明": "客服小七的态度非常好"
},
{
  "评价ID": "2",
  "意图": "商品体验",
  "意图情感": "负面评价",
  "意图分类": "商品质量",
  "意图分类明细": "商品质量差",
  "说明": "穿第一天袖口轻微起球,第二天俩袖口都有起球,脱下来一看衣服上全起球了"
},
{
  "评价ID": "2",
  "意图": "服务",
  "意图情感": "负面评价",
  "意图分类": "客服服务",
  "意图分类明细": "客服服务差",
  "说明": "问客服只会搪塞"
},
{
  "评价ID": "3",
  "意图": "服务",
  "意图情感": "正面评价",
  "意图分类": "客服服务",
  "意图分类明细": "客服服务好",
  "说明": "谢谢客服小姐姐的耐心解答"
},
{
  "评价ID": "3",
  "意图": "商品体验",
  "意图情感": "正面评价",
  "意图分类": "商品质量",
  "意图分类明细": "商品质量好",
  "说明": "宝贝拿到了,衣服的颜色很纯,和图片上一样,很满意!!!布料摸着还挺舒服"
}

这已经接近我希望得到的结果了,如果我觉得不准确,还可以跟他提出我新的要求


当然这不是最完美的结果,我的描述还显得非常冗余,gpt4的token成本高昂,这样是不划算的,之后还会继续优化,也会继续学习提示词工程优化的思路。

参考文档:

Best practices for prompt engineering with OpenAI API | OpenAI Help Center

瞬间优化 ChatGPT 指令的 2 种方法 - 我的AI力量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值