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:
|
||||
# Only set additionalModelRequestFields if there are actual fields to pass
|
||||
args["additionalModelRequestFields"] = additional_fields
|
||||
# Merge with existing additionalModelRequestFields (e.g., from reasoning_effort)
|
||||
existing = args.get("additionalModelRequestFields", {})
|
||||
existing.update(additional_fields)
|
||||
args["additionalModelRequestFields"] = existing
|
||||
|
||||
# Extended thinking doesn't support both temperature and topP
|
||||
# Remove topP to avoid validation error
|
||||
|
||||
Reference in New Issue
Block a user