in lib/parser.ts [196:214]
function parseToolCall<Params extends ChatCompletionCreateParams>(
params: Params,
toolCall: ChatCompletionMessageToolCall,
): ParsedFunctionToolCall {
const inputTool = params.tools?.find((inputTool) =>
inputTool.function?.name === toolCall.function.name
);
return {
...toolCall,
function: {
...toolCall.function,
parsed_arguments: isAutoParsableTool(inputTool)
? inputTool.$parseRaw(toolCall.function.arguments)
: inputTool?.function.strict
? JSON.parse(toolCall.function.arguments)
: null,
},
};
}