style: apply black formatting to PR files

This commit is contained in:
mateo-berri 2026-04-23 10:20:50 -07:00
parent 17a638cab9
commit e61b5c1ebf
6 changed files with 32 additions and 36 deletions

View file

@ -320,12 +320,8 @@ class RubrikLogger(CustomGuardrail, CustomBatchLogger):
"content": system_prompt_msg_list,
}
if isinstance(standard_logging_payload["messages"], list):
standard_logging_payload["messages"].insert(
0, system_scaffold
)
elif isinstance(
standard_logging_payload["messages"], (dict, str)
):
standard_logging_payload["messages"].insert(0, system_scaffold)
elif isinstance(standard_logging_payload["messages"], (dict, str)):
standard_logging_payload["messages"] = [
system_scaffold,
standard_logging_payload["messages"],
@ -355,14 +351,10 @@ class RubrikLogger(CustomGuardrail, CustomBatchLogger):
exc_info=True,
)
async def async_log_success_event(
self, kwargs, response_obj, start_time, end_time
):
async def async_log_success_event(self, kwargs, response_obj, start_time, end_time):
await self._enqueue_log_event(kwargs, "success")
async def async_log_failure_event(
self, kwargs, response_obj, start_time, end_time
):
async def async_log_failure_event(self, kwargs, response_obj, start_time, end_time):
await self._enqueue_log_event(kwargs, "failure")
# -- Batch logging ---------------------------------------------------------

View file

@ -170,7 +170,9 @@ class AmazonAnthropicClaudeConfig(AmazonInvokeConfig, AnthropicConfig):
anthropic_request.pop("model", None)
anthropic_request.pop("stream", None)
anthropic_request.pop("output_format", None)
if not _supports_factory(model=model, custom_llm_provider=None, key="supports_output_config"):
if not _supports_factory(
model=model, custom_llm_provider=None, key="supports_output_config"
):
anthropic_request.pop("output_config", None)
if "anthropic_version" not in anthropic_request:
anthropic_request["anthropic_version"] = self.anthropic_version

View file

@ -504,7 +504,9 @@ class AmazonAnthropicClaudeMessagesConfig(
# 5b. Bedrock Invoke supports output_config (effort) for Claude 4.6+ models,
# but older models do not — strip it to avoid request rejection.
# Ref: https://github.com/BerriAI/litellm/issues/22797
if not _supports_factory(model=model, custom_llm_provider=None, key="supports_output_config"):
if not _supports_factory(
model=model, custom_llm_provider=None, key="supports_output_config"
):
anthropic_messages_request.pop("output_config", None)
# 5a. Remove `custom` field from tools (Bedrock doesn't support it)

View file

@ -5,9 +5,7 @@ from typing import Any, Dict
from litellm.types.utils import GenericGuardrailAPIInputs
def make_tool_call_dict(
tc_id: str, name: str, arguments: str = "{}"
) -> Dict[str, Any]:
def make_tool_call_dict(tc_id: str, name: str, arguments: str = "{}") -> Dict[str, Any]:
"""Create a tool call dict matching the ChatCompletionMessageToolCall schema."""
return {
"id": tc_id,

View file

@ -58,9 +58,7 @@ class TestInitialization:
def test_init_with_constructor_params(self):
with patch("asyncio.create_task", Mock()):
handler = RubrikLogger(
api_key="ctor-key", api_base="http://ctor-host:9090"
)
handler = RubrikLogger(api_key="ctor-key", api_base="http://ctor-host:9090")
assert handler.key == "ctor-key"
assert (
handler.tool_blocking_endpoint
@ -152,9 +150,7 @@ class TestInitialization:
assert handler._headers["Content-Type"] == "application/json"
def test_headers_without_api_key(self):
with patch.dict(
os.environ, {"RUBRIK_WEBHOOK_URL": "http://host"}, clear=True
):
with patch.dict(os.environ, {"RUBRIK_WEBHOOK_URL": "http://host"}, clear=True):
with patch("asyncio.create_task", Mock()):
h = RubrikLogger()
assert "Authorization" not in h._headers
@ -351,9 +347,7 @@ def _echo_service():
@pytest.mark.asyncio
class TestApplyGuardrail:
async def test_skips_requests(self, handler):
inputs = make_inputs_with_tools(
[make_tool_call_dict("call_1", "test_tool")]
)
inputs = make_inputs_with_tools([make_tool_call_dict("call_1", "test_tool")])
result = await handler.apply_guardrail(
inputs=inputs, request_data={}, input_type="request"
)
@ -464,9 +458,7 @@ class TestApplyGuardrail:
async def test_blocking_service_payload_format(self, handler):
tc1 = make_tool_call_dict("call_1", "get_weather", '{"location": "SF"}')
tc2 = make_tool_call_dict(
"call_2", "send_email", '{"to": "user@example.com"}'
)
tc2 = make_tool_call_dict("call_2", "send_email", '{"to": "user@example.com"}')
inputs = make_inputs_with_tools([tc1, tc2])
captured_payload: Dict[str, Any] = {}
@ -605,9 +597,7 @@ class TestApplyGuardrailAnthropicFormat:
inputs = make_inputs_with_tools([tc])
mock_client = AsyncMock()
mock_client.post = AsyncMock(
side_effect=httpx.TimeoutException("Timeout")
)
mock_client.post = AsyncMock(side_effect=httpx.TimeoutException("Timeout"))
handler.tool_blocking_client = mock_client
result = await handler.apply_guardrail(
@ -728,5 +718,7 @@ class TestResolveModel:
response = Mock()
response.model = ""
result = RubrikLogger._resolve_model({"response": response}, {"model": "fallback"})
result = RubrikLogger._resolve_model(
{"response": response}, {"model": "fallback"}
)
assert result == "unknown"

View file

@ -702,7 +702,10 @@ async def test_promote_message_start_cache_when_message_stop_omits_cache_fields(
"delta": {"stop_reason": "end_turn", "stop_sequence": None},
"usage": {"input_tokens": 10, "output_tokens": 181},
}
yield {"type": "message_stop", "usage": {"input_tokens": 10, "output_tokens": 181}}
yield {
"type": "message_stop",
"usage": {"input_tokens": 10, "output_tokens": 181},
}
merged: list[dict] = []
async for chunk in cfg._promote_message_stop_usage(_stream()):
@ -756,7 +759,11 @@ async def test_unified_bedrock_messages_cache_on_start_only_never_negative_cost(
},
},
}
yield {"type": "content_block_start", "index": 0, "content_block": {"type": "text", "text": ""}}
yield {
"type": "content_block_start",
"index": 0,
"content_block": {"type": "text", "text": ""},
}
yield {
"type": "content_block_delta",
"index": 0,
@ -768,7 +775,10 @@ async def test_unified_bedrock_messages_cache_on_start_only_never_negative_cost(
"delta": {"stop_reason": "end_turn", "stop_sequence": None},
"usage": {"output_tokens": 181, "input_tokens": 10},
}
yield {"type": "message_stop", "usage": {"input_tokens": 10, "output_tokens": 181}}
yield {
"type": "message_stop",
"usage": {"input_tokens": 10, "output_tokens": 181},
}
logging_obj = LiteLLMLoggingObj(
model="bedrock/anthropic.claude-3-5-sonnet-20240620-v1:0",