alanchen1115 commited on
Commit
bb0a962
·
verified ·
1 Parent(s): 491deb5

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +18 -21
app.py CHANGED
@@ -1,37 +1,34 @@
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-1.5-flash")
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)
 
1
  from dotenv import load_dotenv
2
+ load_dotenv() # loading all the envrionment variables from the .env file
3
 
4
+ import gradio as gr
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 Gemini Pro model and get responses
12
  model = genai.GenerativeModel("gemini-1.5-flash")
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
+ # Define the Gradio interface
22
+ iface = gr.Interface(
23
+ fn=get_gemini_response,
24
+ inputs=[
25
+ gr.Textbox(label="Enter your question here:"),
26
+ gr.Image(label="Choose an image...", type="pil"),
27
+ ],
28
+ outputs=gr.Textbox(label="The response is"),
29
+ title="Gemini Multimodal Bot",
30
+ description="Ask Gemini questions about images",
31
+ )
32
+
33
+ # Launch the Gradio interface
34
+ iface.launch(share=True)