Пример #1
0
def show_markup(recipe, tags):
    mapper = lambda tag: tag[2:] if tag != 'OTHER' else tag

    tags = [mapper(tag) for tag in tags]
    text = ' '.join(recipe)
    spans = []

    start, end, tag = 0, len(recipe[0]), tags[0]

    for word, ttag in zip(recipe[1:], tags[1:]):

        if tag == ttag:
            end += 1 + len(word)

        else:
            span = (start, end, tag)
            spans.append(span)

            start = 1 + end
            end += 1 + len(word)
            tag = ttag

    span = (start, end, tag)
    spans.append(span)

    show_box_markup(text, spans, palette=PALETTE)
Пример #2
0
def rasa_nlu_vis(sents, host_and_port: Text = 'http://localhost:5005'):
    from ipymarkup import show_box_markup

    result = rasa_nlu_parse(sents, host_and_port=host_and_port)
    if len(result) > 0:
        ents = result['entities']
        spans = [(w['start'], w['end'], w['entity']) for w in ents]
        show_box_markup(sents, spans)
Пример #3
0
def highlight_text(tokens: List[str], tags: List[str]):
    """
    Выводит на печать текст с подсветкой тегов
    :param tokens: список токенов
    :param tags: список тегов
    :return:
    """
    assert len(tokens) == len(tags)
    spans = []
    start = 0
    for i in range(len(tokens)):
        len_token = len(tokens[i])
        spans.append((start, start + len_token, tags[i]))
        start += len_token + 1
    text = ' '.join(tokens)
    show_box_markup(text, spans)
Пример #4
0
def ner_jieba_vis(text):
    from ipymarkup.palette import palette, BLUE, RED, GREEN
    from ipymarkup import show_box_markup
    spans = [(w['start'], w['end'], w['entity']) for w in ner_jieba(text)]
    show_box_markup(text, spans, palette=palette(PER=BLUE, ORG=RED, LOC=GREEN))
Пример #5
0
def show_markup(text, spans):
    show_box_markup(text, spans, palette=PALETTE)