import streamlit as st from streamlit_chat import message from utils import get_initial_message, get_chatgpt_response, update_chat import os from dotenv import load_dotenv load_dotenv() import openai openai.api_key = os.getenv('openai_key') st.title("ChileanGPT: An Experimental Chilean AI Language Model") st.subheader("Leveraging the Power of GPT-Enhanced for Natural Chilean Spanish Dialogues") hide_footer_style = """ """ st.markdown(hide_footer_style, unsafe_allow_html=True) if 'generated' not in st.session_state: st.session_state['generated'] = [] if 'past' not in st.session_state: st.session_state['past'] = [] if 'interaction_count' not in st.session_state: st.session_state['interaction_count'] = 0 query = st.text_input("Escribe algo:", key="input") if 'messages' not in st.session_state: st.session_state['messages'] = get_initial_message() if query: with st.spinner("pensando..."): st.session_state['interaction_count'] += 1 messages = st.session_state['messages'] messages = update_chat(messages, "user", query, st.session_state['interaction_count']) # st.write("Before making the API call") # st.write(messages) response = get_chatgpt_response(messages,"gpt-4") messages = update_chat(messages, "assistant", response, st.session_state['interaction_count']) st.session_state.generated.append(response) st.session_state.past.append(query) if st.session_state['generated']: for i in range(len(st.session_state['generated'])-1, -1, -1): message(st.session_state["generated"][i], key=str(i)) message(st.session_state['past'][i], is_user=True, key=str(i) + '_user') # with st.expander("session_state"): # st.write(st.session_state) # with st.expander("Mensajes"): # st.write(messages)