This docker container allows you to build, install and run the DPLP RST discourse parser (Ji and Eisenstein 2014) in a docker container.
DPLP uses CoreNLP to generate parse trees from the input. We will run it as a server, so that the language models only have to be loaded once:
docker run -p 9000:9000 nlpbox/corenlp:3.9.2
You can check that it runs correctly by visiting [http://localhost:9000] in your browser. Now you can install dplp-docker:
git clone https://github.com/NLPbox/dplp-docker
cd dplp-docker
docker build -t dplp .
To test if parser works, just run docker run --net host dplp
.
To run the parser on the file /tmp/input.txt
on your
local machine, run:
docker run --net host -v /tmp:/tmp -ti dplp /tmp/input.txt
If you run CoreNLP on a different host, then you'll need to set the
CORENLP_ENDPOINT
variable, e.g.
docker run -e CORENLP_ENDPOINT=http://example.com:9000 --net host -v /tmp:/tmp -ti dplp /tmp/input.txt
Although they didn't like it, they accepted the offer.
0 1 Although although IN mark 3 O (ROOT (SBAR (IN Although) 1
0 2 they they PRP nsubj 3 O (S (NP (PRP they)) 1
0 3 didn't didn't VBP root 0 O (VP (VBP didn't) 1
0 4 like like IN case 5 O (PP (IN like) 1
0 5 it, it, NN nmod 3 O (NP (NP (NN it,)) 1
0 6 they they PRP nsubj 7 O (SBAR (S (NP (PRP they)) 2
0 7 accepted accept VBD acl:relcl 5 O (VP (VBD accepted) 2
0 8 the the DT det 9 O (NP (DT the) 2
0 9 offer. offer. NN dobj 7 O (NN offer.))))))))))) 2
ParentedTree('NS-elaboration', [ParentedTree('EDU', ['1']), ParentedTree('EDU', ['2'])])
Yangfeng Ji, Jacob Eisenstein (2014). Representation Learning for Text-level Discourse Parsing. Proceedings of the 52nd Annual Meeting of the Association for Computational Linguistics, pages 13-24.