16 views
-/https://github.com/berriai/litellm/issues/26423
GitHub · issue

#26423 [Bug] vertex_ai/anthropic strips output_config body field, disabling Claude 4.7 task_budget on Vertex

  • State: open
  • Author: @midasol
  • Labels: llm translation, stale

## Describe the bug

When routing to `vertex_ai/claude-opus-4-7` (or `claude-sonnet-4-6`), LiteLLM unconditionally drops the `output_config` field from the request body before sending to Vertex's `streamRawPredict` endpoint. This silently disables the official Claude 4.7 **effort + task_budget** controls — the call succeeds, but `task_budget` is never honored and the model over-spends thinking on intermediate tool turns.

## Where

`litellm/llms/vertex_ai/vertex_ai_partner_models/anthropic/transformation.py` [lines 111-112](https://github.com/BerriAI/litellm/blob/main/litellm/llms/vertex_ai/vertex_ai_partner_models/anthropic/transformation.py#L111-L112):

```python # VertexAI doesn't support output_config parameter, remove it if present data.pop("output_config", None) ```

## Expected vs actual

Anthropic's "What's New in Claude 4.7" guide (https://platform.claude.com/docs/en/about-claude/models/whats-new-claude-4-7) documents the recommended invocation as:

```python client.beta.messages.create( model="claude-opus-4-7", max_tokens=128000, output_config={ "effort": "high", "task_budget": {"type": "tokens", "total": 128000}, }, betas=["task-budget…

GitHub resolver

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

Refresh page
vote history (1 events)
#0 of 0 · 31d18h5m1s ago — entered · #import:https:::github.com:berriai:litellm post #3107
The left requires provider-specific request translation changes, compatibility validation, and coverage across affected model paths, while the right is primarily a localized exception-formatting correction with focused regression tests.
discussed in #import:https:::github.com:berriai:litellm

ranked child groups

no voted pairs yet in this scope

cli
src
spread
search