SamuraiT / mecab-python3

:snake: mecab-python. you can find original version here:http://taku910.github.io/mecab/
https://pypi.python.org/pypi/mecab-python3
Other
539 stars 51 forks source link

Runtime error has occurred in the latest version (1.0.0) #47

Closed takapy0210 closed 4 years ago

takapy0210 commented 4 years ago

Thank you for providing us with a great library.


When I updated to the latest version (1.0.0) of mecab-python3 and ran it, the following error occurred.

import MeCab
mecab = MeCab.Tagger('-d /usr/lib/x86_64-linux-gnu/mecab/dic/mecab-ipadic-neologd')

Error:

Failed when trying to initialize MeCab. Some things to check:

    - If you are not using a wheel, do you have mecab installed?

    - Do you have a dictionary installed? If not do this:

        pip install unidic-lite

    - If on Windows make sure you have this installed:

        https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads

    - Try creating a Model with the same arguments as your Tagger; that may
      give a more descriptive error message.

If you are still having trouble, please file an issue here:

    https://github.com/SamuraiT/mecab-python3/issues
---------------------------------------------------------------------------
RuntimeError                              Traceback (most recent call last)
<ipython-input-3-a9a8836373a9> in <module>
----> 1 mecab = MeCab.Tagger('-d /usr/lib/x86_64-linux-gnu/mecab/dic/mecab-ipadic-neologd')

/usr/local/lib/python3.6/dist-packages/MeCab/__init__.py in __init__(self, args)
    103 
    104         try:
--> 105             super(Tagger, self).__init__(args)
    106         except RuntimeError:
    107             sys.stderr.write(FAILMESSAGE)

RuntimeError: 

Why is this?

I reverted to the version I had been using (ver 0.996.5) to try it out, and it worked fine.

environment

polm commented 4 years ago

Thanks for the bug report, and sorry for the trouble. Not sure why this would be happening.

Can you use MeCab without neologd (without the dictionary argument)?

What's the output of this code?

import MeCab
mecab = MeCab.Model('-d /usr/lib/x86_64-linux-gnu/mecab/dic/mecab-ipadic-neologd')

There's a bug in MeCab where errors in the Tagger don't have meaningful output, but you can get the output by using a Model instead.

Locally on Linux I was able to use neologd without issue, so it shouldn't be a problem with the dictionary files.

polm commented 4 years ago

Oh, another thing - can you test it in a virtualenv where you have fewer packages installed? I don't think it should make a difference but better to rule things out.

cidrugHug8 commented 4 years ago

1.0.0 doesn't work for my pc either, but 0.996.5 does.

polm commented 4 years ago

@cidrugHug8 Thanks for the report, can you tell your OS, Python version, and what the above code (with MeCab.Model) shows for you?

cidrugHug8 commented 4 years ago

Here you are:

DISTRIB_ID=Ubuntu DISTRIB_RELEASE=18.04 DISTRIB_CODENAME=bionic DISTRIB_DESCRIPTION="Ubuntu 18.04.4 LTS"

Python 3.6.9

Sorry, I don't have a neologd dictionary.

Python 3.6.9 (default, Apr 18 2020, 01:56:04) 
[GCC 8.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import MeCab
>>> tagger = MeCab.Tagger()
>>> mecab = MeCab.Model('-d /usr/lib/x86_64-linux-gnu/mecab/dic/mecab-ipadic-neologd')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python3.6/dist-packages/MeCab/__init__.py", line 105, in __init__
    super(Model, self).__init__(*args)
RuntimeError: param.cpp(69) [ifs] no such file or directory: /usr/lib/x86_64-linux-gnu/mecab/dic/mecab-ipadic-neologd/dicrc
polm commented 4 years ago

@cidrugHug8 Can you run this code instead?

import MeCab
mecab = MeCab.Model()
cidrugHug8 commented 4 years ago

I misunderstood.

1.0.0:

Python 3.6.9 (default, Apr 18 2020, 01:56:04)
[GCC 8.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import MeCab
>>> mecab = MeCab.Model()

Failed when trying to initialize MeCab. Some things to check:

    - If you are not using a wheel, do you have mecab installed?

    - Do you have a dictionary installed? If not do this:

        pip install unidic-lite

    - If on Windows make sure you have this installed:

        https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads

    - Try creating a Model with the same arguments as your Tagger; that may
      give a more descriptive error message.

If you are still having trouble, please file an issue here:

    https://github.com/SamuraiT/mecab-python3/issues
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python3.6/dist-packages/MeCab/__init__.py", line 122, in __init__
    super(Model, self).__init__(args)
RuntimeError: param.cpp(69) [ifs] no such file or directory: /usr/local/etc/mecabrc

0.996.5:

Python 3.6.9 (default, Apr 18 2020, 01:56:04)
[GCC 8.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import MeCab
>>> tagger = MeCab.Tagger()
>>> mecab = MeCab.Model()
>>>
polm commented 4 years ago

Hm, seems like you might not have a dictionary installed. Try pip install unidic-lite, then let me know if that fixes it, or post the error output if not.

cidrugHug8 commented 4 years ago

I've already installed mecab-ipadic-utf8 using apt-get -y install. Even so, do I need unidic-lite to run 1.0.0?

polm commented 4 years ago

You don't need to install unidic-lite if you have another dictionary, but you might need to specify the dictionary path. Where is your ipadic installed? If you specify that path when instantiating the Model (-d /path/to/ipadic) does it work?

If that doesn't work, please try installing unidic-lite and checking if that works so we can rule out other issues.

cidrugHug8 commented 4 years ago

“include src/MeCab/mecabrc.in“ is removed from MANIFEST.in. mecabrc was also removed. Could you put them back?

takapy0210 commented 4 years ago

@polm I tried it.(also try the following)

Oh, another thing - can you test it in a virtualenv where you have fewer packages installed? I don't think it should make a difference but better to rule things out.

import MeCab
mecab = MeCab.Model('-d /usr/lib/x86_64-linux-gnu/mecab/dic/mecab-ipadic-neologd')

Outputs

Failed when trying to initialize MeCab. Some things to check:

    - If you are not using a wheel, do you have mecab installed?

    - Do you have a dictionary installed? If not do this:

        pip install unidic-lite

    - If on Windows make sure you have this installed:

        https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads

    - Try creating a Model with the same arguments as your Tagger; that may
      give a more descriptive error message.

If you are still having trouble, please file an issue here:

    https://github.com/SamuraiT/mecab-python3/issues
---------------------------------------------------------------------------
RuntimeError                              Traceback (most recent call last)
<ipython-input-2-f47144b8af2f> in <module>
----> 1 mecab = MeCab.Model('-d /usr/lib/x86_64-linux-gnu/mecab/dic/mecab-ipadic-neologd')

/usr/local/lib/python3.6/dist-packages/MeCab/__init__.py in __init__(self, args)
    120 
    121         try:
--> 122             super(Model, self).__init__(args)
    123         except RuntimeError:
    124             sys.stderr.write(FAILMESSAGE)

RuntimeError: param.cpp(69) [ifs] no such file or directory: /usr/local/etc/mecabrc

import MeCab
mecab = MeCab.Model()

Outputs

Failed when trying to initialize MeCab. Some things to check:

    - If you are not using a wheel, do you have mecab installed?

    - Do you have a dictionary installed? If not do this:

        pip install unidic-lite

    - If on Windows make sure you have this installed:

        https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads

    - Try creating a Model with the same arguments as your Tagger; that may
      give a more descriptive error message.

If you are still having trouble, please file an issue here:

    https://github.com/SamuraiT/mecab-python3/issues
---------------------------------------------------------------------------
RuntimeError                              Traceback (most recent call last)
<ipython-input-3-7f5ed6fe442d> in <module>
----> 1 mecab = MeCab.Model()

/usr/local/lib/python3.6/dist-packages/MeCab/__init__.py in __init__(self, args)
    120 
    121         try:
--> 122             super(Model, self).__init__(args)
    123         except RuntimeError:
    124             sys.stderr.write(FAILMESSAGE)

RuntimeError: param.cpp(69) [ifs] no such file or directory: /usr/local/etc/mecabrc

environment

image

polm commented 4 years ago

@takapy0210 Thanks for checking, I think I know what's going on now. If you add -r /dev/null to your arguments it should work.

@cidrugHug8 Adding -r /dev/null to your arguments, including the dictionary path, should make this work.

Adding mecabrc and mecabrc.in back to the package wouldn't fix your problem. mecabrc.in is just a template to generate mecabrc, so it's not important. The generated mecabrc is for the bundled dictionary, so if I added it back it would point to a dictionary that didn't exist. If you were previously using MeCab.Tagger() without a dictionary path you weren't actually using your system ipadic, you were using the bundled one.


To clarify why adding -r /dev/null fixes things: MeCab requires a mecabrc, but it can be empty if you separately specify the dictionary path.

In a normal install mecabrc will point to the dictionary to use. If you use a system dictionary, the mecab binary in mecab-python3 can't know where the dictionary is, so it doesn't specify the path.

If I always set a default mecabrc, that will break source installs that use the system MeCab binary. I may be able to set a default mecabrc when using the bundled MeCab binary only, I'll look into it.

Anyway, to sum up: for now, if you need to specify a dictionary path, you also need to specify a mecabrc. You can use -r /dev/null on Linux or OSX or -r nul on Windows.

cidrugHug8 commented 4 years ago

Finally I understand. I see that the library specifications have changed. Thank you.

日本語お分かりになりますよね?最初から日本語で質問すべきでした。 多くの日本語記事にはpythonからmecabを使うためにはmecabと辞書のインストールが必要と書かれており、 それを信じていました。 以前までのmecab-pythonは辞書を内包しておりそれを使っていた、 1.0.0からは辞書を内包しないので既存コードには変更が必要、とは理解していませんでした。 お手数おかけしました。

polm commented 4 years ago

なるほど、そういうことだったんですね。

こちらこそ説明が足りなくてすみませんでした。MeCabは歴史が長く、ネット上古い記事がいっぱいあるのが現状で、PyPIやこちらのリポジトリで情報を拡散しようとしてもなかなか届きません…

ozancaglayan commented 4 years ago

In the previous 0.996.5 version, one could install the mecab-python3 package without any other dependency. Now, I guess unidic-lite became a dependency, right? And how does this affect segmentation when switching from the bundled dic (0.996.5) to unidic-lite (1.0.0)?

polm commented 4 years ago

unidic-lite is an optional dependency. You have to have a dictionary, but you can install a dictionary using another method, like your operating system, and unidic-lite is not a strict requirement.

The problem with the previous version bundling ipadic was that it ignored any existing mecabrc file, so many people used the bundled ipadic without realizing it, thinking that it used the same config as the mecab binary they installed without Python. Before 2018 when the dictionary was bundled, the system mecab settings were used (because there were no wheels).

And how does this affect segmentation when switching from the bundled dic (0.996.5) to unidic-lite (1.0.0)?

ipadic and unidic are very different, you can read about some of the differences here.

ozancaglayan commented 4 years ago

Thanks for quick reply. The problem is that sacreBLEU depended on mecab and used IPA without requiring any further deps. How can we ensure that with 1.0.0, a virtual env user that installs sacreBLEU still uses IPA dict through MeCab for scientific reproducibility and backward compatibility?

polm commented 4 years ago

You really shouldn't use ipadic by default, even if you need it for historical reproducibility, because it hasn't been updated since 2007 and will never be updated again. I may package ipadic the same way I did unidic, but I don't have a schedule for it. (If someone else wants to package it like I did Unidic I'd be glad to add instructions for using to the README here.)

In the meantime, you can peg your dependency on mecab-python3 to the previous version. If you're distributing a library, in general you should peg your dependencies to a major version - I specifically raised the major version on this package because I knew it would break some installs.

kimrin commented 4 years ago

In most mecab-python3 use cases, they are along with neologd dictionary for accurate Part of Speech Tagging. In the execution of MeCab.Model(), mecab-python3 1.0.0 can not find unidic and return error messages (and non exist path of mecabrc(/usr/local/etc/mecabrc) ).

To refrain from this error, simply adds "-r" option helps a lot in several installation packages (as in ubuntu 18.04 mecab packages and neologd).

MeCab.Tagger("-r /etc/mecabrc -d /usr/lib/x86_64-linux-gnu/mecab/dic/mecab-ipadic-neologd")

will works fine.

(but may be needed for workaround of it by the PR...)

rcmdnk commented 4 years ago

It may be different problem but I got same error messages when I tried to use -Ochasen option.

mecab = MeCab.Model()

No error. But

mecab = MeCab.Model("-Ochasen")

showed,


Failed when trying to initialize MeCab. Some things to check:

    - If you are not using a wheel, do you have mecab installed?

    - Do you have a dictionary installed? If not do this:

        pip install unidic-lite

    - If on Windows make sure you have this installed:

        https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads

    - Try creating a Model with the same arguments as your Tagger; that may
      give a more descriptive error message.

If you are still having trouble, please file an issue here:

    https://github.com/SamuraiT/mecab-python3/issues
---------------------------------------------------------------------------
RuntimeError                              Traceback (most recent call last)
<ipython-input-41-2ff7e28c48a7> in <module>()
----> 1 mecab = MeCab.Model('-Ochasen')

/usr/local/lib/python3.6/dist-packages/MeCab/__init__.py in __init__(self, args)
    120 
    121         try:
--> 122             super(Model, self).__init__(args)
    123         except RuntimeError:
    124             sys.stderr.write(FAILMESSAGE)

RuntimeError: writer.cpp(63) [!tmp.empty()] unknown format type [chasen]

and

mecab = MeCab.Model('-r /dev/null -Ochasen')

showed same error. -Oyomi gave same error, but -Odump did not (worked fine).

Another strange point is that if I gave mecab-ipadic-neologd, then

mecab = MeCab.Model('-Ochasen -d /usr/lib/x86_64-linux-gnu/mecab/dic/mecab-ipadic-neologd')

worked w/o errors.

But it did not work if I gave unidic_lite's dir:

mecab = MeCab.Model('-Ochasen -d /usr/local/lib/python3.6/dist-packages/unidic_lite/dicdir')

gave same error message.

Environment:

``` Package Version ------------------------ --------------- absl-py 0.9.0 alabaster 0.7.12 albumentations 0.1.12 altair 4.1.0 asgiref 3.2.10 astor 0.8.1 astropy 4.0.1.post1 astunparse 1.6.3 atari-py 0.2.6 atomicwrites 1.4.0 attrs 19.3.0 audioread 2.1.8 autograd 1.3 Babel 2.8.0 backcall 0.2.0 beautifulsoup4 4.6.3 bleach 3.1.5 blis 0.4.1 bokeh 1.4.0 boto 2.49.0 boto3 1.14.9 botocore 1.17.9 Bottleneck 1.3.2 branca 0.4.1 bs4 0.0.1 CacheControl 0.12.6 cachetools 4.1.0 catalogue 1.0.0 certifi 2020.6.20 cffi 1.14.0 chainer 6.5.0 chardet 3.0.4 click 7.1.2 cloudpickle 1.3.0 cmake 3.12.0 cmdstanpy 0.4.0 colorlover 0.3.0 community 1.0.0b1 contextlib2 0.5.5 convertdate 2.2.1 coverage 3.7.1 coveralls 0.5 crcmod 1.7 cufflinks 0.17.3 cvxopt 1.2.5 cvxpy 1.0.31 cycler 0.10.0 cymem 2.0.3 Cython 0.29.20 daft 0.0.4 dask 2.12.0 dataclasses 0.7 datascience 0.10.6 decorator 4.4.2 defusedxml 0.6.0 descartes 1.1.0 dill 0.3.2 distributed 1.25.3 Django 3.0.7 dlib 19.18.0 docopt 0.6.2 docutils 0.15.2 dopamine-rl 1.0.5 earthengine-api 0.1.226 easydict 1.9 ecos 2.0.7.post1 editdistance 0.5.3 en-core-web-sm 2.2.5 entrypoints 0.3 ephem 3.7.7.1 et-xmlfile 1.0.1 fa2 0.3.5 fancyimpute 0.4.3 fastai 1.0.61 fastdtw 0.3.4 fastprogress 0.2.3 fastrlock 0.5 fbprophet 0.6 feather-format 0.4.1 featuretools 0.4.1 filelock 3.0.12 firebase-admin 4.1.0 fix-yahoo-finance 0.0.22 Flask 1.1.2 folium 0.8.3 fsspec 0.7.4 future 0.16.0 gast 0.3.3 GDAL 2.2.2 gdown 3.6.4 gensim 3.6.0 geographiclib 1.50 geopy 1.17.0 gin-config 0.3.0 glob2 0.7 google 2.0.3 google-api-core 1.16.0 google-api-python-client 1.7.12 google-auth 1.17.2 google-auth-httplib2 0.0.3 google-auth-oauthlib 0.4.1 google-cloud-bigquery 1.21.0 google-cloud-core 1.0.3 google-cloud-datastore 1.8.0 google-cloud-firestore 1.7.0 google-cloud-language 1.2.0 google-cloud-storage 1.18.1 google-cloud-translate 1.5.0 google-colab 1.0.0 google-pasta 0.2.0 google-resumable-media 0.4.1 googleapis-common-protos 1.52.0 googledrivedownloader 0.4 graphviz 0.10.1 grpcio 1.30.0 gspread 3.0.1 gspread-dataframe 3.0.7 gym 0.17.2 h5py 2.10.0 HeapDict 1.0.1 holidays 0.9.12 html5lib 1.0.1 httpimport 0.5.18 httplib2 0.17.4 httplib2shim 0.0.3 humanize 0.5.1 hyperopt 0.1.2 ideep4py 2.0.0.post3 idna 2.9 image 1.5.32 imageio 2.4.1 imagesize 1.2.0 imbalanced-learn 0.4.3 imblearn 0.0 imgaug 0.2.9 importlib-metadata 1.6.1 imutils 0.5.3 inflect 2.1.0 intel-openmp 2020.0.133 intervaltree 2.1.0 ipykernel 4.10.1 ipython 5.5.0 ipython-genutils 0.2.0 ipython-sql 0.3.9 ipywidgets 7.5.1 itsdangerous 1.1.0 jax 0.1.69 jaxlib 0.1.47 jdcal 1.4.1 jedi 0.17.1 jieba 0.42.1 Jinja2 2.11.2 jmespath 0.10.0 joblib 0.15.1 jpeg4py 0.1.4 jsonschema 2.6.0 jupyter 1.0.0 jupyter-client 5.3.4 jupyter-console 5.2.0 jupyter-core 4.6.3 kaggle 1.5.6 kapre 0.1.3.1 Keras 2.3.1 Keras-Applications 1.0.8 Keras-Preprocessing 1.1.2 keras-vis 0.4.1 kiwisolver 1.2.0 knnimpute 0.1.0 librosa 0.6.3 lightgbm 2.2.3 llvmlite 0.31.0 lmdb 0.98 lucid 0.3.8 LunarCalendar 0.0.9 lxml 4.2.6 Markdown 3.2.2 MarkupSafe 1.1.1 matplotlib 3.2.2 matplotlib-venn 0.11.5 mecab-python3 1.0.0 missingno 0.4.2 mistune 0.8.4 mizani 0.6.0 mkl 2019.0 mlxtend 0.14.0 more-itertools 8.4.0 moviepy 0.2.3.5 mpmath 1.1.0 msgpack 1.0.0 multiprocess 0.70.10 multitasking 0.0.9 murmurhash 1.0.2 music21 5.5.0 natsort 5.5.0 nbconvert 5.6.1 nbformat 5.0.7 networkx 2.4 nibabel 3.0.2 nltk 3.2.5 notebook 5.2.2 np-utils 0.5.12.1 numba 0.48.0 numexpr 2.7.1 numpy 1.18.5 nvidia-ml-py3 7.352.0 oauth2client 4.1.3 oauthlib 3.1.0 okgrade 0.4.3 opencv-contrib-python 4.1.2.30 opencv-python 4.1.2.30 openpyxl 2.5.9 opt-einsum 3.2.1 osqp 0.6.1 packaging 20.4 palettable 3.3.0 pandas 1.0.5 pandas-datareader 0.8.1 pandas-gbq 0.11.0 pandas-profiling 1.4.1 pandocfilters 1.4.2 parso 0.7.0 pathlib 1.0.1 patsy 0.5.1 pexpect 4.8.0 pickleshare 0.7.5 Pillow 7.0.0 pip 19.3.1 pip-tools 4.5.1 plac 1.1.3 plotly 4.4.1 plotnine 0.6.0 pluggy 0.7.1 portpicker 1.3.1 prefetch-generator 1.0.1 preshed 3.0.2 prettytable 0.7.2 progressbar2 3.38.0 prometheus-client 0.8.0 promise 2.3 prompt-toolkit 1.0.18 protobuf 3.10.0 psutil 5.4.8 psycopg2 2.7.6.1 ptyprocess 0.6.0 py 1.8.2 pyarrow 0.14.1 pyasn1 0.4.8 pyasn1-modules 0.2.8 pycocotools 2.0.1 pycparser 2.20 pydata-google-auth 1.1.0 pydot 1.3.0 pydot-ng 2.0.0 pydotplus 2.0.2 PyDrive 1.3.1 pyemd 0.5.1 pyglet 1.5.0 Pygments 2.1.3 pygobject 3.26.1 pymc3 3.7 PyMeeus 0.3.7 pymongo 3.10.1 pymystem3 0.2.0 PyOpenGL 3.1.5 pyparsing 2.4.7 pyrsistent 0.16.0 pysndfile 1.3.8 PySocks 1.7.1 pystan 2.19.1.1 pytest 3.6.4 python-apt 1.6.5+ubuntu0.3 python-chess 0.23.11 python-dateutil 2.8.1 python-louvain 0.14 python-slugify 4.0.0 python-utils 2.4.0 pytz 2018.9 PyWavelets 1.1.1 PyYAML 3.13 pyzmq 19.0.1 qtconsole 4.7.5 QtPy 1.9.0 regex 2019.12.20 requests 2.23.0 requests-oauthlib 1.3.0 resampy 0.2.2 retrying 1.3.3 rpy2 3.2.7 rsa 4.6 s3fs 0.4.2 s3transfer 0.3.3 scikit-image 0.16.2 scikit-learn 0.22.2.post1 scipy 1.4.1 screen-resolution-extra 0.0.0 scs 2.1.2 seaborn 0.10.1 Send2Trash 1.5.0 setuptools 47.3.1 setuptools-git 1.2 Shapely 1.7.0 simplegeneric 0.8.1 six 1.12.0 sklearn 0.0 sklearn-pandas 1.8.0 smart-open 2.0.0 snowballstemmer 2.0.0 sortedcontainers 2.2.2 spacy 2.2.4 Sphinx 1.8.5 sphinxcontrib-websupport 1.2.2 SQLAlchemy 1.3.17 sqlparse 0.3.1 srsly 1.0.2 statsmodels 0.10.2 sympy 1.1.1 tables 3.4.4 tabulate 0.8.7 tbb 2020.0.133 tblib 1.6.0 tensorboard 2.2.2 tensorboard-plugin-wit 1.6.0.post3 tensorboardcolab 0.0.22 tensorflow 2.2.0 tensorflow-addons 0.8.3 tensorflow-datasets 2.1.0 tensorflow-estimator 2.2.0 tensorflow-gcs-config 2.2.0 tensorflow-hub 0.8.0 tensorflow-metadata 0.22.2 tensorflow-privacy 0.2.2 tensorflow-probability 0.10.0 termcolor 1.1.0 terminado 0.8.3 testpath 0.4.4 text-unidecode 1.3 textblob 0.15.3 textgenrnn 1.4.1 Theano 1.0.4 thinc 7.4.0 tifffile 2020.6.3 toolz 0.10.0 torch 1.5.1+cu101 torchsummary 1.5.1 torchtext 0.3.1 torchvision 0.6.1+cu101 tornado 4.5.3 tqdm 4.41.1 traitlets 4.3.3 tweepy 3.6.0 typeguard 2.7.1 typing 3.6.6 typing-extensions 3.6.6 tzlocal 1.5.1 umap-learn 0.4.4 unidic-lite 1.0.6 uritemplate 3.0.1 urllib3 1.24.3 vega-datasets 0.8.0 wasabi 0.7.0 wcwidth 0.2.5 webencodings 0.5.1 Werkzeug 1.0.1 wheel 0.34.2 widgetsnbextension 3.5.1 wordcloud 1.5.0 wrapt 1.12.1 xarray 0.15.1 xgboost 0.90 xkit 0.0.0 xlrd 1.1.0 xlwt 1.3.0 yellowbrick 0.9.1 zict 2.0.0 zipp 3.1.0 ```
polm commented 4 years ago

@rcmdnk That's a different issue. Chasen (and also yomi) format is not a built-in feature of MeCab, it's an output format specified in ipadic config files, as explained in MeCab's documentation. The only built-in formats are wakati, dump, none, and em. Unidic has never supported the Chasen output format (it's not in the config file).

What's happening is when you specify the neologd path the neologd dicrc is being loaded and it specifies the Chasen format.

rcmdnk commented 4 years ago

Thanks for the quick reply, I understood. sorry for the noise.

polm commented 4 years ago

I just released a new version, 1.0.1, that makes error output clearer. In particular it links to a "common issues" section in the README (which makes it easier to update) and it runs the MeCab.Model code to get a useful error message.

Hopefully that will make issues like the ones raised in this thread easier to diagnose.

Since there were no actual bugs here I'm going to go ahead and close this for now, but if anyone posting here has an unresolved issue, let me know, whether here or in another issue.