CoolFace
Apppublic

Jonathanmann/gpt2-medium

sourceHugging Facemitupdated 2y agoView on Hugging Face
0likes
app.py57 linesDownload Raw Back to root
1import gradio as gr2from transformers import pipeline, GPT2LMHeadModel, GPT2Tokenizer3import os4 5# Define your model details6HF_TOKEN = os.getenv("HF_TOKEN")7model_name = "Jonathanmann/GPT2-medium-SADnov21"8 9# Load tokenizer and model from Hugging Face with error handling10try:11    tokenizer = GPT2Tokenizer.from_pretrained(model_name, use_auth_token=HF_TOKEN)12    model = GPT2LMHeadModel.from_pretrained(model_name, use_auth_token=HF_TOKEN)13except Exception as e:14    raise RuntimeError(f"Error loading model or tokenizer: {e}")15 16# Define the text generation pipeline with error handling17try:18    generator = pipeline("text-generation", model=model, tokenizer=tokenizer)19except Exception as e:20    raise RuntimeError(f"Error creating text generation pipeline: {e}")21 22# Define a function for generating text with error handling23def generate_text(prompt, max_length, temperature, top_k, top_p):24    try:25        response = generator(26            prompt,27            max_length=max_length,28            temperature=temperature,29            top_k=top_k,30            top_p=top_p,31            num_return_sequences=132        )33        return response[0]["generated_text"]34    except Exception as e:35        return f"An error occurred during text generation: {str(e)}"36 37# Create the Gradio interface38demo = gr.Interface(39    fn=generate_text,40    inputs=[41        gr.Textbox(lines=2, placeholder="Enter your prompt here..."),42        gr.Slider(minimum=20, maximum=200, value=50, label="Max Length"),43        gr.Slider(minimum=0.1, maximum=1.0, value=0.7, label="Temperature"),44        gr.Slider(minimum=1, maximum=100, value=50, label="Top-k"),45        gr.Slider(minimum=0.1, maximum=1.0, value=0.9, label="Top-p")46    ],47    outputs="text",48    title="GPT-2 Text Generation",49    description="A demo of Jonathanmann/GPT2-medium-SADnov21 with adjustable generation parameters."50)51 52# Launch the app with error handling53try:54    demo.launch()55except Exception as e:56    print(f"An error occurred while launching the Gradio interface: {str(e)}")57