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.