Commit f4d1677
Python: Add missing index in Bedrock FunctionCallContent instantiation (microsoft#12203)
### Motivation and Context
The current implementation of `BedrockChatCompletion` does not correctly
initialize `FunctionCallContent` instances when using the Converse
Stream API, as the index is not set. As a result, when adding two
consecutive `FunctionCallContent` instances that belong to different
function calls, the `__add__` method does not raise a
`ContentAdditionException` exception, and the parameters are incorrectly
merged.
### Description
This PR ensures proper initialization of the index in
`FunctionCallContent` instances by using the `contentBlockIndex` value
returned by the Converse Stream API in both delta and start content
block messages. This prevents parameters from different function calls
from being merged.
See:
-
https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_ContentBlockDeltaEvent.html
-
https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_ContentBlockStartEvent.html
Closes microsoft#12202
### Contribution Checklist
<!-- Before submitting this PR, please make sure: -->
- [x] The code builds clean without any errors or warnings
- [x] The PR follows the [SK Contribution
Guidelines](https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md)
and the [pre-submission formatting
script](https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md#development-scripts)
raises no violations
- [x] All unit tests pass, and I have added new tests where possible
- [x] I didn't break anyone 😄
Co-authored-by: Javier Cruz <[email protected]>
Co-authored-by: Evan Mattson <[email protected]>1 parent 3ab31c3 commit f4d1677
File tree
1 file changed
+1
-0
lines changed- python/semantic_kernel/connectors/ai/bedrock/services
1 file changed
+1
-0
lines changedLines changed: 1 addition & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
381 | 381 | | |
382 | 382 | | |
383 | 383 | | |
| 384 | + | |
384 | 385 | | |
385 | 386 | | |
386 | 387 | | |
| |||
0 commit comments