I'm looking for library(es) or service(s), that can process natural Russian language:

  1. Transforming words into initial form: "Они строили" => "они", "строить"
  2. Recognise and extract combination of words: "Они строили железную дорогу" => "они", "строить", "железная дорога"
  3. Not sure how to describe this: "Они не строили железную дорогу" => "они" "не строить", "железная дорога"
  4. Interpret idioms or figures of speech: "ну и погодка" => "плохая погода"

Any suggestions? Libraries, services, sources of information - anything.

  • 1
    Might be useful to include for what programming language(s) the libraries should be :)
    – Izzy
    Sep 1, 2018 at 10:55
  • Language doesn't matter, i'll use the most suitable one for this case
    – stkvtflw
    Sep 1, 2018 at 15:27

1 Answer 1


My goto for any natural language work is NLTK which in its own words is:

NLTK is a leading platform for building Python programs to work with human language data. It provides easy-to-use interfaces to over 50 corpora and lexical resources such as WordNet, along with a suite of text processing libraries for classification, tokenization, stemming, tagging, parsing, and semantic reasoning, wrappers for industrial-strength NLP libraries, and an active discussion forum.

Thanks to a hands-on guide introducing programming fundamentals alongside topics in computational linguistics, plus comprehensive API documentation, NLTK is suitable for linguists, engineers, students, educators, researchers, and industry users alike. NLTK is available for Windows, Mac OS X, and Linux. Best of all, NLTK is a free, open source, community-driven project.

It includes taggers, stemming, corpus reading & processing, tokenizing, etc. for Russian as well as many other languages.

I would suggest reading the NLTK book available here.

Note that python & NLTK can be embedded in programs written in a number of other languages, can be called as a service or can run a local web server.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.