PROMPT1. 情感倾向标注
提示词工程题 · 答案是一段提示词(Prompt),由大模型评测,不含可运行代码。
题目描述
作为一名产品运营同学,后台每天会收到成千上万条用户反馈。由于数据量巨大, 需要一个模型对每一条反馈进行情感倾向自动化打标,共分成三类:
- POS(Positive):正面
- NEG(Negative):负面
- NEU(Neutral):中性
你需要编写一个 Prompt,使得大模型可以处理这个问题。
输入格式
一段自然语言描述的用户反馈。
输出格式
{"feeling": "String,对应的情感"}
示例
示例 1
输入:
这家餐厅太好吃了,服务也很棒,下次还会来。
输出:
{"feeling": "POS"}
说明: 明显的夸奖与推荐,判为正面。
示例 2
输入:
我的订单号是 20240501,请帮我查询一下物流状态。
输出:
{"feeling": "NEU"}
说明: 只是查询、陈述事实,没有情感色彩,判为中性。
示例 3
输入:
I really want to like this phone, but the battery life makes it unusable.
输出:
{"feeling": "NEG"}
说明: 虽然开头有正面倾向,但整体是抱怨,以整体语气为准,判为负面。
提示词方案
你是一名严谨的产品运营数据分析助手。请判断下面这条用户反馈的情感倾向,
并且只输出一个 JSON 对象。
# 分类标准
- POS:正面情感,包括夸奖、满意、推荐、感谢。
- NEG:负面情感,包括抱怨、失望、愤怒、投诉,以及「想喜欢但做不到」这类整体消极的表达。
- NEU:中性,包括单纯的事实陈述、查询,或没有明显情感色彩的描述。
# 输出格式(严格 JSON,不要 Markdown 代码块,不要任何解释)
{"feeling": "POS" 或 "NEG" 或 "NEU"}
# 规则
1. feeling 只能是 POS、NEG、NEU 三者之一,不要自造标签。
2. 反馈里的订单号、日期、金额等与情感无关的信息,忽略即可。
3. 一句话里既有正面又有负面时,以整体语气为准(负面通常压过正面)。
4. 只输出 JSON 本身。
# 用户反馈
{{input}}
设计思路
第一步:明确任务边界
模型最容易犯的错不是「判错」,而是输出格式跑偏 ——
多写一句解释、套一个 Markdown 代码块、或者把标签写成 Positive。
所以提示词要先给出唯一的输出契约:一个 JSON 对象,字段名 feeling,
取值只有三个枚举。
第二步:给出可操作的分类标准
只写「POS / NEG / NEU」不够,模型对边界的理解因人而异。 把每一类的典型场景列出来(夸奖→POS、查询→NEU、投诉→NEG), 模型才有稳定的判据。
第三步:处理两类难例
- 混合情感(示例 3):「想喜欢但电池不行」同时含正负, 必须显式规定「以整体语气为准」,并指出负面通常压过正面。
- 噪声信息:订单号、日期等与情感无关,要明确告知「忽略」。
第四步:用占位符把输入放最后
把用户反馈放在提示词末尾,并用 {{input}} 占位,
既方便替换,也让模型清楚「哪一段才是待处理的数据」。
易错点总结
1. 没规定输出格式
模型默认会写解释、加代码块。必须在提示词里明确「只输出 JSON,不要代码块」。
2. 标签不统一
一会儿 POS、一会儿 Positive、一会儿 positive,评测会判不通过。
把取值写死在提示词里。
3. 忽略中英混排
示例 3 是英文。分类标准要用中英都能理解的方式描述, 不要只给中文关键词。
扩展思考
- 若要扩展到打分(1~5 星),只需把枚举换成区间并给出锚点描述。
- 面对长文本,可以先让模型抽取「关键句」再分类,减少噪声干扰。