NLTK CoreNLPDependencyParser: N'a pas réussi à établir une connexion

j'essaie d'utiliser le Stanford Parser par NLTK, en suivant l'exemple ici .

je suis les deux premières lignes de l'exemple (avec l'importation nécessaire)

from nltk.parse.corenlp import CoreNLPDependencyParser
dep_parser = CoreNLPDependencyParser(url='http://localhost:9000')
parse, = dep_parser.raw_parse('The quick brown fox jumps over the lazy dog.')

mais je reçois une erreur disant:

[...] Failed to establish a new connection: [Errno 61] Connection refused"

je me rends compte que ça doit être un problème d'essayer de se connecter à l'url donnée en entrée au constructeur.

dep_parser = CoreNLPDependencyParser(url='http://localhost:9000')

quelle url devrais-je être? connectez, si ce pas? Si tel est le cas, quel est le problème?

2
demandé sur mxdg 2017-12-01 03:15:12

1 réponses

vous devez d'abord télécharger et exécuter le serveur CoreNLP sur localhost:9000 .

1) Télécharger CoreNLP à https://stanfordnlp.github.io/CoreNLP/download.html

2) décompressez les fichiers dans un répertoire puis lancez la commande suivante dans ce répertoire pour démarrer le serveur

java -mx4g -cp "*" edu.stanford.nlp.pipeline.StanfordCoreNLPServer -port 9000 -timeout 15000

Réf: https://stanfordnlp.github.io/CoreNLP/corenlp-server.html

le résultat du code ci-dessus est comme

>>> print(parse.to_conll(4))
The DT  4   det
quick   JJ  4   amod
brown   JJ  4   amod
fox NN  5   nsubj
jumps   VBZ 0   ROOT
over    IN  9   case
the DT  9   det
lazy    JJ  9   amod
dog NN  5   nmod
.   .   5   punct

vous pouvez également démarrer le serveur via L'API NLTK (besoin de configurer la variable d'environnement CORENLP_HOME en premier)

os.environ["CORENLP_HOME"] = "dir"
client = corenlp.CoreNLPClient()
# do something
client.stop()
0
répondu dontloo 2018-08-09 04:22:59