import transformers import tensor_parallel as tp tokenizer = transformers.AutoTokenizer.from_pretrained("facebook/opt-13b") model = transformers.AutoModelForCausalLM.from_pretrained("facebook/opt-13b") # use opt-125m for testing model = tp.tensor_parallel(model, ["cuda:0", "cuda:1"]) # <- each GPU has half the weights inputs = tokenizer("A cat sat", return_tensors[](https://zhida.zhihu.com/search?content_id=230889336&content_type=Article&match_order=1&q=tensors&zd_token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJ6aGlkYV9zZXJ2ZXIiLCJleHAiOjE3OTExMzk1NDcsInEiOiJ0ZW5zb3JzIiwiemhpZGFfc291cmNlIjoiZW50aXR5IiwiY29udGVudF9pZCI6MjMwODg5MzM2LCJjb250ZW50X3R5cGUiOiJBcnRpY2xlIiwibWF0Y2hfb3JkZXIiOjEsInpkX3Rva2VuIjpudWxsfQ.UJDPr4Bq6cFxAQ_RfoKsSI0cGWSzNzYmbuqiLMG4iss&zhida_source=entity)="pt")["input_ids"].to("cuda:0") outputs = model.generate(inputs, num_beams=5) print(tokenizer.decode(outputs[0])) # A cat sat on my lap for a few minutes ... model(input_ids=inputs, labels=inputs).loss.backward() # training works as usual