From 37dfda2117abdb088cee9ac092d84f16d4b13824 Mon Sep 17 00:00:00 2001 From: Ivan Konstantinov <155286654+johnnykor82@users.noreply.github.com> Date: Mon, 19 Oct 2026 13:16:18 +0300 Subject: [PATCH] fix(nvidia_nim): cast untyped top_n before runtime validation --- litellm/llms/nvidia_nim/rerank/transformation.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/litellm/llms/nvidia_nim/rerank/transformation.py b/litellm/llms/nvidia_nim/rerank/transformation.py index 829b68efd19..c014064485b 100644 --- a/litellm/llms/nvidia_nim/rerank/transformation.py +++ b/litellm/llms/nvidia_nim/rerank/transformation.py @@ -1,5 +1,5 @@ from collections.abc import Mapping -from typing import Final, Literal +from typing import Final, Literal, cast import httpx from pydantic import ConfigDict, TypeAdapter @@ -210,7 +210,7 @@ class NvidiaNimRerankConfig(BaseRerankConfig): if "documents" not in optional_rerank_params: raise ValueError("documents is required for Nvidia NIM rerank") - top_n: Final[object] = optional_rerank_params.get("top_n") + top_n: Final[object] = cast(object, optional_rerank_params.get("top_n")) # cast-ok: untyped provider parameter is validated below if top_n is not None: if isinstance(top_n, bool) or not isinstance(top_n, int) or top_n < 1: raise ValueError(f"top_n must be a positive integer, got: {top_n!r}")