mirror of
https://github.com/BerriAI/litellm.git
synced 2026-09-17 23:51:30 +00:00
fix(pass-through): use logging_obj fallback for passthrough_logging_payload in non-streaming paths
passthrough_logging_payload is a named parameter of pass_through_async_success_handler
and is therefore consumed from **kwargs before reaching provider handlers.
All non-streaming kwargs.get('passthrough_logging_payload') calls returned None,
making _apply_spend_logs_metadata a no-op on every non-streaming path.
Fix: add logging_obj.model_call_details.get('passthrough_logging_payload') fallback
in base, anthropic, cohere, openai (first path), gemini, and vertex handlers.
The streaming path already uses _seed_streaming_kwargs_from_logging_obj which
reads from the same logging_obj.model_call_details source.
This commit is contained in:
parent
7e6f4f3306
commit
63b4a7962b
6 changed files with 16 additions and 4 deletions
|
|
@ -147,6 +147,7 @@ class AnthropicPassthroughLoggingHandler:
|
|||
kwargs["model"] = model
|
||||
passthrough_logging_payload: Optional[PassthroughStandardLoggingPayload] = ( # type: ignore
|
||||
kwargs.get("passthrough_logging_payload")
|
||||
or logging_obj.model_call_details.get("passthrough_logging_payload")
|
||||
)
|
||||
if passthrough_logging_payload:
|
||||
user = AnthropicPassthroughLoggingHandler._get_user_from_metadata(
|
||||
|
|
|
|||
|
|
@ -161,6 +161,7 @@ class BasePassthroughLoggingHandler(ABC):
|
|||
kwargs["model"] = model
|
||||
passthrough_logging_payload: Optional[PassthroughStandardLoggingPayload] = ( # type: ignore
|
||||
kwargs.get("passthrough_logging_payload")
|
||||
or logging_obj.model_call_details.get("passthrough_logging_payload")
|
||||
)
|
||||
if passthrough_logging_payload:
|
||||
user = self._get_user_from_metadata(
|
||||
|
|
|
|||
|
|
@ -131,7 +131,10 @@ class CoherePassthroughLoggingHandler(BasePassthroughLoggingHandler):
|
|||
# Extract user information for tracking
|
||||
passthrough_logging_payload: Optional[
|
||||
PassthroughStandardLoggingPayload
|
||||
] = kwargs.get("passthrough_logging_payload")
|
||||
] = (
|
||||
kwargs.get("passthrough_logging_payload")
|
||||
or logging_obj.model_call_details.get("passthrough_logging_payload")
|
||||
)
|
||||
if passthrough_logging_payload:
|
||||
user = handler_instance._get_user_from_metadata(
|
||||
passthrough_logging_payload=passthrough_logging_payload,
|
||||
|
|
|
|||
|
|
@ -250,7 +250,9 @@ class GeminiPassthroughLoggingHandler:
|
|||
|
||||
from .base_passthrough_logging_handler import BasePassthroughLoggingHandler # noqa: PLC0415
|
||||
BasePassthroughLoggingHandler._apply_spend_logs_metadata(
|
||||
kwargs, kwargs.get("passthrough_logging_payload")
|
||||
kwargs,
|
||||
kwargs.get("passthrough_logging_payload")
|
||||
or logging_obj.model_call_details.get("passthrough_logging_payload"),
|
||||
)
|
||||
|
||||
# pretty print standard logging object
|
||||
|
|
|
|||
|
|
@ -369,7 +369,10 @@ class OpenAIPassthroughLoggingHandler(BasePassthroughLoggingHandler):
|
|||
# Extract user information for tracking
|
||||
passthrough_logging_payload: Optional[
|
||||
PassthroughStandardLoggingPayload
|
||||
] = kwargs.get("passthrough_logging_payload")
|
||||
] = (
|
||||
kwargs.get("passthrough_logging_payload")
|
||||
or logging_obj.model_call_details.get("passthrough_logging_payload")
|
||||
)
|
||||
if passthrough_logging_payload:
|
||||
user = handler_instance._get_user_from_metadata(
|
||||
passthrough_logging_payload=passthrough_logging_payload,
|
||||
|
|
|
|||
|
|
@ -554,7 +554,9 @@ class VertexPassthroughLoggingHandler:
|
|||
|
||||
from litellm.proxy.pass_through_endpoints.llm_provider_handlers.base_passthrough_logging_handler import BasePassthroughLoggingHandler # noqa: PLC0415
|
||||
BasePassthroughLoggingHandler._apply_spend_logs_metadata(
|
||||
kwargs, kwargs.get("passthrough_logging_payload")
|
||||
kwargs,
|
||||
kwargs.get("passthrough_logging_payload")
|
||||
or logging_obj.model_call_details.get("passthrough_logging_payload"),
|
||||
)
|
||||
|
||||
# pretty print standard logging object
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue