diff --git a/litellm/proxy/hooks/parallel_request_limiter.py b/litellm/proxy/hooks/parallel_request_limiter.py index 7af2a409c5..55ea06e74d 100644 --- a/litellm/proxy/hooks/parallel_request_limiter.py +++ b/litellm/proxy/hooks/parallel_request_limiter.py @@ -4,6 +4,7 @@ from datetime import datetime, timedelta from typing import TYPE_CHECKING, Any, List, Literal, Optional, Tuple, Union from fastapi import HTTPException +from pydantic import BaseModel import litellm from litellm import ModelResponse @@ -791,6 +792,8 @@ class _PROXY_MaxParallelRequestsHandler(CustomLogger): key_tpm_limit = user_api_key_dict.tpm_limit _hidden_params = getattr(response, "_hidden_params", {}) or {} + if isinstance(_hidden_params, BaseModel): + _hidden_params = _hidden_params.model_dump() _additional_headers = _hidden_params.get("additional_headers", {}) or {} if key_remaining_rpm_limit is not None: _additional_headers["x-ratelimit-remaining-requests"] = ( diff --git a/litellm/proxy/proxy_server.py b/litellm/proxy/proxy_server.py index 893ca45072..e80096522f 100644 --- a/litellm/proxy/proxy_server.py +++ b/litellm/proxy/proxy_server.py @@ -3574,12 +3574,11 @@ async def completion( await proxy_logging_obj.post_call_failure_hook( user_api_key_dict=user_api_key_dict, original_exception=e, request_data=data ) - verbose_proxy_logger.error( + verbose_proxy_logger.exception( "litellm.proxy.proxy_server.completion(): Exception occured - {}".format( str(e) ) ) - verbose_proxy_logger.debug(traceback.format_exc()) error_msg = f"{str(e)}" raise ProxyException( message=getattr(e, "message", error_msg),