From 26034f5103f50559f3ee274026669799725441a4 Mon Sep 17 00:00:00 2001 From: Julian Blank Date: Mon, 3 Mar 2025 06:41:16 -0800 Subject: fix: bedrock handles empty tool call arguments (#1213) --- src/client/bedrock.rs | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/client/bedrock.rs') diff --git a/src/client/bedrock.rs b/src/client/bedrock.rs index 0dc84ca..16ea5d0 100644 --- a/src/client/bedrock.rs +++ b/src/client/bedrock.rs @@ -222,6 +222,9 @@ async fn chat_completions_streaming( json_str_from_map(tool_use, "name"), ) { if !function_name.is_empty() { + if function_arguments.is_empty() { + function_arguments = String::from("{}"); + } let arguments: Value = function_arguments.parse().with_context(|| { format!("Tool call '{function_name}' have non-JSON arguments '{function_arguments}'") @@ -259,6 +262,9 @@ async fn chat_completions_streaming( reasoning_state = 0; } if !function_name.is_empty() { + if function_arguments.is_empty() { + function_arguments = String::from("{}"); + } let arguments: Value = function_arguments.parse().with_context(|| { format!("Tool call '{function_name}' have non-JSON arguments '{function_arguments}'") })?; -- cgit v1.2.3