getToolCallable method
Validates and returns the registered tool function with the given arguments.
toolCall
the tool call usually returned from the GroqMessage object.
returns the callable function
, if the tool is registered.
Throws an exception if the tool is not found.
Implementation
Function getToolCallable(GroqToolCall toolCall) {
GroqToolItem? tool;
try {
tool = _registeredTools.firstWhere((element) {
print('element.functionName: ${element.functionName}');
print('toolCall.functionName: ${toolCall.functionName}');
return element.functionName == toolCall.functionName;
});
} catch (e) {
throw Exception('Tool not found');
}
final response = tool.validateAndGetCallable(toolCall.arguments);
return response;
}