学习笔记(45)- spacy可以支持中文
spacy是支持中文的。
多次用到spacy,但是下载的时候总是报错。写个笔记记录一下。
2021-09-27 15:32:13
找到一个简单的办法
可到这里直接下载:https://github.com/explosion/spacy-models/releases/tag/zh_core_web_sm-3.1.0
这个参数是中文,3.1.0版本。可换
(1)下载
https://github.com/explosion/spacy-models/releases/tag/zh_core_web_sm-3.1.0
如有必要,FQ
(2)安装
(my_transformer) xuehuiping@192$
在当前python环境,pip install /Users/xuehuiping/Downloads/zh_core_web_sm-3.1.0.tar.gz
(3)测试
import spacy
nlp = spacy.load("zh_core_web_sm")
doc = nlp("庆祝祖国生日快乐")
print(doc.text)
for token in doc:
print(token.text, token.pos_, token.dep_)
输出:
/Users/xuehuiping/anaconda3/envs/my_transformer/bin/python /Users/xuehuiping/git/my_transformer/x2.py
庆祝祖国生日快乐
庆祝 VERB ROOT
祖国 NOUN compound:nn
生日 NOUN dobj
快乐 VERB ccomp
Process finished with exit code 0
如果需要其他语言,需要下载对应的压缩包文件。
原笔记:
下载:python -m spacy download en
(env) huihui@192 pytorch_note % python -m spacy download en
Collecting en_core_web_sm==2.2.5 from https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-2.2.5/en_core_web_sm-2.2.5.tar.gz#egg=en_core_web_sm==2.2.5
Downloading https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-2.2.5/en_core_web_sm-2.2.5.tar.gz (12.0MB)
可见,下载的并不是en,而是en_core_web_sm,所以需要重命名。
保存的目录为:env/lib/python3.7/site-packages/spacy
源码:https://github.com/explosion/spaCy
模型:https://spacy.io/usage/models
https://github.com/explosion/spacy-models/releases/download/de_core_news_sm-2.2.5/de_core_news_sm-2.2.5.tar.gz
https://github.com/explosion/spacy-models/releases/download/fr_core_news_sm-2.2.5/fr_core_news_sm-2.2.5.tar.gz
其他每个模型的下载地址大约相同
支持的语言列表,看这里:https://github.com/explosion/spacy-models/releases/
或者换版本试试
不需要每次都下载。
可将gz文件解压,内部有setup.py
在python的环境中,执行setup.py build && install,然后下载模型python -m spacy download en
即可。
source python环境
cd XX_core_news_sm
python setup.py build
python setup.py install
python -m spacy download XX