taishi-i / nagisa

A Japanese tokenizer based on recurrent neural networks
https://huggingface.co/spaces/taishi-i/nagisa-demo
MIT License
379 stars 22 forks source link

core dumped #27

Open ryanswilson59 opened 2 years ago

ryanswilson59 commented 2 years ago

I am running manjaro linux on a thinkpad x230, using python 3.9.7 and the version of nagisa from pip. When i run import nagisa i get Illegal instruction (core dumped)

taishi-i commented 2 years ago

Hi @ryanswilson59 ! Thank you for using nagisa and letting me know about the error.

I have confirmed that it works with Python 3.9.7 on ubuntu 20.04 as follows. Could you tell me what OS you are using (e.g. ubuntu 20.04) and a snippet of the error? I find the cause of the error.

Python 3.9.7 (default, Oct 24 2021, 00:42:03) 
[GCC 9.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import nagisa
[dynet] random seed: 1234
[dynet] allocating memory: 32MB
[dynet] memory allocation done.
>>> text = 'Pythonで簡単に使えるツールです'
>>> words = nagisa.tagging(text)
>>> print(words)
Python/名詞 で/助詞 簡単/形状詞 に/助動詞 使える/動詞 ツール/名詞 です/助動詞
ryanswilson59 commented 2 years ago

2021-10-23_12-18 I mentioned that I am using a thinkpad x230 because it might be a hardware issue possibly, given that it says illegal instruction.

taishi-i commented 2 years ago

Thank you for the information. I used CI tools to check work with Python 3.9 on ubuntu. It works fine with ubuntu ( CI result 1, CI result 2).

However, I have not tested it on Manjaro Linux. Manjaro Linux may be the cause. I'll check and let you know as soon as I find out. By the way, does it work with Python 3.8?

t-sagara commented 2 years ago

@ryanswilson59 The same thing happened to me. In my case, regardless of nagisa, simply importing dynet will core dump.

$ python
Python 3.8.3 (default, Feb 12 2021, 11:03:57)
[GCC 7.5.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import dynet
[dynet] random seed: 2343116669
Illegal instruction (core dumped)

The solution is uninstall dyNET38, which is automatically installed by nagisa, and install dynet instead.

$ pip uninstall dyNET38
$ pip install dynet
$ python
Python 3.8.3 (default, Feb 12 2021, 11:03:57)
[GCC 7.5.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import nagisa
[dynet] random seed: 1234
[dynet] allocating memory: 32MB
[dynet] memory allocation done.
>>> text = 'Python で簡単に使えるツールです。'
>>> words = nagisa.tagging(text)
>>> words
<nagisa.tagger.Tagger._Token object at 0x7f57c64a1310>
>>> print(words)
Python/名詞  /空白 で/助詞 簡単/形状詞 に/助動詞 使える/動詞 ツール/名詞 です/助動詞 。/補助記号
>>> exit()