data/multiwoz/utlis/postprocessing_dataset.py [63:102]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
            res_bsdx_text += curr_slot + ' , '
    
    res_bs_text = res_bs_text.strip().strip(',').strip()
    res_bsdx_text = res_bsdx_text.strip().strip(',').strip()
    return ' '.join(res_bs_text.split()).strip(), ' '.join(res_bsdx_text.split()).strip()

def overall_parsing_bs_bsdx(bs_text, bsdx_text):
    in_bs_text, in_bsdx_text = bs_text, bsdx_text
    if bs_text == '<sos_b> <eos_b>':
        assert bsdx_text == '<sos_b> <eos_b>'
        return bs_text, bsdx_text
    bs_text_list, bsdx_text_list = split_bs_text_by_domain(bs_text, bsdx_text)
    res_bs_text, res_bsdx_text = ' ', ' '
    for idx in range(len(bs_text_list)):
        one_bs_text, one_bsdx_text = parse_bs_bsdx(bs_text_list[idx], bsdx_text_list[idx])
        res_bs_text += one_bs_text + ' '
        res_bsdx_text += one_bsdx_text + ' '
    res_bs_text = '<sos_b> ' + res_bs_text.strip() + ' <eos_b>'
    res_bsdx_text = '<sos_b> ' + res_bsdx_text.strip() + ' <eos_b>'
    assert restore_text(res_bs_text) == in_bs_text
    assert restore_text(res_bsdx_text) == in_bsdx_text
    return res_bs_text,  res_bsdx_text

def parse_action_text(text):
    in_text = text
    res_text = ''
    token_list = text.strip('<sos_a>').strip('<eos_a>').strip().split()
    token_num = len(token_list)
    for idx in range(token_num):
        curr_token = token_list[idx]
        if curr_token.startswith('[') and curr_token.endswith(']'):
            res_text += curr_token + ' '
        else:
            if idx == token_num - 1:
                res_text += curr_token
            else:
                next_token = token_list[idx + 1]
                if next_token.startswith('[') and next_token.endswith(']'):
                    res_text += curr_token + ' '
                else:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



data/multiwoz/utlis/processing_funcs.py [62:101]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
            res_bsdx_text += curr_slot + ' , '
    
    res_bs_text = res_bs_text.strip().strip(',').strip()
    res_bsdx_text = res_bsdx_text.strip().strip(',').strip()
    return ' '.join(res_bs_text.split()).strip(), ' '.join(res_bsdx_text.split()).strip()

def overall_parsing_bs_bsdx(bs_text, bsdx_text):
    in_bs_text, in_bsdx_text = bs_text, bsdx_text
    if bs_text == '<sos_b> <eos_b>':
        assert bsdx_text == '<sos_b> <eos_b>'
        return bs_text, bsdx_text
    bs_text_list, bsdx_text_list = split_bs_text_by_domain(bs_text, bsdx_text)
    res_bs_text, res_bsdx_text = ' ', ' '
    for idx in range(len(bs_text_list)):
        one_bs_text, one_bsdx_text = parse_bs_bsdx(bs_text_list[idx], bsdx_text_list[idx])
        res_bs_text += one_bs_text + ' '
        res_bsdx_text += one_bsdx_text + ' '
    res_bs_text = '<sos_b> ' + res_bs_text.strip() + ' <eos_b>'
    res_bsdx_text = '<sos_b> ' + res_bsdx_text.strip() + ' <eos_b>'
    assert restore_text(res_bs_text) == in_bs_text
    assert restore_text(res_bsdx_text) == in_bsdx_text
    return res_bs_text,  res_bsdx_text

def parse_action_text(text):
    in_text = text
    res_text = ''
    token_list = text.strip('<sos_a>').strip('<eos_a>').strip().split()
    token_num = len(token_list)
    for idx in range(token_num):
        curr_token = token_list[idx]
        if curr_token.startswith('[') and curr_token.endswith(']'):
            res_text += curr_token + ' '
        else:
            if idx == token_num - 1:
                res_text += curr_token
            else:
                next_token = token_list[idx + 1]
                if next_token.startswith('[') and next_token.endswith(']'):
                    res_text += curr_token + ' '
                else:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



