为spaCy添加新语言:引理查找问题



我正在为古希腊语(grc(编写一个新的spacy语言类,它在标记器级别工作,但未能在我根据语料库构建的词典中进行引理查找。当我在spacy_lookups_data的相应目录中使用python-m pytest spacy_llookups_data并使用我编写的测试文件运行查找表的测试时,我得到以下错误:

grc_nlp=<0x7fe8a8696730处的spacy.lang.grc.AncientGreek对象>,string='μι',引理='ἐγ′

@pytest.mark.parametrize(
"string,lemma",
[
("ἄνδρα", " ἀνήρ"),
("μοι", " ἐγώ"),
("πολύτροπον", "πολύτροπονος"),
("ὃς", "ὃς"),
("πολλὰ", "πολύς"),
("Τροίης", "Τροία"),
],
)
def test_grc_lemmatizer_lookup_assigns(grc_nlp, string, lemma):
tokens = grc_nlp(string)
assert tokens[0].lemma_ == lemma

E断言错误:assert‘μἐγE-ἐγE+μι

test_grc.py:26:断言错误_test_grc_lemmatizer_lookup_assignes[\u03c0\u03bf\u03bb\u03cd\u03c4\u03c1\u03bf\u03c0\u203bf\u03 bd-\u03c0\u03 bf\u03 bb\u03 cd\u03 c4\u03 c1\u03 bf\u03 c0\u03 bf\u03bd\u03 bf \u03 c2]_

我在测试文件中写的所有5个引理都有类似的错误。这可能是一个与unicode有关的错误吗?也许希腊多面体字符在spacy字符定义中缺失了?我怀疑这是因为古代使用的变音符号可能得不到spacy的支持。还是这个错误指向了我引理表的一个问题?

谢谢。

Jacobo

这可能不是unicode的问题。您是否在setup.cfgspacy_lookups_data/__init__.py中添加了入口点并重新安装了spacy-lookups-data软件包?

最新更新