File size: 1,660 Bytes
c684f94
5528cae
6e0e30b
 
 
389656c
c684f94
6e0e30b
c684f94
6e0e30b
 
e6fdcd2
6e0e30b
 
c684f94
f9f9d77
 
 
 
 
 
 
 
 
 
 
 
 
 
5a838f1
f9f9d77
 
 
 
 
 
 
 
 
 
 
 
c684f94
7215dc2
f9f9d77
 
7215dc2
 
f9f9d77
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
import streamlit as st
import torch
import uuid
import nest_asyncio
import asyncio
import sys

torch.classes.__path__ = []

if 'device_id' not in st.session_state:
    st.session_state.device_id = str(uuid.uuid4())

if "feedback_key" not in st.session_state:
    st.session_state.feedback_key = 0


async def launch_bot():
    def reset():
        st.session_state.messages = [{"role": "assistant", "content": initial_prompt, "avatar": "🦖"}]
        st.session_state.log_messages = []
        st.session_state.prompt = None
        st.session_state.ex_prompt = None
        st.session_state.first_turn = True
        st.session_state.show_logs = False
        if 'agent' not in st.session_state:
            st.session_state.agent = initialize_agent(cfg, agent_progress_callback=agent_progress_callback)
        else:
            st.session_state.agent.clear_memory()
    if 'cfg' not in st.session_state:
        #cfg = st.session_state.cfg 
        st.session_state.cfg = cfg
        st.session_state.ex_prompt = None
        example_messages = [example.strip() for example in cfg.examples.split(";")] if cfg.examples else []
        st.session_state.example_messages = [em for em in example_messages if len(em)>0]
        reset()

    cfg = st.session_state.cfg    
    sys.stdout.flush()

if "feedback_key" not in st.session_state:
    st.session_state.feedback_key = 0

if __name__ == "__main__":
    st.set_page_config(page_title="Test Sticky Header", layout="wide")
    nest_asyncio.apply()
    asyncio.run(launch_bot())
    st.image("images/SBS_Chapter_Index.png")
    for i in range(50):
        st.write(f"Settings: Scrollable content line {i+1}")