-
Notifications
You must be signed in to change notification settings - Fork 0
/
app.py
43 lines (30 loc) · 1.36 KB
/
app.py
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
from PIL import Image
import streamlit as st
import google.generativeai as genai
model = genai.GenerativeModel('gemini-pro-vision')
apikey = 'YOUR_API_KEY'
genai.configure(api_key=apikey)
model = genai.GenerativeModel('gemini-pro-vision')
def generate_caption(image):
# Add your caption generation logic here
caption = "Generated caption for the image"
return caption
def main():
st.title("Caption Generation Website")
st.write("Upload an image and get a caption!")
social_network = st.selectbox("Select a social network", ["Facebook", "Twitter", "Instagram"])
description = st.text_input("Enter a description")
# Rest of the code...
uploaded_file = st.file_uploader("Choose an image", type=["jpg", "jpeg", "png"])
if uploaded_file is not None:
image = Image.open(uploaded_file)
st.image(image, caption='Uploaded Image', use_column_width=True)
if st.button("Generate Caption"):
caption = generate_caption(image)
st.write("Caption:", caption)
response = model.generate_content(image)
response = model.generate_content([f"generate a caption for this image for posting it on social media with hashtags and emojis for ${social_network}", image], stream=True)
response.resolve()
st.write(response.text)
if __name__ == "__main__":
main()