paddle coredump exception fix (#807)

* paddle_null_point_fix

* add core expception note

* delete yield

* modify test paddle for supporting enable_paddle()
This commit is contained in:
JesseyXujin 2020-01-10 16:30:46 +08:00 committed by Sun Junyi
parent dc2b788eb3
commit d703bce302
4 changed files with 7 additions and 4 deletions

3
jieba/__init__.py Normal file → Executable file
View File

@ -298,8 +298,9 @@ class Tokenizer(object):
is_paddle_installed = check_paddle_install['is_paddle_installed']
sentence = strdecode(sentence)
if use_paddle and is_paddle_installed:
# if sentence is null, it will raise core exception in paddle.
if sentence is None or sentence == "" or sentence == u"":
yield sentence
return
import jieba.lac_small.predict as predict
results = predict.get_sent(sentence)
for sent in results:

View File

@ -279,8 +279,9 @@ def cut(sentence, HMM=True, use_paddle=False):
"""
is_paddle_installed = check_paddle_install['is_paddle_installed']
if use_paddle and is_paddle_installed:
# if sentence is null, it will raise core exception in paddle.
if sentence is None or sentence == "" or sentence == u"":
yield pair(None, None)
return
import jieba.lac_small.predict as predict
sents, tags = predict.get_result(strdecode(sentence))
for i, sent in enumerate(sents):

2
test/test_paddle.py Normal file → Executable file
View File

@ -2,7 +2,7 @@
import sys
sys.path.append("../")
import jieba
jieba.enable_paddle()
def cuttest(test_sent):
result = jieba.cut(test_sent, use_paddle=True)

3
test/test_paddle_postag.py Normal file → Executable file
View File

@ -2,7 +2,8 @@
import sys
sys.path.append("../")
import jieba.posseg as pseg
import jieba
jieba.enable_paddle()
def cuttest(test_sent):
result = pseg.cut(test_sent, use_paddle=True)