如何在spaCy中定义ner_model?执行代码提示未定义
解决spaCy中"ner_model not defined"报错的方法
1. 先安装spaCy及预训练模型
先在终端执行以下命令,完成spaCy和对应预训练NER模型的安装:
pip install spacy python -m spacy download en_core_web_sm # 这是英文轻量模型,也可选择en_core_web_md/large这类更大的模型
如果处理中文文本,换成中文模型的下载命令:
python -m spacy download zh_core_web_sm
2. 在代码中加载模型定义ner_model
修改你的代码,先导入spaCy并加载预训练模型,将其赋值给ner_model:
import spacy import pandas as pd # 假设你用到了pandas处理DataFrame,需确保导入 # 加载预训练NER模型,赋值给ner_model ner_model = spacy.load("en_core_web_sm") # 中文文本就换成"zh_core_web_sm" def all_ents(v): return [(ent.text, ent.label_) for ent in ner_model(v).ents] df1['Entities'] = df1['text'].apply(lambda v: all_ents(v)) df1.head()
自定义模型的情况
如果用的是自己训练的NER模型,把spacy.load()里的参数换成你模型的保存路径即可,比如:
ner_model = spacy.load("./my_trained_ner_model")
内容的提问来源于stack exchange,提问作者d_stupido_02
相关产品推荐
相关产品推荐

