AI概念与词典

自然语言处理(NLP)是什么?任务地图、LLM 关系与项目方法

NLP不等于大语言模型。本文用输入输出任务地图解释分类、抽取、检索、生成与语音,说明中文数据问题,并给出从任务定义到生产监控的八步项目方法。

自然语言处理从文本语音输入到分类标注、信息抽取、检索问答、转换和生成的任务地图
本页目录
  1. NLP、NLU、NLG、语言模型和 LLM 有什么区别
  2. 一张任务表看懂 NLP 到底在做什么
  3. 规则、传统模型、预训练模型还是 LLM?
  4. 中文 NLP 为什么不能照搬英文流程
  5. 字符、词和 token 是三个层次
  6. 分词不是唯一正确答案
  7. 简繁、异体、专名、数字与混合语言要单独测试
  8. 中文文本预处理为什么必须写成版本化合同?
  9. 八步把 NLP 概念变成可验收项目
  10. 第一步:把“理解文本”改写成可判定任务
  11. 第二步:建立数据声明和授权记录
  12. 数据与标注合同应该写清哪些边界?
  13. 第三步:先做最简单基线
  14. 第四步:按来源和时间切分数据
  15. 第五步:选择与错误成本匹配的指标
  16. 如何把离线指标映射到真实错误成本?
  17. 第六步:做切片和反事实错误分析
  18. 第七步:在近似部署条件下测试完整系统
  19. LLM 与 RAG 系统为什么必须分层验收?
  20. 第八步:灰度、监控和可回滚
  21. 上线后怎样发现语言分布和业务规则已经变了?
  22. 如何处理 NLP 项目中的低置信、冲突和无答案?
  23. 一份可复制的 NLP 项目卡
  24. 常见问题
  25. NLP 已经被大模型取代了吗?
  26. 学习 NLP 是否必须先学深度学习?
  27. 中文 NLP 一定要先分词吗?
  28. 一个公开 benchmark 分数能证明系统可上线吗?
  29. 本次修订与资料说明

直接答案:自然语言处理(Natural Language Processing,NLP)是研究和构建“让计算机处理、分析、理解与生成人类语言”的方法与系统。它覆盖文本和语音,从分词、分类、信息抽取、检索、翻译、摘要到对话生成。大语言模型(LLM)是 NLP 中基于大规模预训练语言模型的一类技术,不等于全部 NLP,也不能替代任务定义、数据治理、评价、错误分析和生产监控。

自然语言处理从文本语音输入到分类标注、信息抽取、检索问答、转换和生成的任务地图
NLP 是一组语言任务和工程方法,不是单一模型。先确定输入、输出和错误成本,再选择规则、任务模型或大语言模型。

本文面向希望读懂 NLP 概念或启动中文文本项目的读者。主要参考 Stanford 2026 年版《Speech and Language Processing》在线手稿、Unicode 规范、原始论文和公开评测框架;资料复核日期为 2026 年 7 月 19 日

NLP、NLU、NLG、语言模型和 LLM 有什么区别

术语 范围 例子 容易混淆的地方
NLP 计算机处理自然语言的总领域 分词、分类、抽取、翻译、问答、生成、语音 不是某个模型或 API 的名称
NLU 强调从语言中识别结构、意图和含义 意图分类、实体识别、语义解析、阅读理解 “理解”必须落到可评价任务,不能只靠主观感觉
NLG 强调生成语言输出 摘要、翻译、回答、改写、对话 流畅不代表事实正确、完整或符合要求
语言模型 对语言序列概率或下一个 token 等目标建模 n-gram、神经语言模型、预训练 Transformer 语言模型可以服务多个 NLP 任务,但不是整个系统
LLM 大规模参数和数据训练的语言模型类别 生成、分类、抽取、工具调用的基础模型 参数规模不是任务质量、安全或可部署性的充分条件
计算语言学 语言学与计算方法的交叉研究领域 句法、语义、语用、语料与语言建模 与 NLP 高度重叠,但研究问题不只限于产品实现
自然语言处理NLP、NLU、NLG、语言模型与大语言模型LLM之间的范围和任务关系
NLP 是总领域;NLU 与 NLG 强调不同任务侧面,语言模型可以服务多类任务,LLM 则只是语言模型中的一类。

Google Cloud 的中文说明也把 NLP 分为识别/分析与生成等任务,并列出实体、情感、分类和语法分析。它是厂商教育页面,不应被当作唯一学术定义;本文使用它来说明当前开发者常见任务表达。

一张任务表看懂 NLP 到底在做什么

任务 输入 → 输出 常用指标 高风险错误
文本分类 一段文本 → 一个或多个标签 准确率、宏/微平均 F1、PR-AUC 类别不平衡时只看准确率;标签定义漂移
序列标注/实体识别 token 序列 → 每个位置的标签或实体跨度 实体级 precision、recall、F1 只算 token 级分数,掩盖边界错误
信息抽取 文档 → 实体、关系、事件、字段 字段级精确率/召回率、完整率 把未提及字段补全;数字、日期和主体错配
检索/排序 查询 + 文档库 → 相关文档列表 Recall@K、MRR、nDCG 测试集与索引泄漏;只看最终回答不看召回
问答 问题 + 上下文 → 答案与证据 EM/F1、事实支持、引用覆盖、人工任务成功 答案流畅但无证据、引用不支持结论
翻译/摘要/生成 语言序列 → 新语言序列 自动指标 + 人工充分性、忠实度、可用性 一个自动分数代表所有质量;遗漏否定和条件
语音识别/合成 音频 ↔ 文本或语音 WER/CER、可懂度、自然度、说话人和时延 方言、人名、数字失真;声音权利和隐私

同一个输入可以有多个任务。例如客服消息既可做意图分类,也可抽取订单号、检索政策、生成回复并做合规检查。项目失败常不是“模型不够大”,而是把这些输出和责任混成一个无法判定对错的“理解文本”目标。

规则、传统模型、预训练模型还是 LLM?

路线 更适合 主要优点 主要限制
规则/词典/正则 格式稳定、可解释、错误代价高的小范围任务 确定、便宜、容易审计 覆盖维护困难,语言变化后易漏召回
传统机器学习 标签清晰、特征稳定、数据与算力有限 基线快、训练成本低、易分析 迁移与复杂语义能力有限
任务型深度模型 分类、序列标注、检索等固定任务 吞吐和任务优化明确 每个任务需要数据、训练和维护
预训练编码器/序列模型 微调分类、抽取、问答、翻译 复用通用表示,少量任务头 仍需标注、切分和任务评价
LLM 提示/RAG/微调 任务多变、生成、少样本、自然语言接口 覆盖面广、原型快、可组合工具 输出概率性、成本/延迟、幻觉、权限和评测复杂
混合系统 生产中既要灵活又要确定控制 规则守门、检索供证、模型处理语言 链路更长,必须保存中间证据和回退

2017 年Transformer 原始论文提出基于注意力的序列转换架构;2018 年BERT 论文展示了预训练双向表示再适配多种理解任务的路径。需要补足直觉时,可配合 Google 的Transformer 教学页阅读,但教学简化不能替代论文和具体实现文档。它们解释了现代 NLP 技术演进,却都不能证明某个今天的产品在中文业务中合格。

想继续理解模型训练阶段,可阅读本站的预训练是什么微调的任务边界;注意力机制的计算直觉见注意力机制详解。这些是相邻知识页,不替代本页的任务与项目方法。

中文 NLP 为什么不能照搬英文流程

字符、词和 token 是三个层次

用户看到的“一个字符”可能由多个 Unicode code point 组成;词边界又依赖文字系统和语言习惯;模型 token 则由具体 tokenizer 决定。Unicode 的UAX #29 Text Segmentation定义了字素簇、词和句边界的默认规则,同时明确边界会因语言和正字法而不同。不能用 Python 字符长度、正则 \b 或某个模型 token 数互相替代。

分词不是唯一正确答案

“南京市长江大桥”怎样切分取决于任务和标注规范。实体识别可能关心完整地名,搜索可能需要不同粒度,生成模型甚至不显式使用中文词分割。评价前必须冻结标注指南和边界规则,否则两个系统可能都合理却被错误判分。

简繁、异体、专名、数字与混合语言要单独测试

数据集应记录简体/繁体、地区和语言变体、行业、时间、来源、授权、说话人/作者群体、口语书面语、噪声与敏感字段。Bender 与 Friedman 的NLP Data Statements强调说明语言、语言变体和说话人群体,以限制不恰当的泛化。

中文基准也不是“中国语言能力”的单一答案。CLUE 官方项目覆盖多种中文理解任务,可以用于对照任务设计,但排行榜分数只适用于其数据、标签和评测协议;业务中的新词、方言、OCR、长文档或安全风险仍需自己的测试集。

中文文本预处理为什么必须写成版本化合同?

“清洗文本”不是一个无害的通用步骤。全角半角、繁简转换、大小写、空白、控制字符、emoji、URL、数字格式和 Unicode 规范化都可能改变业务含义。搜索系统或许希望把某些形式折叠以提高召回,法律文书抽取却可能必须保留原始字符、版式和位置。正确做法是同时保存原文与派生文本,并记录每一步转换的版本。

处理项 可能收益 可能破坏 必须测试
Unicode NFC/NFKC 统一部分等价表示,便于比较 NFKC 会折叠某些兼容字符和格式差异 全半角、单位、圈号、上标、少数文字与往返需求
繁简转换 扩大跨地区召回 一对多词义、专名、地区用词和原文证据 人名地名、法规标题、术语及原文回显
空白/标点清理 减少 OCR 和网页噪声 表格列、列表层级、公式与否定关系 跨行数字、项目符号、引号、负号和小数点
大小写与拉丁文本 提升普通关键词匹配 型号、基因、代码、缩写和密码样式 产品 ID、变量名、URL 与混合语言
emoji/特殊符号 降低非目标噪声 情感、否定、告警、身份或社区语义 客服、社交、青少年和安全场景
数字/日期标准化 便于检索和比较 单位、时区、千分位、模糊日期和原始证据 金额、百分比、版本号、证件号与日期区间

Unicode UAX #15 规范化形式明确区分 NFC、NFD、NFKC 和 NFKD,并提醒兼容性规范化会消除某些格式区别,不能盲目用于任意文本。工程台账应保存 Unicode 版本、规范化形式、繁简库、词典、正则和 tokenizer 版本;任何一项变化都可能让训练、评测与线上特征不一致。

预处理还要避免训练/服务偏差。训练时保留表格结构,线上却把换行全部删除;训练用原始大小写,服务端又统一小写,都会制造难以复现的下降。最小回归集应包含原文、预期派生文本、token 序列和最终任务输出,并在每次库或规则升级时运行。相关发布合同可纳入AI 项目生命周期验收指南统一管理。

八步把 NLP 概念变成可验收项目

第一步:把“理解文本”改写成可判定任务

写明输入、输出、用户、动作、错误成本和禁止事项。例如不是“理解投诉”,而是“把一条中文工单分到 12 个互斥队列;低置信时转人工;不得自动承诺退款”。

第二步:建立数据声明和授权记录

记录来源、语言/地区、时间、体裁、用户群体、采样、标注、许可、敏感信息、训练/评测用途和删除要求。公开可读不等于可任意训练,脱敏也不等于没有重识别风险。

数据与标注合同应该写清哪些边界?

标注标签必须用可执行定义表达。以“投诉”为例,要说明是否包含讽刺、转述他人投诉、同时包含咨询的文本、多轮对话中只有上一轮表达不满等情况。每个标签给正例、反例和边界例;遇到新类型时记录裁决,而不是让标注员凭感觉各自处理。

合同部分 必须记录 验收证据 常见失真
数据来源 系统、时间、地区、语言、采样和授权 可追溯样本清单与许可 把公开网页等同于无限训练许可
标签定义 包含、排除、重叠、未知和低置信规则 正反边界例与裁决日志 标签名相同但团队理解不同
标注过程 标注员背景、培训、盲标、复核和仲裁 一致性统计与冲突样本 只报告总量,不报告分歧
敏感信息 识别、脱敏、访问、保留和删除 权限记录与删除验证 脱敏后仍可由上下文重识别
用途边界 训练、验证、测试、展示和二次发布 用途与数据子集对应表 测试集进入提示示例或人工调参
变更管理 版本、变更理由、受影响标签与迁移 新旧规则差分和回归结果 覆盖旧标注却不保留历史

一致性高不一定意味着标签正确:标注员可能一致执行了有缺陷的规则。因此既要统计分歧,也要由业务和语言专家抽查边界样本。对主观任务可以保留多标注分布,而不是强行压成单一“真值”;对数字、实体和法规字段则应更强调可复核原文位置。数据声明应与模型卡、评测报告和上线范围一起交付。

第三步:先做最简单基线

分类任务先比较多数类、关键词/规则和简单统计模型;抽取先做字典/正则;检索先做词法基线。没有基线,就无法判断大模型增加的成本和复杂度是否真正带来价值。

第四步:按来源和时间切分数据

随机拆分可能把同一用户、模板、新闻复写或相邻时间文档放进训练和测试,制造数据泄漏。根据上线环境采用用户级、文档簇级、时间外推或领域外推切分,并保存去重方法。

Google 的数据集划分说明特别举例说明,训练集与测试集存在重复样本会让测试结果失真。NLP 中还要检查近重复:同一新闻转载、同一模板替换姓名、同一会话的不同轮次、同一文档的相邻 chunk,哈希不同也可能泄漏。切分应先按用户、会话、文档簇或时间分组,再生成训练/验证/测试集合。

第五步:选择与错误成本匹配的指标

类别不平衡时不能只看准确率;抽取同时看精确率和完整率;生成同时看忠实度、充分性与任务成功;高影响场景对数字、身份、否定和权限设置单独门槛。指标定义要先于模型比较。

如何把离线指标映射到真实错误成本?

指标选择从“哪种错误更贵”开始。垃圾信息过滤中误删正常消息可能比漏掉一条垃圾消息更严重;安全告警中漏报可能代价更高。Google 的分类指标说明指出,类别不平衡时准确率可能非常误导,precision、recall 和阈值选择要结合任务和误分类成本。

任务层 主要问题 建议证据 不能只看
分类 正负类、类别不平衡与阈值 混淆矩阵、每类 P/R/F1、PR 曲线、严重错误 总体准确率
实体/字段抽取 边界、类型、缺失和错配 实体级 P/R/F1、字段完整率、数值复算 token 级准确率
检索/排序 正确资料是否进入并排在前面 Recall@K、MRR/nDCG、过期与越权样本 最终回答流畅度
生成/摘要 忠实、充分、格式和任务完成 原子主张支持率、遗漏、人工任务成功、拒答 单个自动相似度分数
端到端系统 用户能否安全完成任务 成功率、接管、回退、延迟、成本与事故 模型离线分数

阈值也属于发布配置。比较模型时固定阈值能展示纯模型差异,但上线时应在验证集上根据成本选择阈值,再在未参与选择的测试集上报告结果。不要在看到测试结果后不断调阈值;这会让测试集变成隐形验证集。所有主指标还要按语言变体、长度、来源和高风险字段切片。

第六步:做切片和反事实错误分析

按简繁、长度、来源、行业、方言/口语、OCR、专名、数字、否定、时间和敏感群体切片。每个错误记录输入、期望、输出、严重度、根因、修复和回归用例,不只展示总体平均。

第七步:在近似部署条件下测试完整系统

把检索、提示词、模型版本、后处理、工具、权限、超时和人工接管一起测试。NIST AI RMF Core要求记录测试集、指标和工具,并在接近部署条件下评价,生产中还要持续监控。

LLM 与 RAG 系统为什么必须分层验收?

一个问答失败可能发生在解析、索引、召回、重排、上下文拼装、生成或权限层。只给最终回答打分,会把上游没找到资料与模型看见资料后仍然编造混在一起。分层保存中间产物才能决定是调整分块、检索、提示词、模型还是拒答规则。

应保存 主要指标 典型停止线
解析与切分 原文位置、结构、表格、图片与 chunk 版本 字段保真、结构覆盖、解析失败率 关键数字、标题或表格关系丢失
召回 查询、过滤条件、候选 ID 和分数 Recall@K、越权/过期候选 权威资料未进入候选或越权文档可见
重排与上下文 重排输入输出、截断、最终上下文 nDCG/MRR、证据覆盖和冲突率 错误版本压过现行文档
生成 模型、提示、参数、回答与引用映射 主张支持、完整、拒答和格式 关键事实无来源或引用不支持主张
工具与动作 调用参数、身份、审批、结果和幂等键 任务成功、越权、重试与回滚 不可逆动作无审批或无法撤销

RAG 的索引与评测方法可参考Haystack RAG Pipeline 指南;生成结果的原子主张核验见AI 内容审核与事实核验指南。对输入文档、检索结果和工具返回都要视为潜在不可信数据,提示注入、权限隔离与最小动作边界可结合AI 安全与提示注入防护指南设计。

NIST 的生成式 AI 风险管理框架配置文件把生成式系统的风险管理放回完整设计、开发、使用和评估流程。它不是某个准确率门槛,也不能替代行业法规;可用来检查是否记录了模型、数据、评测、监控和人类监督等责任。

第八步:灰度、监控和可回滚

先影子运行,再限制写入和影响范围;监控分布漂移、任务成功、人工接管、严重错误、延迟和成本。模型、词表、检索库、标注规则或用户群发生实质变化时重新评估。

上线后怎样发现语言分布和业务规则已经变了?

生产监控要同时看输入、输出、系统和业务四层。输入层记录语言、长度、来源、OCR 质量、简繁比例、新词和敏感字段的分布;输出层记录标签、拒答、低置信、引用和格式错误;系统层记录延迟、超时、重试、Token 与成本;业务层记录人工改判、转接、投诉、错误动作和任务完成。只看服务器是否报错,会错过“系统正常返回但答案越来越不适用”的静默退化。

漂移告警不是看到分布差异就立即重训。先抽样确认变化来自真实用户、采集管线、节假日、营销活动、攻击流量还是标注规则。模型输出标签比例变化也可能是业务需求变化,而不是模型坏了。告警必须关联原始样本、模型版本、预处理版本和当时阈值,否则团队无法复现。

建立稳定的人工反馈闭环:改判人选择错误类型、期望结果和理由,系统保留输入、旧输出和证据。反馈不能未经审查直接回流训练,因为用户可能误判、数据可能含隐私,攻击者也可能刻意污染。定期由业务、语言和工程人员共同裁决边界例,再形成新标注版本与回归集。

严重事件要有明确停止线。例如身份或金额错配、越权显示、否定条件丢失、错误自动动作、敏感信息泄露,一次就可触发降级为只读、规则基线或人工处理。低影响问题可以进入修复队列,但仍应记录发生率和受影响切片。任何回滚都要同时恢复模型、tokenizer、词典、提示、索引和阈值,不能只切回一个模型名称。

重训或更换 LLM 后,先跑冻结回归集,再用最新真实分布建立挑战集;两者分别回答“旧能力有没有退化”和“新环境能不能覆盖”。公开报告应写明数据时间、切片、阈值和部署版本。若只能证明离线分数提高,就不要声称用户任务、成本或安全性已经改善。

如何处理 NLP 项目中的低置信、冲突和无答案?

低置信不是统一的一个数字。分类模型可以使用校准后的概率和任务阈值;抽取系统可以按字段设置不同门槛;生成模型的自述“我有 90% 把握”通常不能当作可靠校准。更稳妥的信号包括检索是否有权威资料、多个来源是否冲突、必需字段是否齐全、输出是否通过格式与业务规则,以及历史相似错误。

无答案时应输出可行动的失败类型:资料库没有覆盖、用户无权限、输入信息不足、来源相互冲突、系统暂时不可用或任务超出允许范围。每种类型对应不同下一步,例如请求补充信息、转人工、展示允许访问的来源、稍后重试或明确拒绝。不要让一个通用“抱歉,我不知道”掩盖权限问题,也不要为了提高回答率从低相关文档拼出答案。

来源冲突时保留各自版本、发布日期和适用范围,避免模型擅自做“平均”。法规、政策、价格和流程应优先由业务定义的权威源与有效期规则裁决;无法裁决就把冲突展示给有权限的人。把拒答和人工接管纳入成功路径,才能让系统在证据不足时安全停止,而不是以覆盖率为目标持续猜测。

自然语言处理项目从任务定义、数据声明、基线和切分到评价、错误分析、灰度与生产监控的八步门槛
NLP 项目八步门槛。模型只是中间一环;数据、评价、回退和生产监控决定系统是否可用。

一份可复制的 NLP 项目卡

任务:输入 → 输出 → 下游动作
用户与场景:谁使用 / 何时使用 / 哪些语言和设备
禁止事项:不可自动执行或不可编造的内容
数据声明:来源 / 语言变体 / 时间 / 人群 / 许可 / 敏感字段
切分:用户级 / 文档簇级 / 时间外推 / 领域外推
基线:规则 / 统计模型 / 现有流程
指标:主指标 / 切片指标 / 严重错误 / 人工任务成功
版本:代码 / 模型 / tokenizer / 提示词 / 检索快照 / 依赖
失败恢复:低置信 / 超时 / 无来源 / 冲突 / 人工接管
上线:影子 → 灰度 → 限制写入 → 放量
监控:漂移 / 错误 / 接管 / 延迟 / 成本 / 回滚触发

常见问题

NLP 已经被大模型取代了吗?

没有。LLM 改变了许多任务的实现方式,但分类、检索、标注、语音、数据、评价、语言学分析和系统治理仍属于 NLP。很多生产系统是规则、检索、小模型和 LLM 的组合。

学习 NLP 是否必须先学深度学习?

不必。先掌握任务定义、文本与 Unicode、数据切分、precision/recall/F1、错误分析和简单基线,再学习表示、Transformer 和预训练,通常更容易理解模型为何成功或失败。

中文 NLP 一定要先分词吗?

不一定。传统管线和部分任务需要词级边界,现代子词/字符模型可能不显式分词;但业务实体边界、Unicode 规范化和 tokenizer 行为仍必须测试。

一个公开 benchmark 分数能证明系统可上线吗?

不能。公开基准只能证明特定数据和协议下的表现。上线还需真实语言分布、时间外推、切片、严重错误、端到端流程、人工接管和生产监控。对生成答案的进一步核验可阅读本站的AI 答案事实核验方法

本次修订与资料说明

纠错记录(2026 年 7 月 19 日):旧版主要罗列定义、历史阶段和聊天机器人等应用,缺少 NLP 与 LLM 的边界、中文文本问题、输入输出任务、项目切分、指标和生产门槛。严格 A 稿撤回“全面解析”的空泛表述,以任务地图、中文预处理合同、标注与切分、分层评测、RAG/LLM 故障归因、八步项目流程和可复核资料重建。

本文由兰塞 AI 编辑部依据 Stanford 教材草稿、Unicode 规范、Google 教育资料、Transformer/BERT 原始论文、CLUE、ACL 数据声明和 NIST AI RMF 整理。三张图为本站原创方法图,不代表虚构模型测试结果。