Skip to content

Getting "ImportError: Japanese support requires SudachiPy distributed with ja language mode" after installing sudachipy and dictionary #112

@pawar30

Description

@pawar30

I am running Anaconda(2020.02) with python 3.7.6 on Windows 10. I have the following lines of code to load Ginza -
import spacy
nlp = spacy.load('ja_ginza')

I have also downloaded sudachipy and sudachidict_core as discussed in the issue #71
However, I still get the "Japanese support requires SudachiPy distributed with ja language model".
Please do let me know if I am missing an import/install. Below is the full stacktrace

ImportError Traceback (most recent call last)
~\Anaconda3\lib\site-packages\ginza\sudachipy_tokenizer.py in try_import_sudachipy_dictionary()
35 try:
---> 36 from sudachipy import dictionary
37 return dictionary

~\Anaconda3\lib\site-packages\sudachipy\dictionary.py in
15 from . import config
---> 16 from . import dictionarylib
17 from .dictionarylib.binarydictionary import BinaryDictionary

~\Anaconda3\lib\site-packages\sudachipy\dictionarylib_init_.py in
18 from . import lexiconset
---> 19 from . import doublearraylexicon
20 from . import dictionaryheader

~\Anaconda3\lib\site-packages\sudachipy\dictionarylib\doublearraylexicon.py in
16
---> 17 from dartsclone import DoubleArray
18

~\Anaconda3\lib\site-packages\dartsclone_init_.py in
----> 1 from dartsclone._dartsclone import DoubleArray
2
3 all = [

ImportError: DLL load failed: The specified module could not be found.

During handling of the above exception, another exception occurred:

ImportError Traceback (most recent call last)
in
----> 1 nlp = spacy.load('ja_ginza')

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

~\Anaconda3\lib\site-packages\spacy\util.py in load_model(name, **overrides)
162 return load_model_from_link(name, **overrides)
163 if is_package(name): # installed as package
--> 164 return load_model_from_package(name, **overrides)
165 if Path(name).exists(): # path to model data directory
166 return load_model_from_path(Path(name), **overrides)

~\Anaconda3\lib\site-packages\spacy\util.py in load_model_from_package(name, **overrides)
183 """Load a model from an installed package."""
184 cls = importlib.import_module(name)
--> 185 return cls.load(**overrides)
186
187

~\Anaconda3\lib\site-packages\ja_ginza_init_.py in load(**overrides)
10
11 def load(**overrides):
---> 12 return load_model_from_init_py(file, **overrides)

~\Anaconda3\lib\site-packages\spacy\util.py in load_model_from_init_py(init_file, **overrides)
226 if not model_path.exists():
227 raise IOError(Errors.E052.format(path=path2str(data_path)))
--> 228 return load_model_from_path(data_path, meta, **overrides)
229
230

~\Anaconda3\lib\site-packages\spacy\util.py in load_model_from_path(model_path, meta, **overrides)
195 lang = meta.get("lang_factory", meta["lang"])
196 cls = get_lang_class(lang)
--> 197 nlp = cls(meta=meta, **overrides)
198 pipeline = meta.get("pipeline", [])
199 factories = meta.get("factories", {})

~\Anaconda3\lib\site-packages\spacy\language.py in init(self, vocab, make_doc, max_length, meta, **kwargs)
175 if make_doc is True:
176 factory = self.Defaults.create_tokenizer
--> 177 make_doc = factory(self, **meta.get("tokenizer", {}))
178 self.tokenizer = make_doc
179 self.pipeline = []

~\Anaconda3\lib\site-packages\ginza_init_.py in create_tokenizer(cls, nlp)
48 @classmethod
49 def create_tokenizer(cls, nlp=None):
---> 50 return SudachipyTokenizer(nlp)
51
52 @classmethod

~\Anaconda3\lib\site-packages\ginza\sudachipy_tokenizer.py in init(self, nlp, mode, config_path)
95 self.nlp = nlp
96 self.vocab = nlp.vocab if nlp is not None else Vocab()
---> 97 dictionary = try_import_sudachipy_dictionary()
98
99 split_mode = sudachipy_split_mode(mode)

~\Anaconda3\lib\site-packages\ginza\sudachipy_tokenizer.py in try_import_sudachipy_dictionary()
38 except ImportError:
39 raise ImportError(
---> 40 "Japanese support requires SudachiPy distributed with ja language model"
41 )
42

ImportError: Japanese support requires SudachiPy distributed with ja language model

Thanks!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions