Tejas1020's picture
Update app.py
16f982f verified
from dotenv import load_dotenv
load_dotenv()
import streamlit as st
import os
from PIL import Image
import google.generativeai as genai
genai.configure(api_key= os.getenv("GOOGLE_API_KEY"))
# using Gemini pro
model = genai.GenerativeModel("gemini-1.0-pro-latest")
chat = model.start_chat(history= [])
def get_gemini_response(question):
response = chat.send_message(question, stream= True)
return response
# Initialize streamlit
st.set_page_config(page_title= "Q&A Demo")
st.header("Gemini Chat App")
# Initialize session state for history
if 'chat_history' not in st.session_state:
st.session_state['chat_history'] = []
input = st.text_input("Input", key = "input")
submit = st.button("Ask the Question")
if submit and input:
response = get_gemini_response(input)
# add user query and response
st.session_state['chat_history'].append(("You", input))
st.subheader("The Response is")
for chunk in response:
st.write(chunk.text)
st.session_state['chat_history'].append(("Bot", chunk.text))
st.subheader("The chat history is")
for role, text in st.session_state['chat_history']:
st.write(f"{role} : {text}")