diff --git a/pydantic_ai_slim/pydantic_ai/models/bedrock.py b/pydantic_ai_slim/pydantic_ai/models/bedrock.py index b54df588b..af5e4acff 100644 --- a/pydantic_ai_slim/pydantic_ai/models/bedrock.py +++ b/pydantic_ai_slim/pydantic_ai/models/bedrock.py @@ -55,6 +55,7 @@ PromptVariableValuesTypeDef, SystemContentBlockTypeDef, ToolChoiceTypeDef, + ToolSpecificationTypeDef, ToolTypeDef, VideoBlockTypeDef, ) @@ -214,14 +215,16 @@ def _get_tools(self, model_request_parameters: ModelRequestParameters) -> list[T @staticmethod def _map_tool_definition(f: ToolDefinition) -> ToolTypeDef: - return { - 'toolSpec': { - 'name': f.name, - 'description': f.description, - 'inputSchema': {'json': f.parameters_json_schema}, - } + tool_spec: ToolSpecificationTypeDef = { + 'name': f.name, + 'inputSchema': {'json': f.parameters_json_schema}, } + if f.description: + tool_spec['description'] = f.description + + return {'toolSpec': tool_spec} + @property def base_url(self) -> str: return str(self.client.meta.endpoint_url)