pythainlp.parse
The pythainlp.parse
is dependency parsing for Thai.
Modules
- pythainlp.parse.dependency_parsing(text: str, model: str | None = None, tag: str = 'str', engine: str = 'esupar') List[List[str]] | str [source]
Dependency Parsing
- Parameters:
- Returns:
str (conllu) or List
- Return type:
- Options for engine
esupar (default) - Tokenizer POS-tagger and Dependency-parser with BERT/RoBERTa/DeBERTa model. GitHub
spacy_thai - Tokenizer, POS-tagger, and dependency-parser for Thai language, working on Universal Dependencies. GitHub
transformers_ud - TransformersUD GitHub
ud_goeswith - POS-tagging and dependency-parsing with using goeswith for subwords
- Options for model (esupar engine)
th (default) - KoichiYasuoka/roberta-base-thai-spm-upos model Huggingface
KoichiYasuoka/deberta-base-thai-upos - DeBERTa(V2) model pre-trained on Thai Wikipedia texts for POS-tagging and dependency-parsing Huggingface
KoichiYasuoka/roberta-base-thai-syllable-upos - RoBERTa model pre-trained on Thai Wikipedia texts for POS-tagging and dependency-parsing. (syllable level) Huggingface
KoichiYasuoka/roberta-base-thai-char-upos - RoBERTa model pre-trained on Thai Wikipedia texts for POS-tagging and dependency-parsing. (char level) Huggingface
If you want to train model for esupar, you can read Huggingface
- Options for model (transformers_ud engine)
KoichiYasuoka/deberta-base-thai-ud-head (default) - DeBERTa(V2) model pretrained on Thai Wikipedia texts for dependency-parsing (head-detection on Universal Dependencies) as question-answering, derived from deberta-base-thai. trained by th_blackboard.conll. Huggingface
KoichiYasuoka/roberta-base-thai-spm-ud-head - roberta model pretrained on Thai Wikipedia texts for dependency-parsing. Huggingface
- Options for model (ud_goeswith engine)
KoichiYasuoka/deberta-base-thai-ud-goeswith (default) - This is a DeBERTa(V2) model pre-trained on Thai Wikipedia texts for POS-tagging and dependency-parsing (using goeswith for subwords) Huggingface
- Example:
from pythainlp.parse import dependency_parsing print(dependency_parsing("ผมเป็นคนดี", engine="esupar")) # output: # 1 ผม _ PRON _ _ 3 nsubj _ SpaceAfter=No # 2 เป็น _ VERB _ _ 3 cop _ SpaceAfter=No # 3 คน _ NOUN _ _ 0 root _ SpaceAfter=No # 4 ดี _ VERB _ _ 3 acl _ SpaceAfter=No print(dependency_parsing("ผมเป็นคนดี", engine="spacy_thai")) # output: # 1 ผม PRON PPRS _ 2 nsubj _ SpaceAfter=No # 2 เป็น VERB VSTA _ 0 ROOT _ SpaceAfter=No # 3 คนดี NOUN NCMN _ 2 obj _ SpaceAfter=No