| import streamlit as st |
|
|
| import sys |
| import os |
|
|
| |
| sys.path.append(os.path.dirname(os.path.abspath(__file__))) |
|
|
| def chatbot_say(message): |
| with st.chat_message("assistant", avatar="🔮"): |
| st.markdown(message) |
|
|
| |
| st.session_state.chat_history.append(("assistant", message)) |
|
|
| def run_chatbot(): |
| from perplexity_api import chat_completion |
|
|
| |
| if 'chat_history' not in st.session_state: |
| st.session_state.chat_history = [] |
|
|
| |
| for role, content in st.session_state.chat_history: |
| with st.chat_message(role): |
| st.markdown(content) |
|
|
| |
| if prompt := st.chat_input("Say something: "): |
| |
| with st.chat_message("user"): |
| st.markdown(prompt) |
| |
| |
| st.session_state.chat_history.append(("user", prompt)) |
|
|
| info = "none" |
| if st.session_state.latest: |
| info = st.session_state.latest |
| |
| response = chat_completion(prompt, info, mode="normal") |
|
|
| |
| with st.chat_message("assistant", avatar="🔮"): |
| st.markdown(response) |
|
|
| |
| st.session_state.chat_history.append(("assistant", response)) |
|
|
| |
|
|