1234567891011121314151617181920212223242526272829303132333435363738 |
- from question_classifier import *
- from question_parser import *
- from answer_search import *
- from process import process
- '''问答类'''
- class ChatBotGraph:
- def __init__(self):
- self.classifier = QuestionClassifier()
- self.parser = QuestionParser()
- self.searcher = AnswerSearcher()
-
- def chat_main(self, sent):
- answer = '抱歉,我不知道'
- if(";" in sent):
- return process(sent)
- res_classify = self.classifier.classify(sent)
- if not res_classify:
- answer = '完全找不到对应实体'
- return answer
- res_sql = self.parser.parser_main(res_classify)
- final_answers = self.searcher.search_main(res_sql)
- if not final_answers:
- answer = '未查到' + list(res_classify['args'].keys())[0] +'对应的' + res_classify['question_types'][0]
- return answer
- else:
- return '\n'.join(final_answers)
- if __name__ == '__main__':
- handler = ChatBotGraph()
- while 1:
- question = input('用户:')
- answer = handler.chat_main(question)
- print('回答:', answer)
|