示例#1
0
def reserve_list(request):
    question = request.form['msg']
    collect_q = False
    _, answer_num = run.run_chatbot(enc_vocab, rev_dec_vocab, question,
                                    collect_q, language)
    if answer_num == '':
        _, answer_num = run.run_chatbot(enc_vocab, rev_dec_vocab,
                                        question + ' ', collect_q, language)
    q_list = []
    print(question, answer_num)
    answer_num_arr = answer_num.split(";")
    for aa in answer_num_arr:
        q_list.append(answer_num_and_rpsn_question[aa])
    num = len(q_list)
    res = {'num': str(num)}
    for i in range(num):
        res['text' + str(i + 1)] = q_list[i]
    bucket_id = bucket_util.get_bucket_id_by_sentence(buckets, question)
    res['bucket_id'] = bucket_id
    res['bucket_range'] = ''
    if bucket_id < len(buckets) - 1:
        res['bucket_range'] = buckets[bucket_id] + '~' + str(
            int(buckets[bucket_id + 1]) - 1)
    else:
        res['bucket_range'] = buckets[bucket_id] + '~∞'

    return jsonify(res)
示例#2
0
def search_bucket_id_by_sentence(request):
    req_dict = eval(request.data.decode('utf8'))
    user = req_dict['user']
    project = req_dict['project']
    question = req_dict['question']
    buckets = db_training_config.get_bucket(user, project).split(",")
    res = bucket_util.get_bucket_id_by_sentence(buckets, question)
    
    return jsonify(res)
示例#3
0
def search_question(request):
    req_dict = eval(request.data.decode('utf8'))
    answer_num = req_dict['answer_num']
    user = req_dict['user']
    project = req_dict['project']
    res = qna.search_question(answer_num, user, project)
    buckets = db_training_config.get_bucket(user, project).split(",")
    for i in range(len(res)):
        question = res[i]['question']
        res[i]['bucket_id'] = bucket_util.get_bucket_id_by_sentence(buckets, question)
    
    return jsonify(results = res)
示例#4
0
def search_question_and_bucket_id(request):
    req_dict = eval(request.data.decode('utf8'))
    user = req_dict['user']
    project = req_dict['project']
    partner_id = req_dict['partner_id']
    admin_yn = req_dict['admin_yn']
    readonly_yn = req_dict['readonly_yn']
    question_nm = req_dict['question_nm']
    answer_num = req_dict['answer_num']
    bucket_id = req_dict['bucket_id']
    res = qna.search_question_by_question_nm_and_answer_num(
        '', answer_num, user, project, partner_id, admin_yn, readonly_yn)
    buckets = db_training_config.get_bucket(user, project).split(",")
    filtered_answer_num_arr = []
    for i in range(len(res)):
        question = res[i]['question']
        if question_nm in question:
            filtered_answer_num_arr.append(res[i]['answer_num'])
        res[i]['bucket_id'] = bucket_util.get_bucket_id_by_sentence(
            buckets, question)

    new_res = []
    for i in range(len(res)):
        if res[i]['answer_num'] in filtered_answer_num_arr:
            new_res.append(res[i])

    res = sorted(new_res, key=lambda x: (x["bucket_id"], x["answer_num"]))

    if bucket_id != '':
        new_res = []
        for i in range(len(res)):
            if res[i]['bucket_id'] == bucket_id:
                new_res.append(res[i])
        return jsonify(results=new_res)

    return jsonify(results=res)