Hargurjeet commited on
Commit
d42dfa4
1 Parent(s): c7e90f5

Upload 2 files

Browse files
Files changed (2) hide show
  1. app.py +37 -0
  2. requirements.txt +3 -0
app.py ADDED
@@ -0,0 +1,37 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from dotenv import load_dotenv
2
+ load_dotenv() ##loading all the envrionment variables from the .env file
3
+
4
+ import streamlit as st
5
+ import os
6
+ import google.generativeai as genai
7
+ from PIL import Image
8
+
9
+ genai.configure(api_key=os.getenv("GOOGLE_API_KEY"))
10
+
11
+ ## function to load Gemimi pro model and get responses
12
+ model = genai.GenerativeModel("gemini-pro-vision")
13
+
14
+ def get_gemini_response(input, image):
15
+ if input !="":
16
+ response = model.generate_content([input, image])
17
+ else:
18
+ response = model.generate_content(image)
19
+ return response.text
20
+
21
+ st.set_page_config(page_title="Gemini Image Demo", page_icon=":robot:")
22
+ st.header("Gemini Mulimodal Bot")
23
+ input=st.text_input("Enter your question here:", key="input")
24
+
25
+ uploaded_file = st.file_uploader("Choose an image...", type=["png", "jpg", "jpeg"])
26
+ image=""
27
+ if uploaded_file is not None:
28
+ image = Image.open(uploaded_file)
29
+ st.image(image, caption='Uploaded Image.', use_column_width=True)
30
+
31
+ submit = st.button("Tell me about the image")
32
+
33
+ ##if submit is clickec
34
+ if submit:
35
+ response=get_gemini_response(input, image)
36
+ st.subheader("The response is")
37
+ st.write(response)
requirements.txt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ streamlit
2
+ google-generativeai
3
+ python-dotenv