mishig HF staff commited on
Commit
6bb767e
β€’
1 Parent(s): 29443e4

"stop" btn for streaming messages

Browse files
src/lib/components/InferencePlayground/InferencePlayground.svelte CHANGED
@@ -85,7 +85,6 @@
85
  }
86
  (document.activeElement as HTMLElement).blur();
87
  loading = true;
88
- let streamingMsgAdded = false;
89
 
90
  try {
91
  const startTime = performance.now();
@@ -94,7 +93,6 @@
94
  if (conversation.streaming) {
95
  const streamingMessage = { role: "assistant", content: "" };
96
  conversation.messages = [...conversation.messages, streamingMessage];
97
- streamingMsgAdded = true;
98
  abortController = new AbortController();
99
 
100
  await handleStreamingResponse(
@@ -125,9 +123,6 @@
125
  const endTime = performance.now();
126
  latency = Math.round(endTime - startTime);
127
  } catch (error) {
128
- if (streamingMsgAdded) {
129
- conversation.messages = conversation.messages.slice(0, -1);
130
- }
131
  if (error instanceof Error) {
132
  if (error.message.includes("token seems invalid")) {
133
  hfToken = "";
@@ -209,7 +204,9 @@
209
  </div>
210
  </div>
211
  <div class="relative divide-y divide-gray-200 dark:divide-gray-800" on:keydown={onKeydown}>
212
- <div class="flex h-[calc(100dvh-5rem-120px)] md:h-[calc(100dvh-5rem)] divide-x divide-gray-200 *:w-full dark:divide-gray-800 pt-3">
 
 
213
  <Conversation
214
  {loading}
215
  {conversation}
@@ -288,7 +285,13 @@
288
  >
289
  {#if loading}
290
  <div class="flex flex-none items-center gap-[3px]">
291
- <span class="mr-2">Cancel</span>
 
 
 
 
 
 
292
  <div
293
  class="h-1 w-1 flex-none animate-bounce rounded-full bg-gray-500 dark:bg-gray-100"
294
  style="animation-delay: 0.25s;"
 
85
  }
86
  (document.activeElement as HTMLElement).blur();
87
  loading = true;
 
88
 
89
  try {
90
  const startTime = performance.now();
 
93
  if (conversation.streaming) {
94
  const streamingMessage = { role: "assistant", content: "" };
95
  conversation.messages = [...conversation.messages, streamingMessage];
 
96
  abortController = new AbortController();
97
 
98
  await handleStreamingResponse(
 
123
  const endTime = performance.now();
124
  latency = Math.round(endTime - startTime);
125
  } catch (error) {
 
 
 
126
  if (error instanceof Error) {
127
  if (error.message.includes("token seems invalid")) {
128
  hfToken = "";
 
204
  </div>
205
  </div>
206
  <div class="relative divide-y divide-gray-200 dark:divide-gray-800" on:keydown={onKeydown}>
207
+ <div
208
+ class="flex h-[calc(100dvh-5rem-120px)] divide-x divide-gray-200 pt-3 *:w-full md:h-[calc(100dvh-5rem)] dark:divide-gray-800"
209
+ >
210
  <Conversation
211
  {loading}
212
  {conversation}
 
285
  >
286
  {#if loading}
287
  <div class="flex flex-none items-center gap-[3px]">
288
+ <span class="mr-2">
289
+ {#if conversation.streaming}
290
+ Stop
291
+ {:else}
292
+ Cancel
293
+ {/if}
294
+ </span>
295
  <div
296
  class="h-1 w-1 flex-none animate-bounce rounded-full bg-gray-500 dark:bg-gray-100"
297
  style="animation-delay: 0.25s;"
src/lib/components/InferencePlayground/InferencePlaygroundMessage.svelte CHANGED
@@ -27,7 +27,7 @@
27
  dispatch("delete");
28
  }}
29
  type="button"
30
- class="mt-1.5 sm:hidden size-8 rounded-lg border border-gray-200 bg-white text-xs font-medium text-gray-900 hover:bg-gray-100 hover:text-blue-700 focus:z-10 focus:outline-none focus:ring-4 focus:ring-gray-100 group-hover/message:block dark:border-gray-600 dark:bg-gray-800 dark:text-gray-400 dark:hover:bg-gray-700 dark:hover:text-white dark:focus:ring-gray-700"
31
  >βœ•</button
32
  >
33
  </div>
 
27
  dispatch("delete");
28
  }}
29
  type="button"
30
+ class="mt-1.5 size-8 rounded-lg border border-gray-200 bg-white text-xs font-medium text-gray-900 hover:bg-gray-100 hover:text-blue-700 focus:z-10 focus:outline-none focus:ring-4 focus:ring-gray-100 group-hover/message:block sm:hidden dark:border-gray-600 dark:bg-gray-800 dark:text-gray-400 dark:hover:bg-gray-700 dark:hover:text-white dark:focus:ring-gray-700"
31
  >βœ•</button
32
  >
33
  </div>