@@ -240,10 +240,7 @@ def _get_tools(self, model_request_parameters: ModelRequestParameters) -> list[T
240240
241241 @staticmethod
242242 def _map_tool_definition (f : ToolDefinition ) -> ToolTypeDef :
243- tool_spec : ToolSpecificationTypeDef = {
244- 'name' : f .name ,
245- 'inputSchema' : {'json' : f .parameters_json_schema },
246- }
243+ tool_spec : ToolSpecificationTypeDef = {'name' : f .name , 'inputSchema' : {'json' : f .parameters_json_schema }}
247244
248245 if f .description : # pragma: no branch
249246 tool_spec ['description' ] = f .description
@@ -275,6 +272,7 @@ async def request_stream(
275272 model_request_parameters = model_request_parameters ,
276273 _model_name = self .model_name ,
277274 _event_stream = response ,
275+ _provider_name = self ._provider .name ,
278276 )
279277
280278 async def _process_response (self , response : ConverseResponseTypeDef ) -> ModelResponse :
@@ -304,7 +302,9 @@ async def _process_response(self, response: ConverseResponseTypeDef) -> ModelRes
304302 output_tokens = response ['usage' ]['outputTokens' ],
305303 )
306304 vendor_id = response .get ('ResponseMetadata' , {}).get ('RequestId' , None )
307- return ModelResponse (items , usage = u , model_name = self .model_name , provider_request_id = vendor_id )
305+ return ModelResponse (
306+ items , usage = u , model_name = self .model_name , provider_request_id = vendor_id , provider_name = self ._provider .name
307+ )
308308
309309 @overload
310310 async def _messages_create (
@@ -594,6 +594,7 @@ class BedrockStreamedResponse(StreamedResponse):
594594
595595 _model_name : BedrockModelName
596596 _event_stream : EventStream [ConverseStreamOutputTypeDef ]
597+ _provider_name : str
597598 _timestamp : datetime = field (default_factory = _utils .now_utc )
598599
599600 async def _get_event_iterator (self ) -> AsyncIterator [ModelResponseStreamEvent ]: # noqa: C901
@@ -660,15 +661,20 @@ async def _get_event_iterator(self) -> AsyncIterator[ModelResponseStreamEvent]:
660661 if maybe_event : # pragma: no branch
661662 yield maybe_event
662663
663- @property
664- def timestamp (self ) -> datetime :
665- return self ._timestamp
666-
667664 @property
668665 def model_name (self ) -> str :
669666 """Get the model name of the response."""
670667 return self ._model_name
671668
669+ @property
670+ def provider_name (self ) -> str :
671+ """Get the provider name."""
672+ return self ._provider_name
673+
674+ @property
675+ def timestamp (self ) -> datetime :
676+ return self ._timestamp
677+
672678 def _map_usage (self , metadata : ConverseStreamMetadataEventTypeDef ) -> usage .RequestUsage :
673679 return usage .RequestUsage (
674680 input_tokens = metadata ['usage' ]['inputTokens' ],
0 commit comments