import os
os.environ["CUDA_VISIBLE_DEVICES"] = "0"
os.environ["TOKENIZERS_PARALLELISM"] = "false"
device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")
model_name = "../models/llama3_8b/"
model = AutoModelForCausalLM.from_pretrained(
model_name,
device_map=device,
torch_dtype=compute_dtype,
quantization_config=bnb_config,
)
Но когда я захотел использовать несколько графических процессоров для точной настройки, произошла ошибка. Модифицированный код выглядит следующим образом:
Я работаю над задачей по тонкой настройке ламы. Когда я тренируюсь на одном графическом процессоре, программа работает нормально. [code]import os os.environ["CUDA_VISIBLE_DEVICES"] = "0" os.environ["TOKENIZERS_PARALLELISM"] = "false" device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") model_name = "../models/llama3_8b/" model = AutoModelForCausalLM.from_pretrained( model_name, device_map=device, torch_dtype=compute_dtype, quantization_config=bnb_config, )
[/code] Но когда я захотел использовать несколько графических процессоров для точной настройки, произошла ошибка. Модифицированный код выглядит следующим образом: [code]model = AutoModelForCausalLM.from_pretrained( model_name, # device_map=device, **device_map="auto",** # Modifications torch_dtype=compute_dtype, quantization_config=bnb_config, ) peft_config = LoraConfig( lora_alpha=16, lora_dropout=0, r=64, bias="none", task_type="CAUSAL_LM", target_modules=["q_proj", "k_proj", "v_proj", "o_proj", "gate_proj", "up_proj", "down_proj",], ) training_arguments = TrainingArguments( ... **local_rank=os.getenv("LOCAL_RANK", -1),** # Modifications **ddp_find_unused_parameters=False,** # Modifications ) trainer = SFTTrainer( model=model, args=training_arguments, train_dataset=train_data, #eval_dataset=eval_data, peft_config=peft_config, dataset_text_field="text", tokenizer=tokenizer, max_seq_length=max_seq_length, packing=False, dataset_kwargs={ "add_special_tokens": False, "append_concat_token": False, }, ) trainer.train() [/code] Ошибка следующая: [code]RuntimeError: Expected all tensors to be on the same device, but found at least two devices, cuda:2 and cuda:0! [/code] Выполнение кода: [code]CUDA_VISIBLE_DEVICES=3,4 python llama3.py [/code] Кто-нибудь знает, как это решить?
У меня есть большой код машинного обучения, который я пишу в течение нескольких месяцев, и я начал процесс распараллеливания данных для работы с несколькими графическими процессорами. Начнем с того, что код отлично работает при использовании одного...
Я написал программу CUDA, которая выполняет обработку последовательности символов. Программа обрабатывает все последовательности символов параллельно, при условии, что все последовательности имеют одинаковую длину. Я...
Я собрал фиктивную модель молнии Pytorch специально для сравнения времени, необходимого для завершения обучения с несколькими графическими процессорами (3 графических процессора, использующих DDP, называемых 3G) и обучения с одним графическим...
У меня возникли проблемы с его компиляцией с помощью AMD Radeon R7 M360. Я скомпилировал его с многоядерным процессором, как показано ниже, но может кто-нибудь сказать мне, как скомпилировать его с графическим процессором? Я пробовал...
Я пытаюсь написать приложение opencl C++ на старом ноутбуке с Ubuntu. Он имеет два графических процессора, которые отображаются, когда я запускаю lspci | grep VGA:
00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics...