登录
首页 >  科技周边 >  人工智能

GLM-5命名实体识别教程:人名地名机构名提取方法

时间:2026-05-14 15:33:32 235浏览 收藏

GLM-5并非传统意义上内置NER标签层的语言模型,而是通过指令驱动、BIO序列生成、微调适配、工具链协同(如GLAM-5)及视觉-文本联合(如GLM-5V-Turbo)五大灵活路径,实现高精度、可定制、多模态的人名、地名和机构名识别——无论你是零代码快速上手的开发者、追求工业级稳定的算法工程师,还是处理扫描件与表格的业务分析师,都能找到契合场景的最优解,真正让大模型成为结构化信息抽取的智能中枢。

GLM-5如何做命名实体识别_GLAM-5人名地名机构名抽取教程

如果您在使用GLM-5模型进行文本处理时,需要从非结构化语句中精准抽取出人名、地名、组织机构名等关键命名实体,则需明确其不同于传统NER流水线的调用逻辑。GLM-5本身不内置固定NER标签层,而是通过任务指令驱动、上下文感知与结构化输出约束实现高精度实体识别。以下是具体可执行的操作路径:

一、Prompt指令驱动式抽取

该方法利用GLM-5强大的指令遵循能力,在无微调前提下,通过精心设计的自然语言提示词引导模型生成标准化NER结果。核心在于显式声明实体类型、格式规范与边界要求,抑制自由生成偏差。

1、构造含约束的指令模板:在输入中明确写出“请严格按以下JSON格式返回结果,仅包含人名(PER)、地名(LOC)、组织名(ORG)三类实体,每个实体标注起始与结束字符位置,不添加任何解释性文字”

2、嵌入待识别文本:将原始句子作为指令后紧接的独立段落,避免与指令混排,例如:“原文:李明在北京大学计算机系担任教授,该公司由腾讯控股有限公司投资。”

3、设置输出格式锚点:在Prompt末尾追加示例输出,如{"entities": [{"type": "PER", "text": "李明", "start": 0, "end": 2}, {"type": "LOC", "text": "北京大学", "start": 6, "end": 12}, {"type": "ORG", "text": "腾讯控股有限公司", "start": 31, "end": 44}]}

4、调用API并解析响应:使用response_format={"type": "json_object"}参数确保返回为合法JSON,再提取entities字段进行后续处理

二、BIO标签序列生成法

此方法将GLM-5视作序列标注器,通过让模型逐词输出BIO标签(B-PER/I-PER/B-LOC等),复现传统CRF或BERT-CRF的标注行为。需配合预定义词汇切分与位置对齐机制,适用于对标签粒度有强控制需求的场景。

1、前置分词:采用Jieba或LTP对中文文本进行细粒度分词,保留原始字符偏移映射关系

2、构造逐词预测Prompt:对每个词生成形如“‘北京大学’属于以下哪一类?选项:O、B-LOC、I-LOC、B-ORG、I-ORG、B-PER、I-PER。只输出一个标签,不加说明。”的独立请求

3、批量并发请求:将全部分词结果组织为并行Prompt批次,通过vLLM或Open-AutoGLM调度器统一提交,降低单次延迟

4、拼接标签序列:按原始分词顺序收集各词预测标签,合并连续B-I序列,计算对应字符跨度,生成最终实体列表

三、微调适配GLM-5-NER专用头

该路径面向高精度、高吞吐工业部署场景,通过在GLM-5基座上附加轻量NER分类头,并使用标注数据集进行全参数或LoRA微调,使模型获得稳定、低方差的实体识别能力。适用于需长期运行且对F1值敏感的系统。

1、准备标注数据:使用BIOES格式标注至少5000句金融/政务/医疗领域文本,确保PER/LOC/ORG三类实体覆盖长尾分布

2、构建微调样本:每条样本为“[CLS] + 文本 + [SEP] + [MASK]×N”,其中N为文本字数,每个[MASK]位对应一个BIOES标签,采用Span-level loss优化

3、加载GLM-5基座权重:指定model_name_or_path="THUDM/glm-5-base",冻结底层Transformer参数,仅训练顶部两层分类头与归一化层

4、启动LoRA微调:使用r=8, alpha=16, dropout=0.1配置,在单张A100-80G上完成20个epoch训练,验证集F1提升≥3.2个百分点

四、工具链协同抽取(GLAM-5集成模式)

GLAM-5并非独立模型,而是Open-AutoGLM框架中专为结构化信息抽取优化的GLM-5变体。它内置NER专用插件模块,支持自动调用外部词典、正则引擎与规则校验器,形成“大模型主干+规则兜底”的混合识别架构,显著提升实体召回率与业务适配性。

1、启用GLAM-5插件模式:初始化客户端时传入plugins=["ner_dict", "regex_fallback"]参数,触发多源融合识别流程

2、注入领域词典:将自建的《中国高校名录》《世界五百强企业表》《行政区划代码表》以CSV格式上传至插件词典库,设置匹配优先级高于模型预测

3、配置正则兜底规则:为身份证号、手机号、邮政编码等数字型实体编写PCRE正则表达式,定义其强制归类为MISC或映射至LOC子类

4、执行混合推理:调用client.invoke(task="ner", context={"text": "张伟,身份证11010119900307211X,就职于华为技术有限公司"}),返回结果自动融合模型输出与词典/正则匹配项

五、视觉-文本联合NER(GLM-5V-Turbo增强路径)

当输入为截图、扫描件或PDF渲染图时,需先完成OCR识别再执行NER。GLM-5V-Turbo支持端到端图像理解,可跳过传统OCR阶段,直接从像素中定位并分类命名实体,特别适合表格、证件、公告等结构化视觉文档。

1、准备图像输入:截取含文字区域的PNG/JPG文件,分辨率不低于300dpi,确保文字清晰无倾斜

2、构造多模态Prompt:发送图像+文本指令“请识别图中所有人名、地名、组织名,并标注其在图中像素坐标(x_min, y_min, x_max, y_max)”

3、启用视觉定位输出:在请求中设置vision_output="bbox",强制模型返回带坐标的结构化JSON,而非纯文本描述

4、后处理坐标映射:将返回的归一化坐标(0~1范围)乘以原始图像宽高,得到实际像素位置,用于高亮标注或下游GIS系统对接

今天带大家了解了的相关知识,希望对你有所帮助;关于科技周边的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~

资料下载
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>