From 1243759c5aa2ee104c542b59e494d9784607085f Mon Sep 17 00:00:00 2001 From: "l.gabrysiak" Date: Wed, 26 Feb 2025 10:35:35 +0100 Subject: [PATCH] mod gpt --- gpt.py | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/gpt.py b/gpt.py index 0e3bdf2..267d669 100644 --- a/gpt.py +++ b/gpt.py @@ -44,6 +44,7 @@ def prepare_dataset_from_file(file_path): return formatted_articles + def main(): # Inicjalizacja tokenizera tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME) @@ -66,11 +67,11 @@ def main(): tokenized["labels"] = tokenized["input_ids"].clone() return tokenized - tokenized_dataset = dataset.map(tokenize_function, batched=True, remove_columns=dataset.column_names) + tokenized_dataset = dataset.map(tokenize_function, batched=True) # Model i data collator model = AutoModelForCausalLM.from_pretrained(MODEL_NAME) - model.resize_token_embeddings(len(tokenizer)) + model.resize_token_embeddings(len(tokenizer), mean_resizing=False) data_collator = DataCollatorForLanguageModeling( tokenizer=tokenizer, @@ -80,17 +81,13 @@ def main(): # Konfiguracja treningu training_args = TrainingArguments( output_dir="./results", - num_train_epochs=15, # Zwiększono liczbę epok - per_device_train_batch_size=4, # Zwiększono rozmiar batcha - learning_rate=2e-5, # Zmniejszono learning rate - weight_decay=0.01, # Dodano weight decay + num_train_epochs=16, # Zwiększono liczbę epok + per_device_train_batch_size=2, + learning_rate=2e-5, #precyzja uczenia logging_steps=10, - save_steps=500, # Dodano zapisywanie modelu co 500 kroków - eval_steps=500, # Dodano ewaluację co 500 kroków - evaluation_strategy="steps", - load_best_model_at_end=True, # Ładowanie najlepszego modelu na końcu report_to="none", - save_total_limit=2, # Ograniczenie liczby zapisywanych checkpointów + save_strategy="no", + load_best_model_at_end=True, # Ładowanie najlepszego modelu na końcu ) # Trainer @@ -98,7 +95,6 @@ def main(): model=model, args=training_args, train_dataset=tokenized_dataset, - eval_dataset=tokenized_dataset, # Używamy tego samego zbioru do ewaluacji data_collator=data_collator ) @@ -108,4 +104,4 @@ def main(): tokenizer.save_pretrained("./trained_model/gpt") if __name__ == "__main__": - main() + main() \ No newline at end of file