ShakespeareGPT / src /inference.py
sidharthg's picture
Upload 7 files
861a64c verified
raw
history blame contribute delete
838 Bytes
from transformers import GPT2LMHeadModel, GPT2Tokenizer
import torch
class GPT2Inference:
def __init__(self, model_path):
self.tokenizer = GPT2Tokenizer.from_pretrained("gpt2")
self.model = GPT2LMHeadModel.from_pretrained(model_path)
self.model.eval()
def generate_text(self, prompt, max_length=30, num_return_sequences=1):
input_ids = self.tokenizer.encode(prompt, return_tensors='pt')
with torch.no_grad():
outputs = self.model.generate(input_ids, max_length=max_length, num_return_sequences=num_return_sequences)
return [self.tokenizer.decode(output, skip_special_tokens=True) for output in outputs]
def load_model():
model_path = 'models/best_model.pt'
inference_model = GPT2Inference(model_path)
return inference_model
inference_model = load_model()