forked from vivianLL/QASystemOnHepatopathyKG
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathchatbot_graph.py
37 lines (32 loc) · 1.15 KB
/
chatbot_graph.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#!/usr/bin/env python3
# coding: utf-8
# File: chatbot_graph.py
# Author: lhy<[email protected],https://huangyong.github.io>
# Date: 18-10-4
from question_classifier import *
from question_parser import *
from answer_search import *
'''问答类'''
class ChatBotGraph:
def __init__(self):
self.classifier = QuestionClassifier()
self.parser = QuestionPaser()
self.searcher = AnswerSearcher()
def chat_main(self, sent):
answer = '您好,我是肝病问答小助手,希望可以帮到您。祝您身体健康!'
res_classify = self.classifier.classify(sent)
print(res_classify)
if not res_classify:
return '抱歉,小助手暂时无法回答您的问题,请咨询医生。'
res_sql = self.parser.parser_main(res_classify)
final_answers = self.searcher.search_main(res_sql)
if not final_answers:
return answer
else:
return '\n'.join(final_answers)
if __name__ == '__main__':
handler = ChatBotGraph()
while 1:
question = input('用户:')
answer = handler.chat_main(question)
print('小助手:', answer)