mirror of
https://github.com/open-webui/open-webui.git
synced 2026-03-11 00:04:08 -05:00
Bug: Tool functions are called without specifying required parameters in 0.3.34 #2473
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @pipars on GitHub (Oct 26, 2024).
Bug Report
After upgrade to 0.3.34 my tool functions are called without specifying requied parameters.
Installation Method
Using watchtower to upgrade docker container from 0.3.33
Environment
Open WebUI Version: 0.3.34
Ollama (if applicable): 0.3.13
Operating System: Ubuntu 24.04
Browser (if applicable): Chrome 130.0.6723.70
Confirmation:
Expected Behavior:
Tool functions are called provided required parameters
Actual Behavior:
Tool function is called but required parameters are not specified
Description
Bug Summary:
After upgrade to 0.3.34 Tool function is called but required parameters are not specified.
Reproduction Details
Steps to Reproduce:
Provide a prompt that would normally call a function which requires parameters.
Logs and Screenshots
Browser Console Logs:
Nothing relevant, everything seems to be normal
Docker Container Logs:
(I trucated to relevant info)
INFO [open_webui.main] tools={
"create_topic": {
"toolkit_id": "neo4j_tool",
"callable": "<function apply_extra_params_to_tool_function..new_function at 0x7600c3885760>",
"spec": {
"name": "create_topic",
"description": "Create Topic",
"parameters": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the Topic. Mandatory"
},
"summary": {
"type": "string",
"description": "Summary of the Topic. Mandatory"
}
},
"required": ["name", "summary"]
}
},
"pydantic_model": "<class 'open_webui.utils.schemas.create_topic'>",
"file_handler": false,
"citation": true
}
}
If a function tool doesn't match the query, return an empty string. Else, pick a function tool, fill in the parameters from the function tool's schema, and return it in the format { "name": "functionName", "parameters": { "key": "value" } }. Only pick a function if the user asks. Only return the object. Do not return any other text.'
content: ["neo4j_tool"]
Additional Information
I have a few tool functions and they used to work 99% fine in 0.3.32. I did not have a chance to use tools in 0.3.33, so I do not know whether this is speciic to 0.3.34 or was introduced in 0.3.33.
The message back is:
Tools.create_topic() missing 2 required positional arguments: 'name' and 'summary'
I have just tried it with the Weather Tool from open webui tools and have same result:
Tools.get_current_weather() missing 1 required positional argument: 'city'
@tjbck commented on GitHub (Oct 26, 2024):
Fixed on dev, 0.3.35 will be released later today!