给整句选择一个类别,与标记句子里的“人名、地点、组织名”是两种任务。准备中文实体识别数据时,Label Studio 可以通过 Labels 给具体文本片段加类别,导出后应把字符位置切回原文,确认圈选的内容没有偏移。
本文使用虚构短句“张三在北京加入云杉科技。”,不包含真实个人信息。官方文档核对日期为 2026 年 10 月 1 日;界面步骤未在你的部署上实测,切片例子只用于展示检查方法,不代表训练或识别效果。

先写清片段边界
为这条演示样本约定三类:人名只标姓名,不包含动词;地点只标地名,不包含“在”;组织名只标组织名称,不包含“加入”。据此应产生三个片段:
| 原文片段 | 类别 | 边界说明 |
|---|---|---|
| 张三 | 人名 | 不包含后面的“在” |
| 北京 | 地点 | 不包含前面的“在”或后面的“加入” |
| 云杉科技 | 组织名 | 不包含句号 |
真实项目还要补充简称、重叠实体、嵌套实体以及无法判断的处理规则。不要因为文本里出现汉字就把它全部框为一个实体,也不要让标注者各自决定边界。
配置 Labels 与可选择的 Text
在一个试验项目的 Labeling Setup 或 Labeling Interface 中保存下面的 XML。Labels 官方文档把它定义为给区域分配标签的控件;toName 绑定要标注的对象。这里使用字符级选择,方便选择没有空格的中文片段。
<View>
<Labels name="entities" toName="text">
<Label value="人名" />
<Label value="地点" />
<Label value="组织名" />
</Labels>
<Text name="text" value="$text"
granularity="symbol" saveTextResult="yes" />
</View>
granularity="symbol" 和保存选中文字的参数见Text 文档。entities 是区域标注控件名,text 是文本对象名,$text 是任务数据字段;三个角色不能混为一谈。
按官方任务导入说明通过项目 Import 导入下面的 UTF-8 JSON,再打开任务。先选“人名”,拖选“张三”;再选“地点”并拖选“北京”;最后标“云杉科技”为“组织名”。查看区域列表和高亮,确认每个片段的边界与上表一致,然后提交正式标注。
[
{"data":{"source_id":"ner-01","text":"张三在北京加入云杉科技。"}}
]
如果拖选时把“在北京”或句号一并选入,先修正区域边界再提交。完成标准是原文里准确出现三个目标片段,不是界面看到了三种标签颜色。
导出后核对 start、end 和原文
通过 Export 选择 JSON。导出文档说明区域对应结果,结果与具体控件关联;找到任务 data.source_id="ner-01",再找正式标注里 from_name="entities"、to_name="text"、type="labels" 的结果。下面是“北京”的预期结构示意,省略了区域 ID 等字段:
{
"from_name": "entities",
"to_name": "text",
"type": "labels",
"value": {
"start": 3,
"end": 5,
"text": "北京",
"labels": ["地点"]
}
}
本例从零开始编号,结束位置不包含在片段内。用同一份原文验证位置:
text = "张三在北京加入云杉科技。"
examples = [
(0, 2, "张三", "人名"),
(3, 5, "北京", "地点"),
(7, 11, "云杉科技", "组织名"),
]
for start, end, expected, label in examples:
actual = text[start:end]
assert actual == expected, (start, end, actual, expected)
print(start, end, actual, label)
三个切片必须分别得到“张三”“北京”“云杉科技”。正式核查时,将示例坐标替换为导出结果的坐标,并读取同一任务的 data.text;若结果保存了 value.text,再核对它与切片一致。不能用重新整理过的另一份句子检查旧坐标。
位置不对时,先排查文本有没有被改过
Text 官方文档说明空格参与位置计数,Windows 的 \r\n 与 \n 也需要一致处理。Python 读文本文件可能转换换行;需要保留原字符时,使用 open(..., encoding="utf-8", newline=""),或在导入前统一换行并保存转换后的原文。标完以后删除空格、替换标点或改换行会让已有坐标偏移。
本文切片示例只含常用中文字符。含 emoji 等字符的文本可能涉及不同语言运行时的字符计数差异,应先用实际导出的结果核对坐标单位,不能直接把这份示例外推到任意 Unicode 文本。使用 URL 加载的原文也要保存固定版本,避免网页内容变化后坐标失效。
交给训练程序前再检查什么
保留原样本编号、未经改写的文本、片段起止位置和类别。逐条检查位置在文本范围内、切片非空、类别来自固定列表;多人标注的分歧需要裁决,取消状态或未提交结果应单独处理。
如果下游要的是 BIO 标签或特定分词器的数据,先明确它如何把字符片段映射到 token,并用这条已知答案样本做一次转换检查。Label Studio 的区域结果并不自动等同于任意模型的 token 标签,不能直接把 start 当作词序号。
Ai菜鸟网。发布者:AI小管家,转载请注明出处:https://www.alyyhw.com/30249.html