import gradio as gr dictionary = { "a playful man": "A young man in his mid-20s to early 30s, Has a playful and energetic demeanor, with a big smile always on his face, Has a lean and athletic build, Has messy, yet stylish hair that is always styled in a way that makes it look like he just got out of bed, Has a playful twinkle in his eye, and a hint of mischief in his expression, Wears casual, comfortable clothing that is both stylish and practical,Often seen with a bag or backpack, as if he's always ready for an adventure", "an easygoing man": "A man in his late 20s to early 40s, Has an easygoing and relaxed demeanor, with a friendly smile and a laid-back attitude, Has an average build, not overly muscular nor skinny, Has well-groomed hair, styled in a way that makes him look approachable and friendly, Has a calm and content expression, with a hint of serenity in his eyes, Wears clothing that is comfortable and practical, with a preference for casual styles and earthy colors, Often seen with a guitar or a backpack, as if he's always ready for an impromptu adventure or a jam session", "a boy who is bullied": "Young boy, around the age of 12, with a small frame, wearing worn and untidy clothes, with a slouching posture, sitting alone in a corner, with a sad and defeated expression on his face." } def chatgpt(query): try: output = dictionary[query] except: output = "Please try: https://chat.openai.com" return output def generateimage1(query): try: output = dictionary[query] except: output = "Please try: https://chat.openai.com" return output def generateimage2(query): try: output = dictionary[query] except: output = "Please try: https://chat.openai.com" return output with gr.Blocks() as demo: gr.Markdown("Ask **ChatGPT** to generate detailed descriptbions.") gr.Markdown("Example: Act as a professional character designer. Please generate prompts include detail appearance descriptions that related to the personality. Here's your first question: 'a gentle man':") with gr.Row(): inpprompt = gr.Dropdown(list(dictionary.keys())) outprompt = gr.Textbox() btn = gr.Button("Generate mode detailed description.") btn.click(fn=chatgpt, inputs=inpprompt, outputs=outprompt) gr.Markdown("Ask **Stable Diffusion** to generate images.") with gr.Row(): out1image = gr.Image() out2image = gr.Image() with gr.Row(): btn1 = gr.Button("Generate image with origial prompt.") btn2 = gr.Button("Generate image with ChatGPT's prompt.") btn1.click(fn=generateimage1, inputs=inpprompt, outputs=out1image) btn2.click(fn=generateimage2, inputs=outprompt, outputs=out2image) demo.launch()