Visitar URL original
Python: [Bug]: BedrockChatClient silently drops per-call client kwargs · Issue #9344 · microsoft/agent-framework · GitHub
Skip to content

Python: [Bug]: BedrockChatClient silently drops per-call client kwargs #9344

Closed

Description

Observed Behavior

BedrockChatClient._prepare_options takes **kwargs but never uses them, so per-call client kwargs are silently dropped from the Converse request. Anything passed through get_response(..., client_kwargs={...}), like guardrailConfig or requestMetadata, just vanishes with no error.

Every sibling client forwards them, for example mistral ends _prepare_options with request.update(kwargs).

Expected Behavior

Per-call client kwargs should land in the request that goes to Bedrock.

Steps to Reproduce

  1. Create a BedrockChatClient.
  2. Call _prepare_options with a couple of Bedrock-native kwargs.
  3. The returned request dict does not contain them.

Minimal Reproduction

from agent_framework import Message
from agent_framework_bedrock._chat_client import BedrockChatClient

client = BedrockChatClient(model="anthropic.claude-3-haiku-20240307-v1:0", region="us-east-1",
                           access_key="t", secret_key="t")
msg = Message("user", ["hello"])
request = client._prepare_options(msg_list, {}, additionalModelResponseFieldPaths=["x"])
# "additionalModelResponseFieldPaths" is nowhere in request

Error Messages and Stack Traces

No error, the fields are silently ignored.

Package Versions

agent-framework-bedrock built from main (dcbbf79)

Python Version

Python 3.14.8

Operating System

macOS

Regression

Unknown

Additional Context

_inner_get_response forwards the same kwargs it received from core into _prepare_options, so the plumbing is all there, only the final merge is missing. Happy to send a PR that merges kwargs like mistral does.

Acknowledgements

  • I searched existing issues and did not find a duplicate.

Metadata

Metadata

Labels

pythonUsage: [Issues, PRs], Target: Python

Type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions