toolCallLabel function

String toolCallLabel({
  1. required String toolkit,
  2. required String tool,
  3. required Map<String, Object?>? arguments,
})

Implementation

String toolCallLabel({required String toolkit, required String tool, required Map<String, Object?>? arguments}) {
  final normalizedTool = tool.trim();
  final normalizedToolkit = toolkit.trim();
  if (_commandTools.contains(normalizedTool.toLowerCase()) && arguments != null) {
    final commands = _commandArguments(tool: normalizedTool.toLowerCase(), arguments: arguments);
    if (commands.isNotEmpty) {
      return commands.map(_commandLabel).join(' && ');
    }
  }
  if (normalizedToolkit.isNotEmpty && normalizedToolkit != normalizedTool) {
    return '$normalizedToolkit: ${normalizedTool.isEmpty ? "tool" : normalizedTool}';
  }
  return normalizedTool.isEmpty ? 'tool' : normalizedTool;
}