From d1305166df28f7d450e330ff2a2f2a536f60f687 Mon Sep 17 00:00:00 2001 From: severo Date: Wed, 12 Feb 2025 14:31:15 -0300 Subject: [PATCH] Fix the issue where the task was being scheduled in stopped loop --- src/openai/_base_client.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/openai/_base_client.py b/src/openai/_base_client.py index 8a408d8e58..ff513aa54f 100644 --- a/src/openai/_base_client.py +++ b/src/openai/_base_client.py @@ -1364,9 +1364,13 @@ def __del__(self) -> None: if self.is_closed: return + # TODO(someday): support non asyncio runtimes here try: - # TODO(someday): support non asyncio runtimes here - asyncio.get_running_loop().create_task(self.aclose()) + loop = asyncio.get_event_loop() + if loop.is_running(): + loop.create_task(self.aclose()) + else: + loop.run_until_complete(self.aclose()) except Exception: pass