def find_match(): side = int(f.request.form['side']) assert side in [0, 1] _id = f.request.form['_id'] first = DEST if side else ORIGIN second = ORIGIN if side else DEST query, res_ids, answers, dsts, among = cn.find_closest(_id, first, second) _ = cn.interpret(first['features'][query, :], second['features'][answers[0], :]) query_info, first_answer, feature_order = _ answers_info = [first_answer] answers_info.extend([ cn.interpret(first['features'][query, :], second['features'][answer, :], feature_order)[1] for answer in answers[1:] ]) sendf = lambda x, p: ('{:.' + str(p) + 'f}').format(float(x)) res = { 'query': query_info, 'answers_id': list(res_ids), 'distances': [sendf(d, 5) for d in dsts], 'explanations': answers_info, 'among': among } return f.jsonify(r=res)
def find_match(): side = int(f.request.form['side']) assert side in [0, 1] _id = f.request.form['_id'] first = DEST if side else ORIGIN second = ORIGIN if side else DEST query, res_ids, answers, dsts, among = cn.find_closest(_id, first, second) _ = cn.interpret(first['features'][query, :], second['features'][answers[0], :]) query_info, first_answer, feature_order = _ answers_info = [first_answer] answers_info.extend([cn.interpret(first['features'][query, :], second['features'][answer, :], feature_order)[1] for answer in answers[1:]]) sendf = lambda x, p: ('{:.'+str(p)+'f}').format(float(x)) res = {'query': query_info, 'answers_id': list(res_ids), 'distances': [sendf(d, 5) for d in dsts], 'explanations': answers_info, 'among': among} return f.jsonify(r=res)