Using CoreNLP within other programming languages and packages (original) (raw)

Table of contents


Below are interfaces and packages for running Stanford CoreNLP from other languages or within other packages. They have been written by many other people (thanks!). In general you should contact these people directly if you have problems with these packages.

C#/F#/.NET

Previously

Clojure

Docker

Okay, Docker isn’t a language, but you know what we mean….

And there are about 200 others – it’s not so hard to build a dockerfile! Here’s a list, which includes a number of dockerfiles setup to run CoreNLP with different human languages:

Note on running the CoreNLP server under docker: The container’s port 9000 has to be published to the host. For example, give a command like: docker run -p 9000:9000 -itd --name CoreNLP graham3333/corenlp-complete. If, when going to localhost:9000/, you see the error This site can’t be reached. localhost refused to connect, then this is what you failed to do!

Elixir

Go (golang)

Java

JavaScript (node.js)

Caution: Disrecommended

Lua

Perl

PHP

Python

Official Stanza Package by the Stanford NLP Group

We are actively developing a Python package called Stanza, with state-of-the-art NLP performance enabled by deep learning. Besides, this package also includes an API for starting and making requests to a Stanford CoreNLP server. It is the recommended way to use Stanford CoreNLP in Python.

Packages using the Stanford CoreNLP server

These packages use the Stanford CoreNLP server that we’ve developed over the last couple of years.

Miscellaneous Python packages

These packages are miscellaneous utilities or other frameworks that use Stanford CoreNLP.

Older Python packages

These are previous generation Python interfaces to Stanford CoreNLP, using a subprocess or their own server. They are now not generally being developed and are obsolete. (But thanks a lot to the people who wrote them in the early days!)

R (CRAN)

Ruby

Scala

Thrift server

XQuery

ZeroMQ/ØMQ servers