Views
No views yet
pip install --upgrade-strategy eager optimum[neuronx]pip install --upgrade-strategy eager optimum[neuron]pip install git+https://github.com/huggingface/optimum-neuron.gitAlternatively, you can install the package without pip as follows:bash1git clone https://github.com/huggingface/optimum-neuron.git 2cd optimum-neuron 3python setup.py install
optimum-neuron, more extensive guide here.1cd <example-folder>
2pip install -r requirements.txt1from transformers import TrainingArguments
2+from optimum.neuron import NeuronTrainer as Trainer
3
4training_args = TrainingArguments(
5 # training arguments...
6)
7
8# A lot of code here
9
10# Initialize our Trainer
11trainer = Trainer(
12 model=model,
13 args=training_args, # Original training arguments.
14 train_dataset=train_dataset if training_args.do_train else None,
15 eval_dataset=eval_dataset if training_args.do_eval else None,
16 compute_metrics=compute_metrics,
17 tokenizer=tokenizer,
18 data_collator=data_collator,
19)1optimum-cli export neuron \
2 --model distilbert-base-uncased-finetuned-sst-2-english \
3 --batch_size 1 \
4 --sequence_length 32 \
5 --auto_cast matmul \
6 --auto_cast_type bf16 \
7 distilbert_base_uncased_finetuned_sst2_english_neuron/distilbert-base-uncased-finetuned-sst-2-english with static shapes: batch_size=1 and sequence_length=32, and cast all matmul operations from FP32 to BF16. Check out the exporter guide for more compilation options.NeuronModelForXXX classes which are similar to AutoModelForXXX classes in 🤗 Transformers:1from transformers import AutoTokenizer
2-from transformers import AutoModelForSequenceClassification
3+from optimum.neuron import NeuronModelForSequenceClassification
4
5# PyTorch checkpoint
6-model = AutoModelForSequenceClassification.from_pretrained("distilbert-base-uncased-finetuned-sst-2-english")
7+model = NeuronModelForSequenceClassification.from_pretrained("distilbert_base_uncased_finetuned_sst2_english_neuron")
8
9tokenizer = AutoTokenizer.from_pretrained("distilbert-base-uncased-finetuned-sst-2-english")
10inputs = tokenizer("Hamilton is considered to be the best musical of past years.", return_tensors="pt")
11
12logits = model(**inputs).logits
13print(model.config.id2label[logits.argmax().item()])
14# 'POSITIVE'