lilt-infoxlm-base / README.md
lbourdois's picture
Add multilingual to the language tag
d71dea6
|
raw
history blame
1.66 kB
metadata
language:
  - es
  - fr
  - ru
  - en
  - it
  - multilingual
license: mit
tags:
  - token-classification
  - fill-mask
datasets:
  - iit-cdip

This model is the pretrained infoxlm checkpoint from the paper "LiLT: A Simple yet Effective Language-Independent Layout Transformer for Structured Document Understanding".

Original repository: https://github.com/jpWang/LiLT

To use it, it is necessary to fork the modeling and configuration files from the original repository, and load the pretrained model from the corresponding classes (LiLTRobertaLikeConfig, LiLTRobertaLikeForRelationExtraction, LiLTRobertaLikeForTokenClassification, LiLTRobertaLikeModel). They can also be preloaded with the AutoConfig/model factories as such:

from transformers import AutoModelForTokenClassification, AutoConfig

from path_to_custom_classes import (
    LiLTRobertaLikeConfig,
    LiLTRobertaLikeForRelationExtraction,
    LiLTRobertaLikeForTokenClassification,
    LiLTRobertaLikeModel
    )


def patch_transformers():
    AutoConfig.register("liltrobertalike", LiLTRobertaLikeConfig)
    AutoModel.register(LiLTRobertaLikeConfig, LiLTRobertaLikeModel)
    AutoModelForTokenClassification.register(LiLTRobertaLikeConfig, LiLTRobertaLikeForTokenClassification)
    # etc...

To load the model, it is then possible to use:

# patch_transformers() must have been executed beforehand

tokenizer = AutoTokenizer.from_pretrained("microsoft/infoxlm-base")
model = AutoModel.from_pretrained("manu/lilt-infoxlm-base")
model = AutoModelForTokenClassification.from_pretrained("manu/lilt-infoxlm-base") # to be fine-tuned on a token classification task