用途:指导搭建命名实体识别(NER)系统,从文本中识别并分类人名、组织、地点、日期、金额,以及产品、症状、基因、合同等特定领域实体,也可在此基础上做关系抽取。
主要能力:提供三套工作流。第一,选择抽取方案,对照训练数据量、准确率、速度与可定制程度,在 spaCy 预训练模型、规则匹配、微调 BERT、LLM 零样本与少样本之间取舍,并先定义目标实体类型再规划评测。第二,实现抽取管线,用 spaCy 加载模型并遍历 doc.ents 输出文本、类型、起止位置与置信度,支持批量处理,再做归一化(如 IBM 与 I.B.M.)、缩写消解、知识库链接与质量校验。第三,构建自定义识别器,准备 TRAIN_DATA 并配置训练参数,命令为 python -m spacy train config.cfg --output ./models --paths.train ./train.spacy --paths.dev ./dev.spacy。
进阶能力:用提示词让大模型按指定实体类型返回 JSON 数组;用规则与机器学习混合抽取并按优先级合并结果;将实体链接到知识库的规范条目;在实体之上抽取 WORKS_FOR、LOCATED_IN 等关系;以及用主动学习挑选最不确定的文本优先标注。
适用场景:搜索、知识图谱、信息抽取等需要结构化实体数据的下游应用,尤其适合需要自定义领域实体的场景。
限制与注意:实体边界本身存在歧义(如 Dr. John Smith 算一个还是两个实体),需提前制定并统一标注规范;注意嵌套与重叠实体及模型是否支持;长文档受上下文窗口限制可能需要切块并保持上下文;聚合指标会掩盖问题,应按实体类型分别报告准确率与召回率并分析错误模式;不要不加测试就假定预训练模型适配自身领域。