diff --git a/backend/open_webui/utils/tools.py b/backend/open_webui/utils/tools.py index a8e507d383..f523b6ea0d 100644 --- a/backend/open_webui/utils/tools.py +++ b/backend/open_webui/utils/tools.py @@ -1285,7 +1285,7 @@ def convert_openapi_to_tool_payload(openapi_spec): tool['parameters']['properties'].update(resolved_schema['properties']) if 'required' in resolved_schema: tool['parameters']['required'] = list( - set(tool['parameters']['required'] + resolved_schema['required']) + dict.fromkeys(tool['parameters']['required'] + resolved_schema['required']) ) elif resolved_schema.get('type') == 'array': tool['parameters'] = resolved_schema # special case for array