#27138 [Bug]: Bedrock Converse injects tools into payload when caller sends none, drop_params=True doesn't help
## Description
When calling a Bedrock model that does **not** support tool use (e.g. `meta.llama3-2-3b-instruct-v1:0`) via LiteLLM's Bedrock Converse handler, the request fails with:
``` BedrockException - {"message":"This model doesn't support tool use."} ```
The caller is **not sending any `tools` field**. Setting `drop_params=True` does **not** fix it.
## Steps to Reproduce
```python import litellm
response = await litellm.acompletion( model="bedrock/meta.llama3-2-3b-instruct-v1:0", messages=[{"role": "user", "content": "Hello"}], drop_params=True, # No `tools` field ) ```
## Expected Behavior
Request succeeds. No tool definitions are sent to Bedrock when the caller did not provide any.
## Actual Behavior
``` httpx.HTTPStatusError: Client error '400 Bad Request' for url '.../converse'
litellm.exceptions.BadRequestError: BedrockException - {"message":"This model doesn't support tool use."} ```
Full traceback points to `converse_handler.py` → `async_completion`.
## Root Cause (suspected)
`converse_handler.py` → `async_completion` injects tool definitions into the Converse payload unconditionally (or based on some upstream state). `drop_params=True` do…