sayhi-to-image / app.py
SmilingTree's picture
no cuda
65ad6a7 verified
import gradio as gr
from transformers import pipeline
from diffusers import DiffusionPipeline
# ζ•…δΊ‹ζ–‡ε­—η”Ÿζˆζ¨‘εž‹
text_pipeline = pipeline("text-generation", model="isarth/distill_gpt2_story_generator")
# εœ–εƒη”Ÿζˆζ¨‘εž‹
image_pipeline = DiffusionPipeline.from_pretrained("prompthero/openjourney")
# ζ–‡ε­—η”Ÿζˆε‡½εΌ
def generate_story(input_text):
result = text_pipeline(input_text, max_length=200, do_sample=True)
story = result[0]["generated_text"]
return story
# εœ–εƒη”Ÿζˆε‡½εΌ
def generate_image_from_story(story_text):
image = image_pipeline(story_text).images[0]
return image
# Gradio 介青
with gr.Blocks() as demo:
gr.Markdown("## ✨ AI ζ•…δΊ‹θˆ‡εœ–η‰‡η”Ÿζˆε™¨")
with gr.Row():
input_text = gr.Textbox(label="θΌΈε…₯δ½ ηš„ζ•…δΊ‹ι–‹ι ­", placeholder="εΎžι€™θ£‘ι–‹ε§‹δ½ ηš„ε†’ιšͺ...")
generate_btn = gr.Button("η”Ÿζˆζ•…δΊ‹")
story_output = gr.Textbox(label="η”Ÿζˆηš„ζ•…δΊ‹")
with gr.Row():
image_btn = gr.Button("ζ Ήζ“šζ•…δΊ‹η”Ÿζˆεœ–η‰‡")
image_output = gr.Image(label="η”Ÿζˆηš„εœ–η‰‡")
generate_btn.click(fn=generate_story, inputs=input_text, outputs=story_output)
image_btn.click(fn=generate_image_from_story, inputs=story_output, outputs=image_output)
demo.launch()