Мой вывод производится с использованием stanford-spanish-corenlp-2017-06-09-models.jar
, который можно скачать здесь: https://nlp.stanford.edu/software/lex-parser.shtml#Download
По некоторым причинам использование более новых версий файла models.jar
приводит к другим результатам.
Удостоверьтесь и положите испанский .jar
в папку с остальной частью Stanford Core NLP (я использовал последнюю 2018-10-05
).
Затем, когда вы запускаете сервер Stanford Core NLP, убедитесь и запустите его на испанском языке:
java -mx3g -cp "*" edu.stanford.nlp.pipeline.StanfordCoreNLPServer -serverProperties StanfordCoreNLP-spanish.properties -port 9000 -timeout 15000
Обратите внимание, что испанский экземпляр CoreNLPTagger
использует другой набор тегов, который подробно описан на странице Часто задаваемые вопросы по испанскому языку .
from nltk.parse.corenlp import CoreNLPParser
parser = CoreNLPParser(url='http://localhost:9000')
parsed = parser.raw_parse('si idioma no es elegido entonces elegir español por defecto.')
for node in parsed:
print(node)
Пример вывода ниже:
(ROOT
(sentence
(S
(S
(conj (cs si))
(sn (grup.nom (nc0s000 idioma)))
(neg (rn no))
(grup.verb (vsip000 es)))
(S (participi (aq0000 elegido))))
(S
(sadv (grup.adv (rg entonces)))
(S
(infinitiu (vmn0000 elegir))
(s.a (grup.a (aq0000 español)))
(sp (prep (sp000 por)) (sn (grup.nom (nc0s000 defecto))))))
(fp .)))