通义千问系列大模型可通过四种方法实现中文命名实体识别:一、轻量模型lora微调;二、零样本提示工程;三、api调用加规则后处理;四、spacy与qwen双阶段校验。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您希望使用通义千问系列大模型自动从中文文本中提取人名、地名、机构名等命名实体,则需借助其指令微调能力与结构化提示工程。以下是实现该目标的多种可行路径:
一、基于Qwen3-0.6B或Qwen2-1.5B-Instruct的指令微调方法
该方法利用轻量级通义千问模型,在少量标注数据上进行LoRA高效微调,使模型学会按指定格式输出NER结果。模型参数量小、显存占用低,适合本地实验环境部署。
1、准备中文NER指令数据集,每条样本格式为:“请识别以下句子中的人名、地名、机构名:[原文]”,对应输出为“人名:[列表];地名:[列表];机构名:[列表]”。
2、使用Transformers库加载Qwen2-1.5B-Instruct或Qwen3-0.6B模型,配置LoRA适配器(r=8, alpha=16, dropout=0.1)。
3、采用QLoRA量化策略,在单张RTX 3090(24GB显存)上启动训练,batch_size设为4,训练轮次控制在3–5 epoch。
4、训练完成后,使用相同模板对新文本进行推理,模型将直接生成结构化实体列表。
二、零样本提示工程(Zero-shot Prompting)方法
该方法无需训练,仅依赖Qwen3-4B-Instruct-2507等强指令遵循模型的原生能力,通过精心设计的系统提示与输入格式,引导模型完成实体抽取任务。
1、设定系统角色提示:“你是一个专业的中文命名实体识别工具,严格按以下三类输出:人名(PER)、地名(LOC)、机构名(ORG)。不解释、不补充、不遗漏,仅输出JSON格式。”
2、输入示例:“请识别下列句子中的命名实体:2024年9月1日,李彦宏在百度大厦宣布文心一言4.5版本上线。”
3、要求模型返回标准JSON:{"PER": ["李彦宏"], "LOC": ["百度大厦"], "ORG": ["文心一言4.5版本"]}。
4、对任意新句子重复此输入模板,即可获得可解析的实体结果。
三、API调用+后处理规则方法
该方法适用于快速集成至业务系统,利用通义千问开放API接口获取大模型原始输出,再通过正则与词典规则清洗,确保实体类别归属准确。
1、构造HTTP请求体,向Qwen3-4B-Instruct-2507 API发送含明确指令的文本:“请逐字扫描以下内容,仅输出三行:第一行‘人名:’后接所有识别出的人名,用顿号分隔;第二行‘地名:’后接所有地名;第三行‘机构名:’后接所有机构名。不要任何其他文字。文本:[待分析句子]”
2、接收响应后,使用Python正则提取“人名:(.*)”、“地名:(.*)”、“机构名:(.*)”三组内容。
3、对每组结果执行去重与空格清理,并过滤掉长度小于2且不在通用姓氏库或行政区划库中的疑似误识别项。
4、最终输出标准化字典,字段为"PER"、"LOC"、"ORG",值为字符串列表。
四、结合spaCy+Qwen双阶段校验方法
该方法融合传统NLP工具的稳定性与大模型的理解力,先由spaCy快速初筛实体,再交由Qwen3模型判断类别归属,显著降低误标率。
1、使用zh_core_web_sm模型加载spaCy中文管道,对输入文本执行基础NER,获取所有被标记为PERSON、GPE、ORG的候选片段。
2、将每个候选片段与上下文窗口(前5字+后5字)拼接,构造独立判断样本:“上下文:[上下文];片段:[候选词];该片段属于人名、地名还是机构名?仅回答一个类别名称。”
3、批量提交至Qwen3-0.6B本地服务,收集分类结果。
4、将spaCy原始标签替换为Qwen判定结果,合并连续同类型片段,输出最终实体序列。











