def vote_info()

in python/passage_retrieval_processing.py [0:0]


def vote_info(answers, question_text, keep_markup):
    best_up_count = -999
    top_answers = []
    top_answer = None
    bottom_answers = []
    for idx, answer in enumerate(answers):
        if "upvote_count" in answer.keys():
            if int(clean_votes(answer["upvote_count"])) > best_up_count:
                if "text_markup" in answer.keys():
                    answer_text = extract_text(answer["text_markup"], keep_markup)
                    top_answer = answer_text
                    best_up_count = int(clean_votes(answer["upvote_count"]))
                    best_idx = idx
    if top_answer is None:
        for idx, answer in enumerate(answers):
            if "text_markup" in answer.keys():
                answer_text = extract_text(answer["text_markup"], keep_markup)
                top_answer = answer_text
                best_idx = idx
    top_answers.append(top_answer)
    answers.pop(best_idx)
    for answer in answers:
        if "upvote_count" in answer.keys():
            if int(clean_votes(answer["upvote_count"])) > 1:
                if "text_markup" in answer.keys():
                    answer_text = extract_text(answer["text_markup"], keep_markup)
                    top_answers.append(answer_text)
            else:
                if "text_markup" in answer.keys():
                    answer_text = extract_text(answer["text_markup"], keep_markup)
                    bottom_answers.append(answer_text)
    top_answers, bottom_answers, has_non_empty_answer = clean_answer(
        top_answers, bottom_answers
    )
    if top_answers is not None and len(top_answers) > 0:
        if has_non_empty_answer:
            return {
                "question": question_text,
                "answers": [],
                "positive_ctxs": [
                    {"title": "", "text": top_answer} for top_answer in top_answers
                ],
                "hard_negative_ctxs": [
                    {"title": "", "text": bottom_answer}
                    for bottom_answer in bottom_answers
                ],
            }