Exemplo n.º 1
0
def predict(generator, text):
    """
    Args:
        generator: 生成器
        text: 
    Return:
        response:
        
    predict
    """
    model_text, topic_dict = \
        preprocessing_for_one_conversation(text.strip(), \
                                           topic_generalization=True)

    src, tgt, cue = model_text.split('\t')
    cue = cue.split('\1')

    response = generator.interact(src, cue)

    topic_list = sorted(topic_dict.items(),
                        key=lambda item: len(item[1]),
                        reverse=True)
    for key, value in topic_list:
        response = response.replace(key, value)

    return response
Exemplo n.º 2
0
def predict(model, text):
    """
    predict
    """
    model_text, candidates = \
        preprocessing_for_one_conversation(text.strip(),
                                           candidate_num=50,
                                           use_knowledge=True,
                                           topic_generalization=True,
                                           for_predict=True)

    for i, text_ in enumerate(model_text):
        score = interact.predict(model, text_, task_name="match_kn_gene")
        candidates[i] = [candidates[i], score]

    candidate_legal = sorted(candidates,
                             key=lambda item: item[1],
                             reverse=True)
    return candidate_legal[0][0]
Exemplo n.º 3
0
def predict(model, text):
    """
    predict
    """
    model_text, topic_dict = \
        preprocessing_for_one_conversation(text.strip(), topic_generalization=True)

    if isinstance(model_text, unicode):
        model_text = model_text.encode('utf-8')

    response = network.predict(model, model_text)

    topic_list = sorted(topic_dict.items(),
                        key=lambda item: len(item[1]),
                        reverse=True)
    for key, value in topic_list:
        response = response.replace(key, value)

    return response