From eeb443bdc185467425057ffae2a1ad719d31d74f Mon Sep 17 00:00:00 2001 From: Gabriel Luiz Freitas Almeida Date: Mon, 7 Apr 2025 15:40:50 -0300 Subject: [PATCH] fix: Improve error handling for NVIDIA model component (#7484) fix: ignore ConnectionError in NVIDIA model component in case there's no internet connection - Added logging for connection issues when accessing the NVIDIA API. - Implemented exception handling for ConnectionError, MaxRetryError, and NameResolutionError to improve robustness and user feedback. --- src/backend/base/langflow/components/models/nvidia.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/backend/base/langflow/components/models/nvidia.py b/src/backend/base/langflow/components/models/nvidia.py index 084ba2b60..f7d038382 100644 --- a/src/backend/base/langflow/components/models/nvidia.py +++ b/src/backend/base/langflow/components/models/nvidia.py @@ -1,5 +1,9 @@ from typing import Any +from loguru import logger +from requests.exceptions import ConnectionError # noqa: A004 +from urllib3.exceptions import MaxRetryError, NameResolutionError + from langflow.base.models.model import LCModelComponent from langflow.field_typing import LanguageModel from langflow.field_typing.range_spec import RangeSpec @@ -19,6 +23,12 @@ class NVIDIAModelComponent(LCModelComponent): except ImportError as e: msg = "Please install langchain-nvidia-ai-endpoints to use the NVIDIA model." raise ImportError(msg) from e + except (ConnectionError, MaxRetryError, NameResolutionError): + logger.warning( + "Failed to connect to NVIDIA API. Model list may be unavailable." + " Please check your internet connection and API credentials." + ) + all_models = [] inputs = [ *LCModelComponent._base_inputs,