fix: merge additionalModelRequestFields instead of overwriting
When both reasoning_effort and extra_body are provided, additionalModelRequestFields set by reasoning_effort (containing reasoning_config) was silently overwritten by extra_body processing. This prevented features like anthropic_beta for 1M context from coexisting with reasoning_effort.
This commit is contained in:
@@ -874,8 +874,10 @@ class BedrockModel(BaseChatModel):
|
|||||||
}
|
}
|
||||||
|
|
||||||
if additional_fields:
|
if additional_fields:
|
||||||
# Only set additionalModelRequestFields if there are actual fields to pass
|
# Merge with existing additionalModelRequestFields (e.g., from reasoning_effort)
|
||||||
args["additionalModelRequestFields"] = additional_fields
|
existing = args.get("additionalModelRequestFields", {})
|
||||||
|
existing.update(additional_fields)
|
||||||
|
args["additionalModelRequestFields"] = existing
|
||||||
|
|
||||||
# Extended thinking doesn't support both temperature and topP
|
# Extended thinking doesn't support both temperature and topP
|
||||||
# Remove topP to avoid validation error
|
# Remove topP to avoid validation error
|
||||||
|
|||||||
Reference in New Issue
Block a user