From be97da44faef1edf5cabf473adce52843936def7 Mon Sep 17 00:00:00 2001 From: Darcy Liu Date: Sun, 26 Apr 2026 00:09:01 +0000 Subject: [PATCH] fix(bedrock): filter anthropic beta headers for converse requests Apply provider-aware beta header filtering on Bedrock Converse request translation so unsupported anthropic_beta values from Claude Code do not get forwarded and fail runtime calls. Made-with: Cursor --- litellm/llms/bedrock/chat/converse_transformation.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/litellm/llms/bedrock/chat/converse_transformation.py b/litellm/llms/bedrock/chat/converse_transformation.py index db6784d042b..eea897e43e8 100644 --- a/litellm/llms/bedrock/chat/converse_transformation.py +++ b/litellm/llms/bedrock/chat/converse_transformation.py @@ -11,6 +11,7 @@ from typing import List, Literal, Optional, Tuple, Union, cast, overload import httpx import litellm +from litellm.anthropic_beta_headers_manager import filter_and_transform_beta_headers from litellm._logging import verbose_logger from litellm.constants import ( BEDROCK_MIN_THINKING_BUDGET_TOKENS, @@ -1271,6 +1272,12 @@ class AmazonConverseConfig(BaseConfig): if headers: user_betas = get_anthropic_beta_from_headers(headers) anthropic_beta_list.extend(user_betas) + if anthropic_beta_list: + # Bedrock Converse has stricter beta-header support than raw Anthropic APIs. + # Filter/mapping ensures unsupported beta flags do not get forwarded. + anthropic_beta_list = filter_and_transform_beta_headers( + beta_headers=anthropic_beta_list, provider="bedrock_converse" + ) # Separate pre-formatted Bedrock tools (e.g. systemTool from web_search_options) # from OpenAI-format tools that need transformation via _bedrock_tools_pt