diff --git a/gpt.py b/gpt.py index 30cf9d6..7fff1ac 100644 --- a/gpt.py +++ b/gpt.py @@ -6,7 +6,7 @@ from datasets import Dataset # Konfiguracja os.environ["TOKENIZERS_PARALLELISM"] = "false" -MODEL_NAME = "gpt2" +MODEL_NAME = "gpt2-medium" SPECIAL_TOKENS = ["[CITATION_START]", "[CITATION_END]"] TEXT_FILE_PATH = "./docs/kodekspracy.txt" # Zmień na właściwą ścieżkę @@ -41,6 +41,15 @@ def prepare_dataset_from_file(file_path): formatted = f"[CITATION_START] Kodeks Pracy, Art. {art_number} [CITATION_END] {art_text}" formatted_articles.append({"text": formatted}) + + # Dodaj przykłady pytań i odpowiedzi + questions = [ + f"Zacytuj artykuł {art_number} Kodeksu pracy.", + f"Co mówi artykuł {art_number} Kodeksu pracy?", + f"Podaj treść artykułu {art_number} Kodeksu pracy." + ] + for question in questions: + formatted_articles.append({"text": f"{question}\n{formatted}"}) return formatted_articles @@ -80,15 +89,20 @@ def main(): # Konfiguracja treningu training_args = TrainingArguments( - output_dir="./results", - num_train_epochs=16, # Zwiększono liczbę epok - per_device_train_batch_size=2, - learning_rate=2e-5, #precyzja uczenia - logging_steps=10, - report_to="none", - save_strategy="no", - load_best_model_at_end=True, # Ładowanie najlepszego modelu na końcu - ) + output_dir="./results", + num_train_epochs=30, + per_device_train_batch_size=2, + learning_rate=1e-5, + weight_decay=0.01, + logging_steps=10, + save_steps=100, + eval_steps=100, + evaluation_strategy="steps", + load_best_model_at_end=True, + report_to="none", + save_total_limit=2, +) + # Trainer trainer = Trainer(