Spaces:
Sleeping
Sleeping
""" Generate an image using the Replicate API | |
Keyword arguments: | |
prompt -- The prompt to generate the image from | |
Return: An image saved in a .png file""" | |
import os | |
import io | |
import replicate | |
import requests | |
from PIL import Image | |
from config import REPLICATE_API_TOKEN | |
def generate_finetuned_img(prompt, api_key=REPLICATE_API_TOKEN): | |
""" | |
Generate a finetuned image based on the given prompt. | |
Args: | |
prompt (str): The prompt for generating the image. | |
Returns: | |
str: The file path of the saved finetuned image. | |
""" | |
# Set up environment variables for Replicate API | |
os.environ['REPLICATE_API_TOKEN'] = api_key | |
# Create finetuned image | |
print('Creating finetuned image...') | |
output = replicate.run( | |
"joelorellana/paddle_modelv5:0592deeff5f62cbef89090b705196a9bc06c2874dfee85789547011dfc1f6451", | |
input={ | |
"width": 1024, | |
"height": 1024, | |
"prompt": prompt, | |
"refine": "base_image_refiner", | |
"scheduler": "DDIM", | |
"lora_scale": 0.6, | |
"num_outputs": 1, | |
"guidance_scale": 7.5, | |
"apply_watermark": True, | |
"high_noise_frac": 0.8, | |
"negative_prompt": | |
"""old, bad eyes, deformed, bad hands, ugly, | |
ancient, showing teeth, open mouth, two or more balls""", | |
"prompt_strength": 0.8, | |
"num_inference_steps": 50 | |
} | |
) | |
# Save image | |
print('Saving image...') | |
url = output[0] | |
response = requests.get(url, timeout=30) | |
img = Image.open(io.BytesIO(response.content)) | |
img.save('output_img/finetuned_generated_img.png') | |
print('Image saved in output_img/finetuned_generated_img.png') | |
return "output_img/finetuned_generated_img.png" | |