def init_chatbot(): if 'bot' not in flask_app.config: logging.info(u'init_chatbot: models_folder={}'.format(models_folder)) text_utils = TextUtils() text_utils.load_dictionaries(data_folder) facts_storage = Files3FactsStorage(text_utils=text_utils, facts_folder=facts_folder) machine = SimpleAnsweringMachine(text_utils=text_utils) machine.load_models(data_folder, models_folder, w2v_folder) scripting = BotScripting(data_folder) bot = BotPersonality(bot_id='flask_bot', engine=machine, facts=facts_storage, scripting=scripting, enable_scripting=True, enable_smalltalk=True) oct = OrderComprehensionTable() oct.load_file(os.path.join( data_folder, 'orders.txt')) # загружаем таблицу интерпретации приказов bot.set_order_templates(oct) def on_order(order_anchor_str, bot, session): bot.say(session, u'Выполняю команду \"{}\"'.format(order_anchor_str)) bot.on_process_order = on_order flask_app.config['bot'] = bot logging.info('init_chatbot complete')
def init_chatbot(): logging.info(u'init_chatbot: models_folder={}'.format(models_folder)) text_utils = TextUtils() text_utils.load_dictionaries(data_folder) facts_storage = Files3FactsStorage(text_utils=text_utils, facts_folder=facts_folder) bot = SimpleAnsweringMachine(facts_storage=facts_storage, text_utils=text_utils) bot.load_models(models_folder, w2v_folder) scripting = BotScripting(data_folder) bot.set_scripting(scripting) flask_app.config['bot'] = bot logging.info('init_chatbot complete')
facts_folder = os.path.expanduser(args.facts_folder) models_folder = os.path.expanduser(args.models_folder) data_folder = os.path.expanduser(args.data_folder) w2v_folder = os.path.expanduser(args.w2v_folder) telegram_token = args.token if len(telegram_token) == 0: telegram_token = input_kbd('Enter Telegram token:') # ------------------------------------------------------- bot = telegram.Bot(token=telegram_token) print(bot.getMe()) logging.info('Loading answering machine models...') text_utils = TextUtils() text_utils.load_dictionaries(data_folder) facts_storage = Files3FactsStorage(text_utils=text_utils, facts_folder=facts_folder) answering_machine = SimpleAnsweringMachine( facts_storage=facts_storage, text_utils=text_utils) bot.load_models(models_folder, w2v_folder) # ------------------------------------------------------ updater = Updater(token=telegram_token) dispatcher = updater.dispatcher # ------------------------------------------------------- start_handler = CommandHandler('start', start)
init_trainer_logging('../../tmp/order_translator_srv.log' ) # TODO: set folder for logging by command line # app = Flask(__name__, template_folder="templates") # To enable swagger UI console: # pip install connexion[swagger-ui] options = {"swagger_ui": True} app = connexion.App(__name__, specification_dir='./', options=options) app.add_api('swagger.yml') logging.info('Initialize parser') text_utils = TextUtils() # text_utils.load_dictionaries('../') engine = OrderTranslatorEngine(text_utils) engine.load_model('../../tmp') engine.load_anchor_orders('../../data/test_orders.txt') set_engine(engine) @app.route('/') def home(): return render_template('home.html') if __name__ == '__main__': app.run(host='127.0.0.1', port=5000, debug=True)