Spaces:
Sleeping
Sleeping
Commit
·
732d634
1
Parent(s):
b5792ea
adjust memory
Browse files
app.py
CHANGED
@@ -22,12 +22,17 @@ def set_api_key(api_key):
|
|
22 |
|
23 |
|
24 |
@st.cache_resource
|
25 |
-
def
|
26 |
-
llm = ChatOpenAI(model_name=model_name, temperature=temperature)
|
27 |
msgs = StreamlitChatMessageHistory(key="basic_chat_app")
|
28 |
memory = ConversationBufferWindowMemory(k=3, memory_key="chat_history",
|
29 |
chat_memory=msgs,
|
30 |
return_messages=True)
|
|
|
|
|
|
|
|
|
|
|
|
|
31 |
prompt = ChatPromptTemplate(
|
32 |
messages=[
|
33 |
SystemMessagePromptTemplate.from_template(
|
@@ -46,7 +51,6 @@ def get_chain(model_name, temperature):
|
|
46 |
return conversation
|
47 |
|
48 |
|
49 |
-
|
50 |
|
51 |
if __name__ == "__main__":
|
52 |
st.header("Basic chatbot")
|
@@ -56,10 +60,10 @@ if __name__ == "__main__":
|
|
56 |
st.write("To clear all memory and start fresh, click 'Clear history'" )
|
57 |
|
58 |
API_KEY = st.sidebar.text_input(
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
|
64 |
model_name = st.sidebar.selectbox(
|
65 |
label = "Choose a model",
|
@@ -78,7 +82,8 @@ if __name__ == "__main__":
|
|
78 |
|
79 |
if API_KEY is not None:
|
80 |
set_api_key(API_KEY)
|
81 |
-
|
|
|
82 |
if st.button("Clear history"):
|
83 |
chain.memory.clear()
|
84 |
st.cache_resource.clear()
|
|
|
22 |
|
23 |
|
24 |
@st.cache_resource
|
25 |
+
def setup_memory():
|
|
|
26 |
msgs = StreamlitChatMessageHistory(key="basic_chat_app")
|
27 |
memory = ConversationBufferWindowMemory(k=3, memory_key="chat_history",
|
28 |
chat_memory=msgs,
|
29 |
return_messages=True)
|
30 |
+
return memory
|
31 |
+
|
32 |
+
|
33 |
+
@st.cache_resource
|
34 |
+
def get_chain(model_name, _memory, temperature):
|
35 |
+
llm = ChatOpenAI(model_name=model_name, temperature=temperature)
|
36 |
prompt = ChatPromptTemplate(
|
37 |
messages=[
|
38 |
SystemMessagePromptTemplate.from_template(
|
|
|
51 |
return conversation
|
52 |
|
53 |
|
|
|
54 |
|
55 |
if __name__ == "__main__":
|
56 |
st.header("Basic chatbot")
|
|
|
60 |
st.write("To clear all memory and start fresh, click 'Clear history'" )
|
61 |
|
62 |
API_KEY = st.sidebar.text_input(
|
63 |
+
'API Key',
|
64 |
+
type='password',
|
65 |
+
help="Enter your OpenAI API key to use this app",
|
66 |
+
value=None)
|
67 |
|
68 |
model_name = st.sidebar.selectbox(
|
69 |
label = "Choose a model",
|
|
|
82 |
|
83 |
if API_KEY is not None:
|
84 |
set_api_key(API_KEY)
|
85 |
+
memory = setup_memory()
|
86 |
+
chain = get_chain(model_name, memory, temperature)
|
87 |
if st.button("Clear history"):
|
88 |
chain.memory.clear()
|
89 |
st.cache_resource.clear()
|