diff --git a/endpoints/OAI/utils/chat_completion.py b/endpoints/OAI/utils/chat_completion.py index b9c6f71..c1c0263 100644 --- a/endpoints/OAI/utils/chat_completion.py +++ b/endpoints/OAI/utils/chat_completion.py @@ -311,8 +311,9 @@ async def stream_generate_chat_completion( except CancelledError: # Get out if the request gets disconnected - abort_event.set() - handle_request_disconnect("Chat completion generation cancelled by user.") + if not disconnect_task.done(): + abort_event.set() + handle_request_disconnect("Chat completion generation cancelled by user.") except Exception: yield get_generator_error( "Chat completion aborted. Please check the server console." diff --git a/endpoints/OAI/utils/completion.py b/endpoints/OAI/utils/completion.py index 23f2692..fe5520c 100644 --- a/endpoints/OAI/utils/completion.py +++ b/endpoints/OAI/utils/completion.py @@ -162,10 +162,11 @@ async def stream_generate_completion( except CancelledError: # Get out if the request gets disconnected - abort_event.set() - handle_request_disconnect( - f"Completion generation {request.state.id} cancelled by user." - ) + if not disconnect_task.done(): + abort_event.set() + handle_request_disconnect( + f"Completion generation {request.state.id} cancelled by user." + ) except Exception: yield get_generator_error( f"Completion {request.state.id} aborted. Please check the server console."