I’m trying to create an app using Gemini api but keep getting that error. forgive the mess.
def init_session_state():
session_state = st.session_state
if 'd' not in session_state:
session_state.d = 0
init_session_state()
def main():
st.title("Travel Planner")
global response
response = ""
current_day = 0
d = 0
session_state = st.session_state
if 'd' not in session_state:
session_state.d = d
col1, col2, col3 = st.columns([1, 1, 2])
with col1:
st.sidebar.header("Trip Details")
country = st.sidebar.text_input("Enter the country", "Russia")
city = st.sidebar.text_input("Enter the city", "Moscow")
days = st.sidebar.number_input("For how many days?", min_value=1, value=3)
members = st.sidebar.number_input("How big is your group?", min_value=1, value=1)
if st.sidebar.button("Generate Trip Plan"):
model = Gemini(city, country, days, members)
response = json.loads(model.get_response(markdown=False))
with col2:
st.title("Gemini Response")
session_state = st.session_state
if 'd' not in session_state:
st.session_state.d = 0
session_state = st.session_state
current_day = f"Day {session_state.d + 1}"
current_day_placeholder = st.empty()
current_day_infos = st.empty()
current_day_placeholder.write(f"**{current_day}**")
current_day_infos.write(response[current_day].items())
buton = st.button("Next Day")
if buton and session_state.d != len(response)-1:
session_state.d += 1
if session_state.d < len(response):
current_day = f"Day {session_state.d + 1}"
current_day_placeholder.empty()
current_day_placeholder.write(f"**{current_day}**")
current_day_infos.write(response[current_day].items())
if __name__ == "__main__":
init_session_state()
main()
The error I get is
Traceback (most recent call last):
File "c:\Users\Cihan\Desktop\web\gemini\app.py", line 104, in <module>
main()
File "c:\Users\Cihan\Desktop\web\gemini\app.py", line 63, in main
current_day = f"Day {session_state.d + 1}"
^^^^^^^^^^^^^^^
File "C:\Users\Cihan\Desktop\web\ML\Lib\site-packages\streamlit\runtime\state\session_state_proxy.py", line 121, in __getattr__
raise AttributeError(_missing_attr_error_message(key))
AttributeError: st.session_state has no attribute "d". Did you forget to initialize it? More info: https://docs.streamlit.io/library/advanced-features/session-state#initialization ```