From 5ca091b210833a122ed79e998db786f91d7fc5e8 Mon Sep 17 00:00:00 2001 From: agustin18 Date: Sun, 18 Oct 2026 21:16:49 +0000 Subject: [PATCH] fix(timeout): eliminate banned cast import and use float conversion Signed-off-by: agustin18 --- litellm/timeout.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/litellm/timeout.py b/litellm/timeout.py index 2b9e04a07c7..b83fccbdaf4 100644 --- a/litellm/timeout.py +++ b/litellm/timeout.py @@ -16,7 +16,7 @@ from concurrent import futures from functools import wraps from inspect import iscoroutinefunction from threading import Thread -from typing import Final, cast +from typing import Final from litellm.exceptions import Timeout @@ -66,10 +66,10 @@ def timeout(timeout_duration: float = 0.0, exception_to_raise=Timeout): @wraps(func) async def async_wrapper(*args, **kwargs): local_timeout_duration: float | None = timeout_duration - if "force_timeout" in kwargs and kwargs["force_timeout"] is not None: - local_timeout_duration = cast(float | None, kwargs["force_timeout"]) - elif "request_timeout" in kwargs and kwargs["request_timeout"] is not None: - local_timeout_duration = cast(float | None, kwargs["request_timeout"]) + if "force_timeout" in kwargs and isinstance(kwargs["force_timeout"], (int, float)): + local_timeout_duration = float(kwargs["force_timeout"]) + elif "request_timeout" in kwargs and isinstance(kwargs["request_timeout"], (int, float)): + local_timeout_duration = float(kwargs["request_timeout"]) try: value: Final = await asyncio.wait_for(func(*args, **kwargs), timeout=local_timeout_duration) return value