logo
P
Prompt Master

Prompt 大师

掌握和 AI 对话的艺术

Classification Prompts

基础 classification prompts 与快速上手

本章整理了常见的 Classification Prompt 模板,用于测试和落地 LLM 的文本分类能力。Classification 是 NLP 中最基础也最实用的任务之一,掌握它能让你快速构建各种自动化流程。


什么是 Text Classification?

Text Classification(文本分类)是将一段文本分配到一个或多个预定义类别的任务。

┌─────────────────────────────────────────────────────────────┐
│                    Classification 流程                       │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│   输入文本          →      LLM 分析      →      输出标签     │
│                                                             │
│  "这个产品太棒了!"       理解语义            positive       │
│  "服务态度很差"          判断情感            negative       │
│  "还行吧"               匹配标签            neutral        │
│                                                             │
└─────────────────────────────────────────────────────────────┘

为什么 Classification 很重要?

应用场景具体用途业务价值
客服系统工单分类、情绪检测、优先级判断提升响应效率
内容审核垃圾信息、违规内容、敏感话题识别降低人工成本
邮件处理垃圾邮件过滤、邮件类型分类提升工作效率
用户反馈评论情感分析、NPS 预测洞察用户需求
智能路由问题类型识别、部门分发优化流程

Classification 的常见类型

分类类型标签示例典型场景
情感分析 (Sentiment)positive / negative / neutral评论分析、舆情监控
意图识别 (Intent)咨询 / 投诉 / 退款 / 购买客服机器人
主题分类 (Topic)技术 / 财经 / 体育 / 娱乐新闻分类
紧急程度 (Urgency)高 / 中 / 低工单系统
语言检测 (Language)中文 / 英文 / 日文多语言路由
垃圾检测 (Spam)spam / not_spam邮件过滤

核心 Prompt 结构

一个好的 Classification Prompt 应包含以下要素:

┌─────────────────────────────────────────────────────────────┐
│                  Classification Prompt 结构                  │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  1. 任务说明    - 清晰说明要做什么                            │
│  2. 标签空间    - 明确列出所有可能的类别                       │
│  3. 输出约束    - 指定输出格式(只输出标签 / JSON / 等)        │
│  4. 输入数据    - 待分类的文本                                │
│                                                             │
└─────────────────────────────────────────────────────────────┘

通用模板

请将以下文本分类到指定类别中。

类别选项:{label_1} / {label_2} / {label_3}

要求:
- 只输出类别名称,不要解释
- 如果无法判断,输出 "unknown"

文本:{input_text}

类别:

Quick Start:Zero-shot 分类

最简单的方式是直接告诉 LLM 要分类到哪些标签:

Prompt:

Classify the text into neutral, negative, or positive.

Text: I think the food was okay.

Sentiment:

Output:

neutral

这种方式适合:

  • 快速原型验证
  • 标签语义清晰的场景
  • 对一致性要求不高的任务

Few-shot 分类:更稳定的输出

当你需要更稳定、更可控的输出格式时,使用 Few-shot(提供 2-5 个 examples):

Prompt:

将文本分类为 positive / negative / neutral。

示例:
文本:这个产品太棒了,强烈推荐!
分类:positive

文本:服务态度极差,再也不来了。
分类:negative

文本:还行吧,一般般。
分类:neutral

现在分类:
文本:包装很精美,但味道一般。
分类:

Output:

neutral

示例 1:情感分析 (Sentiment Analysis)

最常见的分类任务,判断文本表达的情绪倾向。

场景:电商评论分析

Prompt:

你是一个情感分析专家。请分析以下商品评论的情感倾向。

分类标准:
- positive:正面评价、满意、推荐
- negative:负面评价、不满、投诉
- neutral:中性评价、陈述事实、没有明显情感

评论:快递很快,但包装有点破损,总体还可以接受。

情感:

Output:

neutral

示例 2:意图识别 (Intent Classification)

识别用户消息的意图,常用于客服机器人。

场景:智能客服

Prompt:

你是客服意图分类器。请识别用户消息的意图。

意图类型:
- 咨询:询问产品信息、使用方法
- 投诉:表达不满、要求解决问题
- 退款:申请退款、退货
- 其他:无法归类的消息

用户消息:我上周买的手机屏幕出现了裂纹,这才用了三天,你们怎么处理?

意图:

Output:

投诉

示例 3:主题分类 (Topic Classification)

将文本分类到不同的主题领域。

场景:新闻内容分类

Prompt:

请将以下新闻标题分类到对应主题。

主题选项:
- 科技:互联网、AI、手机、软件
- 财经:股市、经济、投资、企业
- 体育:赛事、运动员、比赛结果
- 娱乐:明星、影视、综艺、音乐
- 社会:民生、事件、政策

新闻标题:苹果发布 iPhone 16,搭载全新 A18 芯片

主题:

Output:

科技

示例 4:紧急程度分类 (Urgency Classification)

判断工单或请求的优先级。

场景:工单系统

Prompt:

你是工单优先级分类器。根据工单内容判断紧急程度。

紧急程度标准:
- 高:系统宕机、数据丢失、安全漏洞、影响大量用户
- 中:功能异常、性能问题、影响部分用户
- 低:界面问题、建议反馈、一般咨询

工单内容:用户反馈登录页面加载速度很慢,大约需要 10 秒以上,影响了约 20% 的用户。

紧急程度:

Output:


示例 5:多标签分类 (Multi-label Classification)

有时一段文本可能同时属于多个类别。

场景:内容标签

Prompt:

你是内容标签分类器。为以下文章添加合适的标签。

可用标签:
- 人工智能
- 编程开发
- 职业发展
- 学习方法
- 工具推荐

要求:
- 选择 1-3 个最相关的标签
- 输出格式:标签1, 标签2

文章摘要:本文介绍了如何使用 ChatGPT 提升编程效率,包括代码生成、Bug 修复、代码审查等实用技巧,帮助开发者在 AI 时代保持竞争力。

标签:

Output:

人工智能, 编程开发, 工具推荐

进阶技巧:提升分类准确性

1. 明确边界条件

分类标准:
- positive:必须有明确的正面词汇或推荐意图
- negative:必须有明确的负面词汇或投诉意图
- neutral:没有明显情感倾向,或正负参半

边界情况处理:
- "还行" "一般" "可以" → neutral
- "很好但是有点贵" → 看整体倾向

2. 添加置信度输出

请分类并给出置信度(0-100)。

输出格式:
分类:{label}
置信度:{score}

如果置信度低于 70,说明原因。

3. 使用 JSON 结构化输出

请以 JSON 格式输出分类结果:

{
  "text": "原文",
  "category": "分类",
  "confidence": 0.95,
  "reasoning": "简短理由"
}

常见问题与解决方案

问题原因解决方案
输出格式不稳定Prompt 约束不够明确明确指定"只输出标签"
标签大小写不一致没有示例约束提供 few-shot examples
边界案例分类错误标签定义模糊添加详细的分类标准
输出包含解释没有禁止解释添加"不要解释理由"
拒绝分类模型不确定添加"unknown"兜底选项

Zero-shot vs Few-shot 对比

维度Zero-shotFew-shot
Prompt 长度
输出稳定性较低较高
格式一致性可能有偏差
适用场景快速原型、简单任务生产环境、高精度需求
Token 消耗

建议

  • 开发测试阶段用 Zero-shot 快速验证
  • 生产环境用 Few-shot 保证稳定性

API 调用示例

Python (OpenAI)

from openai import OpenAI

client = OpenAI()

def classify_sentiment(text: str) -> str:
    response = client.chat.completions.create(
        model="gpt-4o",
        messages=[
            {
                "role": "system",
                "content": "你是情感分类器。只输出 positive/negative/neutral 中的一个。"
            },
            {
                "role": "user",
                "content": f"分类以下文本的情感:\n\n{text}"
            }
        ],
        temperature=0,  # 设为 0 提高一致性
        max_tokens=10
    )
    return response.choices[0].message.content.strip()

# 使用示例
result = classify_sentiment("这个产品太棒了!")
print(result)  # positive

Python (Claude)

import anthropic

client = anthropic.Anthropic()

def classify_intent(text: str) -> str:
    message = client.messages.create(
        model="claude-sonnet-4-20250514",
        max_tokens=50,
        messages=[
            {
                "role": "user",
                "content": f"""请识别以下用户消息的意图。

意图类型:咨询 / 投诉 / 退款 / 其他

只输出意图类型,不要解释。

用户消息:{text}

意图:"""
            }
        ]
    )
    return message.content[0].text.strip()

# 使用示例
result = classify_intent("我想退掉上周买的那件衣服")
print(result)  # 退款

动手练习

打开 ChatGPT 或 Claude,尝试以下练习:

练习 1:基础情感分类

将以下评论分类为 positive / negative / neutral:

1. 物流超快,第二天就到了
2. 质量太差了,用了一周就坏了
3. 价格还行,和市场价差不多
4. 客服态度很好,耐心解答了我的问题
5. 不好不坏,中规中矩

请按格式输出:
1. [标签]
2. [标签]
...

练习 2:设计自己的分类器

尝试为以下场景设计 Classification Prompt:

  • 邮件分类(工作 / 个人 / 广告 / 垃圾)
  • Bug 报告分类(UI / 功能 / 性能 / 安全)
  • 社交帖子情感(开心 / 难过 / 愤怒 / 中性)

相关阅读

深入学习 Classification 的更多技巧:


小结

Classification 是最实用的 Prompt 技能之一。记住以下要点:

  1. 明确标签空间:清晰列出所有可能的类别
  2. 约束输出格式:指定只输出标签,避免多余解释
  3. 使用 Few-shot:生产环境下用 examples 提升稳定性
  4. 处理边界情况:添加 unknown 或定义清晰的分类标准
  5. 低温度设置:API 调用时设置 temperature=0 提高一致性

掌握 Classification,你就能快速构建各种自动化分类流程!