from datasets import load_dataset from transformers import AutoTokenizer, AutoModelForCausalLM, Trainer, TrainingArguments # small dataset slice (saves money 💰) dataset = load_dataset("wikitext", "wikitext-2-raw-v1", split="train[:1%]") tokenizer = AutoTokenizer.from_pretrained("gpt2") tokenizer.pad_token = tokenizer.eos_token def tokenize(example): return tokenizer(example["text"], truncation=True, padding="max_length") tokenized = dataset.map(tokenize, batched=True) model = AutoModelForCausalLM.from_pretrained("gpt2") training_args = TrainingArguments( output_dir="./results", per_device_train_batch_size=2, num_train_epochs=1, max_steps=50, # 🔥 LIMIT training → saves credits logging_steps=10 ) trainer = Trainer( model=model, args=training_args, train_dataset=tokenized ) trainer.train() model.save_pretrained("./model") tokenizer.save_pretrained("./model")