Spaces:
Sleeping
Sleeping
| from dotenv import load_dotenv | |
| load_dotenv() | |
| import streamlit as st | |
| import os | |
| import pathlib | |
| import google.generativeai as genai | |
| os.getenv("GOOGLE_API_KEY") | |
| genai.configure(api_key=os.getenv("GOOGLE_API_KEY")) | |
| # function to los the genini api model and get responses | |
| def get_gemini_response(question): | |
| model =genai.GenerativeModel('gemini-pro') | |
| response = model.generate_content(question) | |
| return response.text | |
| #intizlize the streamlitapp | |
| import streamlit as st | |
| # Display the header | |
| st.set_page_config(page_title="DDS Q & A Demo") | |
| # Display the header | |
| st.header("DDS Q & A Demo using Gemini") | |
| # Initialize session state variables if they don't exist | |
| if 'input_text' not in st.session_state: | |
| st.session_state['input_text'] = '' | |
| if 'clear_field' not in st.session_state: | |
| st.session_state['clear_field'] = False | |
| # Define a function to clear the input field | |
| def clear_input(): | |
| st.session_state['input_text'] = '' | |
| st.session_state['clear_field'] = True | |
| # Display the input field | |
| input_text = st.text_input("Input:", value='' if st.session_state['clear_field'] else st.session_state['input_text'], on_change=lambda: update_input_text(), key="input") | |
| # Function to update session state with the current input text | |
| def update_input_text(): | |
| st.session_state['input_text'] = st.session_state.input | |
| st.session_state['clear_field'] = False | |
| # Submit button | |
| submit = st.button("Ask your Question") | |
| # Clear button | |
| if st.button("Clear", on_click=clear_input): | |
| pass # The clear_input function is called when this button is pressed | |
| # Logic to get response | |
| if submit: | |
| response = get_gemini_response(input_text) | |
| st.subheader("The Response is") | |
| st.write(response) |