Part of Speech tagging Sentence function.

    :param list sentences: a list of lists of tokenized words
    :param str engine:
        * unigram - unigram tagger
        * perceptron - perceptron tagger (default)
        * artagger - RDR POS tagger
    :param str corpus:
        * orchid - annotated Thai academic articles (default)
        * orchid_ud - annotated Thai academic articles using Universal Dependencies Tags
        * pud - Parallel Universal Dependencies (PUD) treebanks
    :return: returns a list of labels regarding which part of speech it is

def pos_tag_sents(
    sentences: List[List[str]], engine: str = "perceptron", corpus: str = "orchid"
) -> List[List[Tuple[str, str]]]:
    """
    Part of Speech tagging Sentence function.

    :param list sentences: a list of lists of tokenized words
    :param str engine:
        * unigram - unigram tagger
        * perceptron - perceptron tagger (default)
        * artagger - RDR POS tagger
    :param str corpus:
        * orchid - annotated Thai academic articles (default)
        * orchid_ud - annotated Thai academic articles using Universal Dependencies Tags
        * pud - Parallel Universal Dependencies (PUD) treebanks
    :return: returns a list of labels regarding which part of speech it is
    """
    if not sentences:
        return []

    return [pos_tag(sent, engine=engine, corpus=corpus) for sent in sentences]