Spaces:
Building
Building
File size: 1,278 Bytes
2d13703 6974b92 2d13703 |
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 |
import streamlit as st
import google.generativeai as genai
import numpy as np
import PIL.Image
# Configure the Generative AI API
genai.configure(api_key="Api_key")
# Define the function that handles the model's response
def ImageChat(image, prompt):
# Load model
model = genai.GenerativeModel("gemini-1.5-flash")
# Check if the image is a numpy array and convert to PIL format if necessary
if isinstance(image, np.ndarray):
img = PIL.Image.fromarray(image)
else:
img = PIL.Image.open(image)
# Generate a response from the model
response = model.generate_content([prompt, img])
return response.text
# Set up the Streamlit interface
st.title("Image Chat")
st.write("Upload an image and enter a prompt to get a response.")
# File uploader for image input
uploaded_image = st.file_uploader("Upload an Image", type=["jpg", "jpeg", "png"])
# Text input for prompt
prompt = st.text_input("Enter your prompt:")
# When both an image and a prompt are provided, generate a response
if uploaded_image and prompt:
# Convert the uploaded image to a numpy array
image = np.array(PIL.Image.open(uploaded_image))
# Generate and display the response
response = ImageChat(image, prompt)
st.write("Response:", response)
|