Spaces:
Runtime error
Runtime error
File size: 3,460 Bytes
b943a7e cc3741b 70dd424 cc3741b b943a7e 91ceb5b b943a7e 70dd424 f380d33 91ceb5b f380d33 b943a7e f380d33 b943a7e f380d33 cc3741b f380d33 cc3741b f380d33 70dd424 f380d33 91ceb5b f380d33 91ceb5b f380d33 70dd424 91ceb5b 70dd424 f380d33 70dd424 f380d33 cc3741b 91ceb5b cc3741b f380d33 70dd424 f380d33 cc3741b f380d33 70dd424 cc3741b f380d33 cc3741b |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 |
import gradio as gr
#from transformers import pipeline
import torch
from diffusers import DiffusionPipeline
import platform
inCloud = True
#translator = pipeline("translation", model = "Helsinki-NLP/opus-mt-es-en")
pipe = ''
if inCloud:
pipe = DiffusionPipeline.from_pretrained("runwayml/stable-diffusion-v1-5")
if platform.system() == "Darwin": #Apple OS
pipe = pipe.to("mps")
#pipe = pipe.to("cuda")
# Recommended if your computer has < 64 GB of RAM
pipe.enable_attention_slicing()
textos = [
'''脡rase una vez un hombre muy rico que vendi贸 todo lo que ten铆a a cambio de varios lingotes de oro. Y para que nadie le robara, enterr贸 el oro en un bosque. Todos los d铆as acud铆a al lugar para comprobar que su oro segu铆a all铆, sin saber que un ladr贸n lo vigilaba escondido.
Una noche, el ladr贸n desenterr贸 el oro y se lo llev贸. Cuando el rico descubri贸 el robo, dio tal grito que un vecino se acerc贸 a ver qu茅 pasaba. El hombre rico lloraba, desesperado. Entonces el vecino tom贸 unas piedras, las enterr贸 en el mismo lugar y dijo:
鈥擜qu铆 tiene su tesoro. Sabe que nunca habr铆a gastado sus lingotes. 驴Qu茅 m谩s le da, entonces, que sean piedras? As铆 por lo menos dejar谩 de sufrir.'''
]
#def translate(text):
# return translator(text)[0]["translation_text"]
def generate_texts_array(text, max_length = 70):
text_array = []
start = 0
while start < len(text):
end = start + max_length
part = text[start:end]
text_array.append(part)
start = end
return text_array
def generation(text):
images = []
steps = 5
#translate_text = translate(text)
text_array = generate_texts_array(text)
images.append(pipe(text_array[0],num_inference_steps=steps).images[0])
images.append(pipe(text_array[1],num_inference_steps=steps).images[0])
images.append(pipe(text_array[2],num_inference_steps=steps).images[0])
images.append(pipe(text_array[3],num_inference_steps=steps).images[0])
images.append(pipe(text_array[4],num_inference_steps=steps).images[0])
return images
def generation_test(img):
images = []
images.append(img)
images.append(img)
images.append(img)
images.append(img)
images.append(img)
return images
demo = gr.Blocks()
title = '# Generando historias graficas '
description = 'Escribe un texto y se generara una secuencia de imagenes basadas en el texto proporcionado'
with demo:
gr.Markdown(title)
gr.Markdown(description)
with gr.Row():
with gr.Column():
text_input = gr.Textbox ( label="Cuento",
info="Escribe una historia",
lines=5,
value='Erase una vez..')
#steps_input = gr.Number(value=20)
#img_input = gr.Image (type='pil')
button = gr.Button(value="Generate")
gr.Examples(
examples=textos,
inputs=text_input,
#outputs=im_2,
)
with gr.Row():
imgs_output = []
imgs_output.append(gr.Image())
imgs_output.append(gr.Image())
imgs_output.append(gr.Image())
imgs_output.append(gr.Image())
imgs_output.append(gr.Image())
button.click(generation, inputs=text_input, outputs=imgs_output)
if __name__ == "__main__":
demo.launch() |