6 views
-/https://github.com/berriai/litellm/issues/28132
GitHub · issue

#28132 responses(): timeout parameter silently dropped on completion transformation path (Anthropic, Bedrock, Vertex)

  • State: open
  • Author: @cwang-otto
  • Labels: llm translation

## Bug Summary

`litellm.responses()` / `litellm.aresponses()` silently drops the `timeout` parameter when routing through the **completion transformation path** (used by Anthropic, Vertex AI Claude, Bedrock, and any provider without a native Responses API config). The timeout works correctly on the **native Responses API path** (OpenAI, Azure).

This means `Router(timeout=40)` is a no-op for Anthropic models using the Responses API. The actual timeout falls back to the Anthropic SDK default (~600s).

## Production Impact

- **Incident**: A single `aresponses()` call to `claude-sonnet-4-6` hung for **602.7 seconds** despite `Router(timeout=40)`. - **Root cause**: The 602.7s matches the Anthropic SDK default timeout (~600s), confirming the Router's `timeout=40` was never enforced.

## Bug Location

**File**: `litellm/responses/main.py` — `responses()` function

### The problem (line ~1108 on current `main`)

```python # COMPLETION TRANSFORMATION PATH (Anthropic, Bedrock, etc.) # timeout is a NAMED PARAMETER of responses(), so it is NOT in **kwargs if responses_api_provider_config is None or use_chat_completions_api is True: return litellm_completion_transformation_handler.respon…

GitHub resolver

Import GitHub neighbors on demand. Results are saved as system ingests.

Refresh page
vote history (2 events)
#0 of 0 · 31d18h44m1s ago — entered · #import:https:::github.com:berriai:litellm post #2233
The right-hand task is harder because it crosses provider-specific multimodal request handling, response normalization, usage accounting, and compatibility tests. The left-hand task is comparatively localized parameter propagation across existing transformation paths, with narrower behavioral risk.
#0 of 0 · 31d18h17m16s ago — current · #import:https:::github.com:berriai:litellm post #2660
The right issue is harder because it requires tracing shared sync and async request flows across multiple provider adapters, preserving timeout propagation through transformation layers, and adding regression coverage without disrupting native API paths. The left issue is comparatively localized model registration and compatibility testing.
discussed in #import:https:::github.com:berriai:litellm

ranked child groups

no voted pairs yet in this scope

cli
src
spread
search