RomZay commited on
Commit
8000fad
·
verified ·
1 Parent(s): 7c9c202

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +17 -15
app.py CHANGED
@@ -130,7 +130,7 @@ def render_message(history):
130
  js = """
131
  function Scrolldown() {
132
  function startObserver() {
133
- let targetNode = document.getElementById('chatbox-container');
134
 
135
  if (!targetNode) {
136
  console.log("Chatbox container not found, retrying in 1 second...");
@@ -144,14 +144,15 @@ function Scrolldown() {
144
  const callback = (mutationList, observer) => {
145
  targetNode.scrollTop = targetNode.scrollHeight;
146
  };
147
- console.log("begun to observe")
148
  const observer = new MutationObserver(callback);
149
  observer.observe(targetNode, config);
150
  }
151
 
152
- document.addEventListener("DOMContentLoaded", startObserver);
153
- console.log("event found")
154
  }
 
 
 
155
  """
156
  with gr.Blocks(css=".chatbox {height: 400px; overflow-y: auto; border: 1px solid #262626; padding: 10px; background-color: #171717;}", js=js) as demo:
157
 
@@ -166,7 +167,7 @@ with gr.Blocks(css=".chatbox {height: 400px; overflow-y: auto; border: 1px solid
166
  with gr.Column(visible=False) as chat_view:
167
  gr.Markdown("## P-MSQ Chat Interface")
168
 
169
- chatbot_output = gr.HTML(elem_id="chatbox")
170
 
171
  msg_input = gr.Textbox(
172
  show_label=False,
@@ -193,10 +194,7 @@ with gr.Blocks(css=".chatbox {height: 400px; overflow-y: auto; border: 1px solid
193
 
194
  def user_interaction(message, history, api_key, max_tokens, top_p, temperature):
195
  history, assistant_reply = respond(message, api_key, max_tokens, top_p, temperature)
196
-
197
- full_history_html = render_message(history)
198
-
199
- return full_history_html, history, "", message
200
 
201
 
202
 
@@ -213,13 +211,17 @@ with gr.Blocks(css=".chatbox {height: 400px; overflow-y: auto; border: 1px solid
213
  history = session.get("history", [])
214
  return render_message(history), history
215
 
216
- msg_input.submit(user_interaction,
217
- inputs=[msg_input, history_state, api_key_input, max_tokens, top_p, temperature],
218
- outputs=[chatbot_output, history_state, msg_input, last_message_state])
 
 
219
 
220
- send_btn.click(user_interaction,
221
- inputs=[msg_input, history_state, api_key_input, max_tokens, top_p, temperature],
222
- outputs=[chatbot_output, history_state, msg_input, last_message_state])
 
 
223
 
224
  regen_btn.click(clear_history,
225
  inputs=[api_key_input],
 
130
  js = """
131
  function Scrolldown() {
132
  function startObserver() {
133
+ let targetNode = document.querySelector('#chatbox-container');
134
 
135
  if (!targetNode) {
136
  console.log("Chatbox container not found, retrying in 1 second...");
 
144
  const callback = (mutationList, observer) => {
145
  targetNode.scrollTop = targetNode.scrollHeight;
146
  };
 
147
  const observer = new MutationObserver(callback);
148
  observer.observe(targetNode, config);
149
  }
150
 
151
+ startObserver();
 
152
  }
153
+
154
+ // Ensure function is available globally
155
+ window.Scrolldown = Scrolldown;
156
  """
157
  with gr.Blocks(css=".chatbox {height: 400px; overflow-y: auto; border: 1px solid #262626; padding: 10px; background-color: #171717;}", js=js) as demo:
158
 
 
167
  with gr.Column(visible=False) as chat_view:
168
  gr.Markdown("## P-MSQ Chat Interface")
169
 
170
+ chatbot_output = gr.HTML(elem_id="chatbox-container")
171
 
172
  msg_input = gr.Textbox(
173
  show_label=False,
 
194
 
195
  def user_interaction(message, history, api_key, max_tokens, top_p, temperature):
196
  history, assistant_reply = respond(message, api_key, max_tokens, top_p, temperature)
197
+ return render_message(history), history, "", gr.HTML("<script>Scrolldown();</script>")
 
 
 
198
 
199
 
200
 
 
211
  history = session.get("history", [])
212
  return render_message(history), history
213
 
214
+ msg_input.submit(
215
+ user_interaction,
216
+ inputs=[msg_input, history_state, api_key_input, max_tokens, top_p, temperature],
217
+ outputs=[chatbot_output, history_state, msg_input, gr.HTML()]
218
+ )
219
 
220
+ send_btn.click(
221
+ user_interaction,
222
+ inputs=[msg_input, history_state, api_key_input, max_tokens, top_p, temperature],
223
+ outputs=[chatbot_output, history_state, msg_input, gr.HTML()]
224
+ )
225
 
226
  regen_btn.click(clear_history,
227
  inputs=[api_key_input],