Merge pull request #4060 from alpsencer/fix/empty-tool-call-arguments

fix(openai): handle tool calls with empty/null arguments
This commit is contained in:
Mark Backman
2026-03-26 22:04:37 -04:00
committed by GitHub

View File

@@ -528,7 +528,7 @@ class BaseOpenAILLMService(LLMService):
tool_call = chunk.choices[0].delta.tool_calls[0]
if tool_call.index != func_idx:
functions_list.append(function_name)
arguments_list.append(arguments)
arguments_list.append(arguments or "{}")
tool_id_list.append(tool_call_id)
function_name = ""
arguments = ""
@@ -554,10 +554,10 @@ class BaseOpenAILLMService(LLMService):
# a registered handler. If so, run the registered callback, save the result to
# the context, and re-prompt to get a chat answer. If we don't have a registered
# handler, raise an exception.
if function_name and arguments:
if function_name:
# added to the list as last function name and arguments not added to the list
functions_list.append(function_name)
arguments_list.append(arguments)
arguments_list.append(arguments or "{}")
tool_id_list.append(tool_call_id)
function_calls = []