in backend_apis/app/main.py [0:0]
def post_image_generate(data: ImageGenerateRequest,
) -> ImageGenerateResponse:
"""Image generation with Imagen
Parameters:
prompt: str
number_of_images: int = 1
Returns:
List of images with:
id: image id
images_base64_string (str): Image as base64 string
image_size (int, int): Size of the image
images_parameters (dict): Parameters used with the model
"""
try:
imagen_responses = imagen.generate_images(
prompt=data.prompt,
number_of_images=data.number_of_images,
negative_prompt=data.negative_prompt)
except Exception as e:
raise HTTPException(status_code=400, detail=str(e))
else:
generated_images = []
i=0
for image in imagen_responses:
generated_images.append(
{
"id": i ,
"images_base64_string": image._as_base64_string(),
"image_size": image._size,
"images_parameters": image.generation_parameters
}
)
i=i+1
return ImageGenerateResponse(
generated_images=generated_images
)