Spaces:
Sleeping
Sleeping
updated
Browse files- requirements.txt +2 -2
- st_app.py +27 -5
- utils.py +4 -1
requirements.txt
CHANGED
|
@@ -1,9 +1,9 @@
|
|
| 1 |
omegaconf==2.3.0
|
| 2 |
python-dotenv==1.0.1
|
| 3 |
-
streamlit==1.
|
| 4 |
streamlit_pills==0.3.0
|
| 5 |
streamlit_feedback==0.1.3
|
| 6 |
uuid==1.30
|
| 7 |
langdetect==1.0.9
|
| 8 |
langcodes==3.4.0
|
| 9 |
-
vectara-agentic==0.1.
|
|
|
|
| 1 |
omegaconf==2.3.0
|
| 2 |
python-dotenv==1.0.1
|
| 3 |
+
streamlit==1.41.1
|
| 4 |
streamlit_pills==0.3.0
|
| 5 |
streamlit_feedback==0.1.3
|
| 6 |
uuid==1.30
|
| 7 |
langdetect==1.0.9
|
| 8 |
langcodes==3.4.0
|
| 9 |
+
vectara-agentic==0.1.21
|
st_app.py
CHANGED
|
@@ -9,7 +9,7 @@ from streamlit_feedback import streamlit_feedback
|
|
| 9 |
from utils import thumbs_feedback, escape_dollars_outside_latex, send_amplitude_data
|
| 10 |
|
| 11 |
from vectara_agentic.agent import AgentStatusType
|
| 12 |
-
from agent import initialize_agent, get_agent_config
|
| 13 |
|
| 14 |
initial_prompt = "How can I help you today?"
|
| 15 |
|
|
@@ -59,15 +59,15 @@ async def launch_bot():
|
|
| 59 |
st.session_state.ex_prompt = None
|
| 60 |
st.session_state.first_turn = True
|
| 61 |
st.session_state.show_logs = False
|
| 62 |
-
|
| 63 |
-
st.session_state.agent = initialize_agent(cfg, agent_progress_callback=agent_progress_callback)
|
| 64 |
-
else:
|
| 65 |
-
st.session_state.agent.clear_memory()
|
| 66 |
|
| 67 |
if 'cfg' not in st.session_state:
|
| 68 |
cfg = get_agent_config()
|
| 69 |
st.session_state.cfg = cfg
|
| 70 |
st.session_state.ex_prompt = None
|
|
|
|
|
|
|
|
|
|
| 71 |
example_messages = [example.strip() for example in cfg.examples.split(";")] if cfg.examples else []
|
| 72 |
st.session_state.example_messages = [em for em in example_messages if len(em)>0]
|
| 73 |
reset()
|
|
@@ -81,6 +81,28 @@ async def launch_bot():
|
|
| 81 |
st.markdown(f"## {cfg['demo_welcome']}")
|
| 82 |
st.markdown(f"{cfg['demo_description']}")
|
| 83 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 84 |
st.markdown("\n\n")
|
| 85 |
bc1, bc2 = st.columns([1, 1])
|
| 86 |
with bc1:
|
|
|
|
| 9 |
from utils import thumbs_feedback, escape_dollars_outside_latex, send_amplitude_data
|
| 10 |
|
| 11 |
from vectara_agentic.agent import AgentStatusType
|
| 12 |
+
from agent import initialize_agent, get_agent_config, teaching_styles, languages
|
| 13 |
|
| 14 |
initial_prompt = "How can I help you today?"
|
| 15 |
|
|
|
|
| 59 |
st.session_state.ex_prompt = None
|
| 60 |
st.session_state.first_turn = True
|
| 61 |
st.session_state.show_logs = False
|
| 62 |
+
st.session_state.agent = initialize_agent(cfg, agent_progress_callback=agent_progress_callback)
|
|
|
|
|
|
|
|
|
|
| 63 |
|
| 64 |
if 'cfg' not in st.session_state:
|
| 65 |
cfg = get_agent_config()
|
| 66 |
st.session_state.cfg = cfg
|
| 67 |
st.session_state.ex_prompt = None
|
| 68 |
+
st.session_state.language = cfg.language
|
| 69 |
+
st.session_state.student_age = cfg.student_age
|
| 70 |
+
st.session_state.style = cfg.style
|
| 71 |
example_messages = [example.strip() for example in cfg.examples.split(";")] if cfg.examples else []
|
| 72 |
st.session_state.example_messages = [em for em in example_messages if len(em)>0]
|
| 73 |
reset()
|
|
|
|
| 81 |
st.markdown(f"## {cfg['demo_welcome']}")
|
| 82 |
st.markdown(f"{cfg['demo_description']}")
|
| 83 |
|
| 84 |
+
st.markdown("\n")
|
| 85 |
+
cfg.style = st.selectbox('Teacher Style:', teaching_styles)
|
| 86 |
+
if st.session_state.style != cfg.style:
|
| 87 |
+
st.session_state.style = cfg.style
|
| 88 |
+
reset()
|
| 89 |
+
st.rerun()
|
| 90 |
+
|
| 91 |
+
cfg.language = st.selectbox('Language:', languages.keys())
|
| 92 |
+
if st.session_state.language != cfg.language:
|
| 93 |
+
st.session_state.language = cfg.language
|
| 94 |
+
reset()
|
| 95 |
+
st.rerun()
|
| 96 |
+
|
| 97 |
+
cfg.student_age = st.number_input(
|
| 98 |
+
'Student age:', min_value=13, max_value=99, value=cfg.student_age,
|
| 99 |
+
step=1, format='%i'
|
| 100 |
+
)
|
| 101 |
+
if st.session_state.student_age != cfg.student_age:
|
| 102 |
+
st.session_state.student_age = cfg.student_age
|
| 103 |
+
reset()
|
| 104 |
+
st.rerun()
|
| 105 |
+
|
| 106 |
st.markdown("\n\n")
|
| 107 |
bc1, bc2 = st.columns([1, 1])
|
| 108 |
with bc1:
|
utils.py
CHANGED
|
@@ -31,8 +31,11 @@ def thumbs_feedback(feedback, **kwargs):
|
|
| 31 |
|
| 32 |
def send_amplitude_data(user_query, bot_response, demo_name, feedback=None):
|
| 33 |
# Send query and response to Amplitude Analytics
|
|
|
|
|
|
|
|
|
|
| 34 |
data = {
|
| 35 |
-
"api_key":
|
| 36 |
"events": [{
|
| 37 |
"device_id": st.session_state.device_id,
|
| 38 |
"event_type": "submitted_query",
|
|
|
|
| 31 |
|
| 32 |
def send_amplitude_data(user_query, bot_response, demo_name, feedback=None):
|
| 33 |
# Send query and response to Amplitude Analytics
|
| 34 |
+
amplitude_token = os.environ.get('AMPLITUDE_TOKEN', None)
|
| 35 |
+
if amplitude_token is None:
|
| 36 |
+
return
|
| 37 |
data = {
|
| 38 |
+
"api_key": amplitude_token,
|
| 39 |
"events": [{
|
| 40 |
"device_id": st.session_state.device_id,
|
| 41 |
"event_type": "submitted_query",
|