Spaces:
Running
Running
File size: 1,126 Bytes
bef155a 3dc74fc bef155a 2c89ce2 bef155a f5b9df5 2c89ce2 bef155a 4b8b4a1 bef155a 4b8b4a1 bef155a 4b8b4a1 bef155a 4b8b4a1 bef155a 4b8b4a1 bef155a 4b8b4a1 bef155a 4b8b4a1 bef155a 4b8b4a1 b3717b6 4b8b4a1 bef155a 463ded1 bef155a 3dc74fc 4b8b4a1 bef155a |
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 |
import google.generativeai as genai
import gradio as gr
import numpy as np
import PIL.Image
import os
api_key = os.getenv("GEMINI_API_KEY")
genai.configure(api_key = api_key)
def ImageStory(image):
"""
Writes a short story about the uploaded image.
Arg:
image: The image that is being uploaded
Returns:
A short story about the uploaded image.
"""
# load model
model = genai.GenerativeModel("gemini-1.5-flash")
# check image file and convert to a Numpy array
if isinstance(image, np.ndarray):
img = PIL.Image.fromarray(image)
else:
img = PIL.Image.open(image)
response = model.generate_content(["write a short story about the image", img])
return response.text
app = gr.Interface(ImageStory,
inputs = gr.Image(label = "Image"),
outputs = gr.Text(label = "Story"),
examples = ["rubiks cube.jpg", "giraffe.jpg", "street.jpg"],
title = "Image-To-Story",
theme = "patrickosornio/my_theme1")
app.launch(mcp_server = True)
|