from PIL import Image import gradio as gr from transformers import BlipProcessor, BlipForConditionalGeneration model_id = "Salesforce/blip-image-captioning-base" model = BlipForConditionalGeneration.from_pretrained(model_id) processor = BlipProcessor.from_pretrained(model_id) def launch(input_file): # Abrir la imagen subida por el usuario image = Image.open(input_file).convert('RGB') # Procesar la imagen y generar el texto inputs = processor(image, return_tensors="pt") out = model.generate(**inputs) generated_text = processor.decode(out[0], skip_special_tokens=True) # Agregar prefijo y sufijo al texto generado prefijo = "Texture, " sufijo = " top view, flat, hq, detailed" result = f"{prefijo}{generated_text}{sufijo}" # Devolver tanto la imagen como el texto return image, result # Cambiar la configuraciĆ³n de Gradio para que la entrada sea un archivo y la salida incluya imagen y texto iface = gr.Interface( fn=launch, inputs="file", outputs=["image", "text"], title="GENERADOR DE TEXTO DEL DR. SERGIO" ) iface.launch()