Я конвертирую Java код, который использует StanfordCoreNLP в Python , который обращается к StanfordCoreNLPServer . Я вообще не Java-разработчик.
Java-код создает экземпляр StanfordCoreNLP pipeline
, используя следующие свойства.
Properties props = new Properties();
props.put("annotators", "tokenize, ssplit, pos, lemma, ner, regexner");
props.put("ner.model", serializedClassifier);
props.put("pos.model", posModel);
props.put("tokenize.language", "de");
props.put("ssplit.isOneSentence", "true");
props.put("ssplit.language", "de");
props.put("lemma.language", "de");
props.put("regexner.mapping", Init.REGEXNER);
StanfordCoreNLP pipeline = new StanfordCoreNLP(props);
Я создаю экземпляр конвейера Python следующим образом:
self.nlp = StanfordCoreNLP(host, port=port, timeout=30000)
self.props = {
'annotators': 'tokenize, ssplit, pos, lemma, ner, regexner',
'pipelineLanguage': 'de',
'tokenizeLanguage': 'de',
'outputFormat': 'json',
}
def annotate(self, sentence):
return json.loads(self.nlp.annotate(sentence, properties=self.props))
Вопрос , я не уверен, как преобразовать свойства java (такие как ner.model
) в ключи Python. Я предполагаю, что это будет что-то вроде nerModel
... однако при передаче объекта self.props
в бессмысленных ключах НЕ ОШИБКА. Итак, я не знаю, является ли ключ действительным или нет.
На странице Стэнфорда я не вижу документации по свойствам для Python.