RoFormer
This model was released on 2021-04-20 and added to Hugging Face Transformers on 2021-05-20.
RoFormer
Section titled “RoFormer”RoFormer introduces Rotary Position Embedding (RoPE) to encode token positions by rotating the inputs in 2D space. This allows a model to track absolute positions and model relative relationships. RoPE can scale to longer sequences, account for the natural decay of token dependencies, and works with the more efficient linear self-attention.
You can find all the RoFormer checkpoints on the Hub.
The example below demonstrates how to predict the [MASK] token with Pipeline, AutoModel, and from the command line.
# uncomment to install rjieba which is needed for the tokenizer# !pip install rjiebaimport torchfrom transformers import pipeline
pipe = pipeline( task="fill-mask", model="junnyu/roformer_chinese_base", dtype=torch.float16, device=0)output = pipe("水在零度时会[MASK]")print(output)# uncomment to install rjieba which is needed for the tokenizer# !pip install rjiebaimport torchfrom transformers import AutoModelForMaskedLM, AutoTokenizer
model = AutoModelForMaskedLM.from_pretrained( "junnyu/roformer_chinese_base", dtype=torch.float16)tokenizer = AutoTokenizer.from_pretrained("junnyu/roformer_chinese_base")
input_ids = tokenizer("水在零度时会[MASK]", return_tensors="pt").to(model.device)outputs = model(**input_ids)decoded = tokenizer.batch_decode(outputs.logits.argmax(-1), skip_special_tokens=True)print(decoded)echo -e "水在零度时会[MASK]" | transformers run --task fill-mask --model junnyu/roformer_chinese_base --device 0- The current RoFormer implementation is an encoder-only model. The original code can be found in the ZhuiyiTechnology/roformer repository.
RoFormerConfig
Section titled “RoFormerConfig”[[autodoc]] RoFormerConfig
RoFormerTokenizer
Section titled “RoFormerTokenizer”[[autodoc]] RoFormerTokenizer - build_inputs_with_special_tokens - get_special_tokens_mask - create_token_type_ids_from_sequences - save_vocabulary
RoFormerTokenizerFast
Section titled “RoFormerTokenizerFast”RoFormerTokenizerFast is an alias for RoFormerTokenizer.
RoFormerModel
Section titled “RoFormerModel”[[autodoc]] RoFormerModel - forward
RoFormerForCausalLM
Section titled “RoFormerForCausalLM”[[autodoc]] RoFormerForCausalLM - forward
RoFormerForMaskedLM
Section titled “RoFormerForMaskedLM”[[autodoc]] RoFormerForMaskedLM - forward
RoFormerForSequenceClassification
Section titled “RoFormerForSequenceClassification”[[autodoc]] RoFormerForSequenceClassification - forward
RoFormerForMultipleChoice
Section titled “RoFormerForMultipleChoice”[[autodoc]] RoFormerForMultipleChoice - forward
RoFormerForTokenClassification
Section titled “RoFormerForTokenClassification”[[autodoc]] RoFormerForTokenClassification - forward
RoFormerForQuestionAnswering
Section titled “RoFormerForQuestionAnswering”[[autodoc]] RoFormerForQuestionAnswering - forward