授权与合规声明
本文全部操作对象均为自建隔离环境与已获授权的目标,涉及安全测试或以他人系统为对象的环节,必须以取得合法授权为前提。未经授权的测试违反《中华人民共和国网络安全法》与《刑法》相关条款,须承担相应法律责任。本文只讲技术工程实践,不含任何攻击步骤、利用载荷与绕过手法,请勿将文中任何内容用于非自有、未获授权的系统。
第1章 自有数据标注的痛点
很多团队手里有数据,却卡在"没人标、标不动"上。无论是训练集构造、内容分级,还是检索语料清洗,最终都要落到一条条样本被打上标签这件事上。一旦数据量上来,人工标注的问题就集中爆发了。
1.1 人工贵且慢
请人标、自己标、实习生标,本质上都是用时间换标签。样本规模到几万条之后,标一遍的周期往往按周算,返工还要再走一轮。更麻烦的是,业务一旦调整标签体系,历史数据需要重标,成本会二次发生。
1.2 标注标准不一致
同一个样本交给两个人,常常得到不同结论。不是谁对谁错,而是"判断边界"没有写清楚。比如一条评论算不算"负面",取决于对程度的把握。这种漂移在跨人、跨天、跨批次时尤其明显,结果就是标注一致性(inter-annotator agreement)往下掉,下游模型学到的信号也跟着变糊。
核心判断:标注的价值不在"快标完",而在"标得稳、可复标"。降本是结果,不是把活全丢给模型。
第2章 LLM 标注适合哪些任务
LLM 不是万能标工,它擅长"有清晰定义、能写成指令"的任务,不擅长"需要强领域事实、或边界天然模糊"的任务。先想清楚任务类型,再决定要不要上模型。
2.1 文本分类 / 打标签
给一段文本判类别、贴主题标签、做情感极性判断,是 LLM 最稳的场景。只要标签体系固定、定义清楚,模型输出的一致性通常能到可用水位。
2.2 实体抽取
从合同、工单、简历里抽出人名、机构、时间、金额等实体,LLM 配合结构化输出(JSON / 函数调用)效果不错。难点在嵌套实体和长尾类型,需要规则补一层。
2.3 摘要 / 改写
把长文档压成要点、把口语转成规范表述,这类"生成式标注"人工成本最高,LLM 替得最值。但要注意生成内容可能引入幻觉,必须留人工核对环节。
2.4 质检(找错标/漏标)
拿一份已标注数据,让模型当" reviewer "复查:这条标得对不对、有没有漏标。质检是 LLM 性价比最高的用法之一,因为它只做判断、不做全量生产。
下面这张表给出任务到适合度的快速对照:
| 任务类型 | LLM 适合度 | 说明 |
|---|---|---|
| 文本分类 | 高 | 标签固定时一致性好 |
| 实体抽取 | 中高 | 需结构化输出 + 规则补 |
| 摘要改写 | 中 | 易幻觉,需人工核对 |
| 错标漏标质检 | 高 | 只判断不生产,性价比好 |
| 强事实核查 | 低 | 模型易编,需权威源兜底 |
第3章 流水线怎么搭
标得动的关键是搭一条可重复的流水线,而不是每次都临时写 prompt。
3.1 采样与分桶
别一上来全量跑。先按业务重要性、难度、类别分布做分层采样:核心类别多采、长尾类别补采。把数据分桶后,先在小桶上验证,再放大。这样既能控成本,也能早暴露标准问题。
3.2 prompt 模板化
把标注指令、标签定义、输出格式全部模板化,变量只留"待标样本"。模板固定后,换模型、换批次都只用同一份,标准才不会漂移。
task:文本分类definition:依据下方标签体系判断样本类别labels:[正面,中性,负面]output_format:jsonrules:-只输出一个类别-不确定时标中性并给 reasonsample:"{待标样本}"3.3 模型产出 → 规则校验 → 人工抽检
模型不是终点。它的输出先过一道规则校验(格式、值域、必填项),再按比例送人工抽检。只有抽检通过的批次,才允许落库进入训练集。
| 阶段 | 输入 | 动作 | 产出 |
|---|---|---|---|
| 采样分桶 | 原始数据 | 分层抽取 | 待标样本集 |
| 模型标注 | 样本 + prompt | 调用 LLM | 原始标签 |
| 规则校验 | 原始标签 | 格式 / 值域检查 | 通过 / 打回 |
| 人工抽检 | 通过样本 | 按比例复核 | 置信结论 |
| 落库 | 抽检通过 | 写入数据集 | 可用训练数据 |
第4章 一致性怎么保
工降本的前提是"标得准"。一致性靠三件事兜住。
4.1 小样本 few-shot 锚定标准
在 prompt 里放 5 到 10 条带标准答案的示例,比写一大段描述更管用。示例就是"标准本身",模型照着学边界。示例要覆盖典型难例和边界 case。
示例1: 样本:这服务太慢了,再也不来了 标签:负面 理由:明确表达不满与拒绝 示例2: 样本:还行吧,没什么特别 标签:中性 理由:无强烈倾向4.2 多模型投票 / 规则兜底
对关键样本,可以让两个模型独立标,结果不一致就交给人工。规则层再做兜底,比如某些关键词命中直接定类。投票不追求多数服从,而是用"不一致即送审"来抓不确定。
4.3 不一致样本回流人工
凡模型间分歧、或规则判不了的,统一回流到人工队列。人工结论再沉淀为新 few-shot 示例,标准就在这一步被不断加固。
第5章 成本与质量权衡
LLM 标注不是越用越多就好,核心是抽检比例的取舍。
5.1 抽检比例的取舍
抽检比例升高,成本升、质量稳;比例压低,省钱但风险累积。下面比例是示例,需按业务标定,高风险场景应上调:
| 场景 | 示例抽检比例 | 说明 |
|---|---|---|
| 内部低优数据 | 示例值,需按业务标定 | 可接受较低抽检 |
| 训练集主数据 | 示例值,需按业务标定 | 建议中高抽检 |
| 风控 / 合规数据 | 示例值,需按业务标定 | 建议高抽检或全检 |
比例数字均为示例,需按业务标定,本文不编造具体金额与确定值。
5.2 批量调用代码
下面给出最小可用骨架:读样本、调模型、规则打分、送人工 reviewer 落库。代码待验证,变量用 sample / label / score / reviewer。
importjsondefannotate(sample,prompt_template):# 组装 prompt,调用模型拿回原始标签raw=call_llm(prompt_template.format(sample=sample))label,score=parse_output(raw)returnlabel,scoredefvalidate(label):# 规则校验:值域与必填检查,返回是否通过allowed={"正面","中性","负面"}returnlabelinalloweddefrun(samples,prompt_template,reviewer):results=[]forsampleinsamples:label,score=annotate(sample,prompt_template)ifnotvalidate(label):reviewer.review(sample,label)# 打回人工continueifscore<reviewer.threshold:reviewer.review(sample,label)# 低置信送审continueresults.append({"sample":sample,"label":label,"score":score})save_to_db(results)# 抽检通过后落库returnresults标注 prompt 模板库:把第3、4章的 prompt 与校验规则整理成可复用模板。放在资料包里,扫码即可获取:
第6章 质检闭环:标完再用
标注不是一次性的,标出来的数据要反哺下一次生产。
6.1 用标注结果训练/微调小模型
LLM 标出的数据,清洗后可以作为小模型的训练集。分类、实体这类任务,小模型推理成本远低于大模型,适合固定场景的常态化标注。
6.2 用模型反查人工标错的样本
把模型标的结果和人工标的结果做 diff,分歧处往往藏着人工标错或标准不清。定期跑这个闭环,能持续揪出历史错标,让数据集越用越干净。
第7章 三个坑
7.1 标注标准漂移
prompt 改一个词,标准可能就变了,历史数据和新数据不再可比。解法是对 prompt 做版本化,每次变更记录 diff,重标时锁定对应版本。
7.2 模型"偷懒"输出
长文本时,模型可能省略、合并、输出不规范。要用强约束的输出格式(JSON schema / 固定字段)把结构钉死,并在规则层拒绝不合格式的样本。
7.3 成本失控
一激动全量都走大模型,账单先炸。正确节奏是:先小批量验证一致性和抽检结论,确认水位后再放量,并优先把稳定部分迁移到小模型。
标注-质检流水线架构图:把第3章的 pipeline 整理成一张总览。放在资料包里,扫码即可获取:
附表 A:本文引用事实与出处对照表
| 事实 | 出处 | 本文位置 |
|---|---|---|
| LLM 可用于分类、实体、摘要、质检等半自动标注 | 通用工程共识 | 第2章 |
| 标注一致性需靠 few-shot 与人工抽检兜底 | 通用工程共识 | 第4章 |
| 抽检比例影响成本与质量,需按业务标定 | 通用工程共识,比例示例非确定值 | 第5章 |
| 截至 2026-10-25,LLM 标注为业界常见数据工程实践 | 通用工程共识 | 全文 |
| 模型输出可能产生幻觉,需人工核对 | 通用工程共识 | 第2、4章 |
附表 B:术语速查表
| 术语 | 含义 |
|---|---|
| few-shot | 在 prompt 中放少量带答案示例来锚定标准 |
| 抽检 | 从模型产出中按比例抽取送人工复核 |
| 规则校验 | 用格式 / 值域等硬规则过滤模型输出 |
| 一致性 | 不同标注者对同一样本结论的稳定程度 |
| 回流 | 将不确定样本送回人工队列并沉淀为示例 |
| 落库 | 抽检通过后写入可用数据集 |
写在最后:这篇用到的资料
写这篇文章时,整理了一套 LLM 数据工程的方法,顺手也整理了几份配套的东西:
- 大模型学习路线:从基础到落地的整套路径图
- Claude Skills 全指南:知识库搭建与技能编排实战
- LangGraph+MCP 智能体实战视频:从 0 到 1 跑通一个智能体
资料是我自己整理的,放在下面这个码上,扫码即可获取:
资料较多,建议先看「全套 AGI 大模型学习路线」,再挑一个实战项目跟练。