def METHOD_NAME(labels_or_label_file, template=None):
    if isinstance(labels_or_label_file, str):
        labels = mmengine.list_from_file(labels_or_label_file)
    elif isinstance(labels_or_label_file, list):
        labels = labels_or_label_file
    else:
        raise ValueError(f'`labels_or_label_file` must be `list` or `str`, '
                         f'but got {type(labels_or_label_file)}')
    if template is None:
        template = [
            'a photo of action {}', 'a picture of action {}',
            'Human action of {}', '{}, an action', '{} this is an action',
            '{}, a video of action', 'Playing action of {}', '{}',
            'Playing a kind of action, {}', 'Doing a kind of action, {}',
            'Look, the human is {}', 'Can you recognize the action of {}?',
            'Video classification of {}', 'A video of {}', 'The man is {}',
            'The woman is {}'
        ]
    elif isinstance(template, str):
        template = [template]
    elif not mmengine.is_seq_of(template, str):
        raise ValueError(f'`template` must be list of `str`, `str` or `None`, '
                         f'but got {type(template)}')
    num_prompt = len(template)
    prompt = torch.cat(
        [clip.tokenize(t.format(c)) for t in template for c in labels])
    return prompt, num_prompt