首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OSError:[E050]找不到模型'en‘

OSError:[E050]找不到模型'en‘
EN

Stack Overflow用户
提问于 2019-09-23 06:51:09
回答 6查看 11.9K关注 0票数 4

我正在尝试使用python-https://github.com/DerwenAI/pytextrank/blob/master/example.ipynb的pytextrank库,但是我无法解决这个错误,之前我收到了一个ip.json找不到的错误,但是后来被解决了。

代码语言:javascript
复制
    import pytextrank
    import sys
    path_stage0="data/ip.json" 
    path_stage1="o1.json"

    with open(path_stage1,'w') as f:
        for graf in pytextrank.parse_doc(pytextrank.json_iter(path_stage0)):
            f.write("%s\n" % pytextrank.pretty_print(graf._asdict()))
            print(pytextrank.pretty_print(graf))


    OSError                                   Traceback (most recent call last)
    <ipython-input-12-a20b437ea0f1> in <module>
          6 
          7 with open(path_stage1,'w') as f:
    ----> 8     for graf in pytextrank.parse_doc(pytextrank.json_iter(path_stage0)):
          9         f.write("%s\n" % pytextrank.pretty_print(graf._asdict()))
         10         print(pytextrank.pretty_print(graf))

~\Anaconda3\lib\site-packages\pytextrank\pytextrank.py in parse_doc(json_iter)
    259                 print("graf_text:", graf_text)
    260 
--> 261             grafs, new_base_idx = parse_graf(meta["id"], graf_text, base_idx)
    262             base_idx = new_base_idx
    263 

~\Anaconda3\lib\site-packages\pytextrank\pytextrank.py in parse_graf(doc_id, graf_text, base_idx, spacy_nlp)
    185     if not spacy_nlp:
    186         if not SPACY_NLP:
--> 187             SPACY_NLP = spacy.load("en")
    188 
    189         spacy_nlp = SPACY_NLP

~\Anaconda3\lib\site-packages\spacy\__init__.py in load(name, **overrides)
     25     if depr_path not in (True, False, None):
     26         deprecation_warning(Warnings.W001.format(path=depr_path))
---> 27     return util.load_model(name, **overrides)
     28 
     29 

~\Anaconda3\lib\site-packages\spacy\util.py in load_model(name, **overrides)
    137     elif hasattr(name, "exists"):  # Path or Path-like to model data
    138         return load_model_from_path(name, **overrides)
--> 139     raise IOError(Errors.E050.format(name=name))
    140 
    141 

OSError: [E050] Can't find model 'en'. It doesn't seem to be a shortcut link, a Python package or a valid path to a data directory.
EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2020-09-21 04:59:37

使用以下方法解决笔记本错误:

代码语言:javascript
复制
!python -m spacy download en_core_web_md

您可以按照您的要求下载包,如:

代码语言:javascript
复制
!python -m spacy download en_core_web_sm'

代码语言:javascript
复制
!python -m spacy download en_core_web_lg
票数 3
EN

Stack Overflow用户

发布于 2019-09-23 07:13:19

在使用spacy时,我们必须使用

代码语言:javascript
复制
python -m spacy download en_core_web_sm

如果您已经这样做了,请确保您已正确分配快捷链接。意思是'en‘和'en_core_web_sm’之间的简单连接

当我直接和spacy一起工作的时候,很容易就成功了

代码语言:javascript
复制
nlp = spacy.load("en_core_web_sm")

https://spacy.io/usage/models提供更多帮助

票数 7
EN

Stack Overflow用户

发布于 2019-11-02 10:49:31

模型名称发生了变化,因此需要下载en_core_web_sm或其他模型。这个问题在更新为v1.2.1 2.x的spaCy发行版中得到了解决。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58057021

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档