Как нарисовать дерево зависимостей из результата парсинга CoreNLPClient?

Мне нужно дерево зависимостей для результата синтаксического анализа. Я провел синтаксический анализ, используя код, указанный в репозитории github stanford core nlp

Я получил следующий результат.[Скриншот результата блокнота jupyter][1]

Я видел другие ответы, в которых упоминались graphviz и todoformat(), но эти методы требуют ввода формата семантикграфа (насколько я знаю, todoformat делает). Мне удалось преобразовать результат синтаксического анализа в следующий формат, но это список строк.[новый формат результата][2] Как я видел другие форматы результатов, подобные этому. Что я могу сделать, чтобы получить график дерева зависимостей? Будет ли изменен результат, который я получаю, в форму, которая работает для todoformat? Я новичок в этом. Буду очень признателен за вашу помощь. [1]: https://stackru.com/images/6e08faa5d870c37137a5ead46f4c92680bf1bc8f.png [2]: https://stackru.com/images/1f1178a2b677158f329719ef6ed4349b7c67ea0e.png

Код:

with CoreNLPClient(annotators=['tokenize','ssplit','pos','lemma','ner','parse','depparse','coref'], timeout=60000, memory='16G') as client:
    # submit the request to the server
    ann = client.annotate(text)
    sentence = ann.sentence[0]
    print('dependency parse of first sentence')
    dependency_parse = sentence.basicDependencies
    print(dependency_parse)````


1 ответ

from stanza.server import CoreNLPClient
client = CoreNLPClient(
        annotators=['tokenize','ssplit','pos','lemma','ner', 'parse', 'openie','depparse','coref'],
        timeout=30000,
        memory='16G')

test ="A man and a woman came into the store."
matches = client.tregex(text, 'S')
print(matches['sentences'][0]['0']['match'])
Другие вопросы по тегам