2022-01-13 20:23:35 +04:00
|
|
|
|
#!/usr/bin/env python3
|
|
|
|
|
|
|
|
|
|
import sys
|
|
|
|
|
|
2022-01-25 16:08:20 +04:00
|
|
|
|
from src.myontology import MyOntology
|
2023-06-03 00:19:03 +04:00
|
|
|
|
from src.nlp import NLP
|
|
|
|
|
from src.parse_tree.parse_tree import ParseTree
|
|
|
|
|
from src.syntax import Syntax
|
2023-06-02 17:48:33 +04:00
|
|
|
|
|
2023-06-03 00:19:03 +04:00
|
|
|
|
test_data = [
|
|
|
|
|
'как получить кредит на обучение',
|
|
|
|
|
'Как получить кредит на образование?',
|
|
|
|
|
'Можно ли купить товар в рассрочку?',
|
|
|
|
|
'какая ставка кредита на ипотеку?',
|
|
|
|
|
'Самая низкая ставка по кредиту?',
|
|
|
|
|
'Как оформить кредит?',
|
|
|
|
|
'Ставка кредита',
|
|
|
|
|
'Какая ставка кредита на ипотеку?',
|
|
|
|
|
'Как получить деньги с заблокированной карты?',
|
|
|
|
|
'Как снять деньги с заблокированной карты',
|
|
|
|
|
'Какой баланс карты',
|
|
|
|
|
'Какой лимит карты',
|
|
|
|
|
'Почему не проходит оплата, хотя деньги есть',
|
|
|
|
|
'Сколько денег на карте',
|
|
|
|
|
'Сколько денег на счете',
|
|
|
|
|
'Как разблокировать карту?',
|
|
|
|
|
'Как заблокировать карту?',
|
|
|
|
|
'Какие условия по ипотеке?',
|
|
|
|
|
'Какие условия кредита на жилье',
|
|
|
|
|
'Какой срок кредита на жилье',
|
|
|
|
|
'Какой срок ипотеки',
|
|
|
|
|
'Я потеряла карту. Что делать?',
|
|
|
|
|
'Карта застряла в банкомате. Что делать?',
|
|
|
|
|
'У меня украли карту. Что делать?',
|
|
|
|
|
'Какой остаток по карте?',
|
|
|
|
|
'Хочу купить дом',
|
|
|
|
|
'Хочу купить дом . Что делать?',
|
|
|
|
|
'Можно ли купить товар в кредит?',
|
|
|
|
|
'Какой срок по ипотеке',
|
|
|
|
|
'Хочу купить дом в кредит Что делать?',
|
|
|
|
|
'Можно ли снизить ставку по кредиту?',
|
|
|
|
|
'Можно ли рефинансировать кредит?',
|
|
|
|
|
'Можно ли снизить ставку по кредиту другого банка?',
|
|
|
|
|
'У меня кредит в другом банке. Можно ли его перевести в ваш банк?',
|
|
|
|
|
'Можно провести рефинансирование кредита?',
|
|
|
|
|
'Можно ли рефинансировать ипотеку?'
|
2023-06-02 17:48:33 +04:00
|
|
|
|
]
|
2022-01-13 20:23:35 +04:00
|
|
|
|
|
|
|
|
|
|
2022-01-27 23:15:40 +04:00
|
|
|
|
def _main(wav_file: str):
|
2023-05-31 00:05:42 +04:00
|
|
|
|
# text: str = Speech().run_recognition(wav_file)
|
2023-06-02 17:48:33 +04:00
|
|
|
|
# text: str = 'Как получить деньги с заблокированной карты?'
|
2023-06-03 00:19:03 +04:00
|
|
|
|
for text in test_data:
|
|
|
|
|
print(f'Text: {text}')
|
|
|
|
|
parse_tree: ParseTree = Syntax().get_parse_tree(text)
|
|
|
|
|
print(f'Parse tree:\n{parse_tree}')
|
|
|
|
|
terms = NLP().get_terms(parse_tree)
|
|
|
|
|
print(f'Extracted terms:\n\t{", ".join(terms)}')
|
|
|
|
|
result: str = MyOntology().get_events(terms)
|
2023-06-02 17:48:33 +04:00
|
|
|
|
print(f'Result:\n{result}')
|
|
|
|
|
print()
|
2022-01-13 20:23:35 +04:00
|
|
|
|
|
|
|
|
|
if __name__ == '__main__':
|
2022-01-27 23:15:40 +04:00
|
|
|
|
if len(sys.argv) < 2:
|
|
|
|
|
print(f'Usage: {sys.argv[0]} FILE')
|
|
|
|
|
exit(1)
|
|
|
|
|
_main(sys.argv[1])
|