ybelkada / switch-base-8-xsum

huggingface.co
Total runs: 17
24-hour runs: 0
7-day runs: 0
30-day runs: 0
Model's Last Updated: October 29 2022
text-generation

Introduction of switch-base-8-xsum

Model Details of switch-base-8-xsum

Model Card for Switch Transformers Base - 8 experts

model image

Table of Contents

  1. TL;DR
  2. Model Details
  3. Usage
  4. Uses
  5. Bias, Risks, and Limitations
  6. Training Details
  7. Evaluation
  8. Environmental Impact
  9. Citation
  10. Model Card Authors

TL;DR

Switch Transformers is a Mixture of Experts (MoE) model trained on Masked Language Modeling (MLM) task. The model architecture is similar to the classic T5, but with the Feed Forward layers replaced by the Sparse MLP layers containing "experts" MLP. According to the original paper the model enables faster training (scaling properties) while being better than T5 on fine-tuned tasks. As mentioned in the first few lines of the abstract :

we advance the current scale of language models by pre-training up to trillion parameter models on the “Colossal Clean Crawled Corpus”, and achieve a 4x speedup over the T5-XXL model.

Disclaimer : Content from this model card has been written by the Hugging Face team, and parts of it were copy pasted from the original paper .

Model Details

Model Description

Usage

Note that these checkpoints has been trained on Masked-Language Modeling (MLM) task. Therefore the checkpoints are not "ready-to-use" for downstream tasks. You may want to check FLAN-T5 for running fine-tuned weights or fine-tune your own MoE following this notebook

Find below some example scripts on how to use the model in transformers :

Using the Pytorch model
Running the model on a CPU
Click to expand

from transformers import AutoTokenizer, SwitchTransformersConditionalGeneration

tokenizer = AutoTokenizer.from_pretrained("google/switch-base-8")
model = SwitchTransformersConditionalGeneration.from_pretrained("google/switch-base-8")

input_text = "A <extra_id_0> walks into a bar a orders a <extra_id_1> with <extra_id_2> pinch of <extra_id_3>."
input_ids = tokenizer(input_text, return_tensors="pt").input_ids

outputs = model.generate(input_ids)
print(tokenizer.decode(outputs[0]))
>>> <pad> <extra_id_0> man<extra_id_1> beer<extra_id_2> a<extra_id_3> salt<extra_id_4>.</s>
Running the model on a GPU
Click to expand
# pip install accelerate
from transformers import AutoTokenizer, SwitchTransformersConditionalGeneration

tokenizer = AutoTokenizer.from_pretrained("google/switch-base-8")
model = SwitchTransformersConditionalGeneration.from_pretrained("google/switch-base-8", device_map="auto")

input_text = "A <extra_id_0> walks into a bar a orders a <extra_id_1> with <extra_id_2> pinch of <extra_id_3>."
input_ids = tokenizer(input_text, return_tensors="pt").input_ids.to(0)

outputs = model.generate(input_ids)
print(tokenizer.decode(outputs[0]))
>>> <pad> <extra_id_0> man<extra_id_1> beer<extra_id_2> a<extra_id_3> salt<extra_id_4>.</s>
Running the model on a GPU using different precisions
FP16
Click to expand
# pip install accelerate
from transformers import AutoTokenizer, SwitchTransformersConditionalGeneration

tokenizer = AutoTokenizer.from_pretrained("google/switch-base-8")
model = SwitchTransformersConditionalGeneration.from_pretrained("google/switch-base-8", device_map="auto", torch_dtype=torch.float16)

input_text = "A <extra_id_0> walks into a bar a orders a <extra_id_1> with <extra_id_2> pinch of <extra_id_3>."
input_ids = tokenizer(input_text, return_tensors="pt").input_ids.to(0)

outputs = model.generate(input_ids)
print(tokenizer.decode(outputs[0]))
>>> <pad> <extra_id_0> man<extra_id_1> beer<extra_id_2> a<extra_id_3> salt<extra_id_4>.</s>
INT8
Click to expand
# pip install bitsandbytes accelerate
from transformers import AutoTokenizer, SwitchTransformersConditionalGeneration

tokenizer = AutoTokenizer.from_pretrained("google/switch-base-8")
model = SwitchTransformersConditionalGeneration.from_pretrained("google/switch-base-8", device_map="auto")

input_text = "A <extra_id_0> walks into a bar a orders a <extra_id_1> with <extra_id_2> pinch of <extra_id_3>."
input_ids = tokenizer(input_text, return_tensors="pt").input_ids.to(0)

outputs = model.generate(input_ids)
print(tokenizer.decode(outputs[0]))
>>> <pad> <extra_id_0> man<extra_id_1> beer<extra_id_2> a<extra_id_3> salt<extra_id_4>.</s>

Uses

Direct Use and Downstream Use

The authors write in the original paper's model card that:

The primary use is research on language models, including: research on zero-shot NLP tasks and in-context few-shot learning NLP tasks, such as reasoning, and question answering; advancing fairness and safety research, and understanding limitations of current large language models

See the research paper for further details.

Out-of-Scope Use

More information needed.

Bias, Risks, and Limitations

More information needed.

Ethical considerations and risks

More information needed.

Known Limitations

More information needed.

Sensitive Use:

SwitchTransformers should not be applied for any unacceptable use cases, e.g., generation of abusive speech.

Training Details

Training Data

The model was trained on a Masked Language Modeling task, on Colossal Clean Crawled Corpus (C4) dataset, following the same procedure as T5 .

Training Procedure

According to the model card from the original paper :

These models are based on pretrained SwitchTransformers and are not fine-tuned. It is normal if they perform well on zero-shot tasks.

The model has been trained on TPU v3 or TPU v4 pods, using t5x codebase together with jax .

Evaluation

Testing Data, Factors & Metrics

The authors evaluated the model on various tasks and compared the results against T5. See the table below for some quantitative evaluation: image.png For full details, please check the research paper .

Results

For full results for Switch Transformers, see the research paper , Table 5.

Environmental Impact

Carbon emissions can be estimated using the Machine Learning Impact calculator presented in Lacoste et al. (2019) .

  • Hardware Type: Google Cloud TPU Pods - TPU v3 or TPU v4 | Number of chips ≥ 4.
  • Hours used: More information needed
  • Cloud Provider: GCP
  • Compute Region: More information needed
  • Carbon Emitted: More information needed

Citation

BibTeX:

@misc{https://doi.org/10.48550/arxiv.2101.03961,
  doi = {10.48550/ARXIV.2101.03961},
  
  url = {https://arxiv.org/abs/2101.03961},
  
  author = {Fedus, William and Zoph, Barret and Shazeer, Noam},
  
  keywords = {Machine Learning (cs.LG), Artificial Intelligence (cs.AI), FOS: Computer and information sciences, FOS: Computer and information sciences},
  
  title = {Switch Transformers: Scaling to Trillion Parameter Models with Simple and Efficient Sparsity},
  
  publisher = {arXiv},
  
  year = {2021},
  
  copyright = {arXiv.org perpetual, non-exclusive license}
}

Runs of ybelkada switch-base-8-xsum on huggingface.co

17
Total runs
0
24-hour runs
0
3-day runs
0
7-day runs
0
30-day runs

More Information About switch-base-8-xsum huggingface.co Model

More switch-base-8-xsum license Visit here:

https://choosealicense.com/licenses/apache-2.0

switch-base-8-xsum huggingface.co

switch-base-8-xsum huggingface.co is an AI model on huggingface.co that provides switch-base-8-xsum's model effect (), which can be used instantly with this ybelkada switch-base-8-xsum model. huggingface.co supports a free trial of the switch-base-8-xsum model, and also provides paid use of the switch-base-8-xsum. Support call switch-base-8-xsum model through api, including Node.js, Python, http.

switch-base-8-xsum huggingface.co Url

https://huggingface.co/ybelkada/switch-base-8-xsum

ybelkada switch-base-8-xsum online free

switch-base-8-xsum huggingface.co is an online trial and call api platform, which integrates switch-base-8-xsum's modeling effects, including api services, and provides a free online trial of switch-base-8-xsum, you can try switch-base-8-xsum online for free by clicking the link below.

ybelkada switch-base-8-xsum online free url in huggingface.co:

https://huggingface.co/ybelkada/switch-base-8-xsum

switch-base-8-xsum install

switch-base-8-xsum is an open source model from GitHub that offers a free installation service, and any user can find switch-base-8-xsum on GitHub to install. At the same time, huggingface.co provides the effect of switch-base-8-xsum install, users can directly use switch-base-8-xsum installed effect in huggingface.co for debugging and trial. It also supports api for free installation.

switch-base-8-xsum install url in huggingface.co:

https://huggingface.co/ybelkada/switch-base-8-xsum

Url of switch-base-8-xsum

switch-base-8-xsum huggingface.co Url

Provider of switch-base-8-xsum huggingface.co

ybelkada
ORGANIZATIONS

Other API from ybelkada

huggingface.co

Total runs: 1
Run Growth: 1
Growth Rate: 100.00%
Updated:December 21 2023
huggingface.co

Total runs: 0
Run Growth: 0
Growth Rate: 0.00%
Updated:March 29 2023