Skip to content

Subject-verb-object triplets extraction for russian language.

Notifications You must be signed in to change notification settings

dmitry-rvn/ru-svo-triplets

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Subject-verb-object triplets extractor for russian language with stanza library and own heuristics.

Python 3.9+

Prerequisites:

pip install -r requirements
python -c "import stanza; stanza.download('ru')"

Example:

import stanza

from svo.extractor import extract_svo


text = """
Мальчик купил интересную книгу, а через неделю он прочитал её.
Мужчина утром купил газету, а потом выпил кофе.
Сегодня охранник не рассказал анекдот, потому что ему было грустно.
Девушка искала ресторан и слушала музыку в наушниках.
Сегодня мой друг решил сделать приятный подарок.
Утром брат решил пойти выпить всё молоко.
Внезапно я решил прекратить ходить выпивать пиво по выходным.
Я решил отдохнуть и посмотреть новый фильм.
Она решила найти сериал и завтра его посмотреть.
"""


nlp = stanza.Pipeline(lang='ru', processors='tokenize,pos,lemma,depparse')
doc = nlp(text)

for phrase in extract_svo(doc):
    print(str(phrase))

Output:

Мальчик купил книгу
он прочитал её
Мужчина купил газету
Мужчина выпил кофе
охранник не рассказал анекдот
Девушка искала ресторан
Девушка слушала музыку
друг решил сделать подарок
брат решил пойти выпить молоко
я решил прекратить ходить выпивать пиво
Я решил посмотреть фильм
Она решила найти сериал
Она решила его посмотреть

Run tests:

pytest -v

About

Subject-verb-object triplets extraction for russian language.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages