|
import torch
|
|
from model import BigramLanguageModel, decode
|
|
import gradio as gr
|
|
|
|
device = 'cuda' if torch.cuda.is_available() else 'cpu'
|
|
|
|
model = BigramLanguageModel()
|
|
model.load_state_dict(torch.load("/content/drive/MyDrive/ERA V2/S19/neo_gpt.pth", map_location=device))
|
|
def generate_text(max_new_tokens):
|
|
context = torch.zeros((1, 1), dtype=torch.long)
|
|
return decode(model.generate(context, max_new_tokens=max_new_tokens)[0].tolist())
|
|
|
|
|
|
|
|
title = "Text Generation: Write Like Shakespeare"
|
|
description = "This Gradio app uses a large language model (LLM) to generate text in the style of William Shakespeare."
|
|
|
|
|
|
|
|
g_app = gr.Interface(
|
|
fn = generate_text,
|
|
inputs = [gr.Number(value = 10,label = "Number of Output Tokens",info = "Specify the desired length of the text to be generated.")],
|
|
outputs = [gr.TextArea(lines = 5,label="Generated Text")],
|
|
title = title,
|
|
description = description
|
|
|
|
)
|
|
|
|
|
|
g_app.launch()
|
|
|