-
-
Notifications
You must be signed in to change notification settings - Fork 17.6k
Description
Check Existing Issues
- I have searched the existing issues and discussions.
- I am using the latest version of Open WebUI.
Installation Method
Git Clone
Open WebUI Version
V0.6.15
Ollama Version (if applicable)
llama3:8b-instruct-fp16
Operating System
Truenas Scale v25.04.1
Browser (if applicable)
No response
Confirmation
- I have read and followed all instructions in
README.md. - I am using the latest version of both Open WebUI and Ollama.
- I have included the browser console logs.
- I have included the Docker container logs.
- I have provided every relevant configuration, setting, and environment variable used in my setup.
- I have clearly listed every relevant configuration, custom setting, environment variable, and command-line option that influences my setup (such as Docker Compose overrides, .env values, browser settings, authentication configurations, etc).
- I have documented step-by-step reproduction instructions that are precise, sequential, and leave nothing to interpretation. My steps:
- Start with the initial platform/version/OS and dependencies used,
- Specify exact install/launch/configure commands,
- List URLs visited, user input (incl. example values/emails/passwords if needed),
- Describe all options and toggles enabled or changed,
- Include any files or environmental changes,
- Identify the expected and actual result at each stage,
- Ensure any reasonably skilled user can follow and hit the same issue.
Expected Behavior
The Brave Search API should not return 429 Too Many Requests errors when Concurrent Requests is set to 1.
There should be an option to add a minimum delay between requests (e.g., 1000 ms) so that the request rate complies with Brave’s documented limit of 1 request per second.
With such a throttle or delay setting, the WebUI should space out queries and avoid triggering Brave’s rate limiter.
Actual Behavior
Even with Concurrent Requests set to 1 and Search Result Count set to 1, the Brave Search API returns a 429 Too Many Requests error.
This happens because the WebUI appears to send requests back-to-back without any delay, exceeding Brave’s rate limit of 1 request per second.
There is currently no setting to enforce a delay or throttle between search requests, which leads to repeated rate-limiting errors during normal usage.
Steps to Reproduce
-
Set up Open WebUI (tested with latest version as of June 2025)
Either self-host or use a local instance -
Configure Web Search settings under the "General" tab:
Web Search Engine: brave
Brave Search API Key: [your valid Brave API key]
Search Result Count: 1
Concurrent Requests: 1 -
Start a conversation with the assistant and ask any query that triggers a web search, e.g.:
What is the latest inflation news? -
Repeat this process multiple times (e.g., ask 2–3 questions back to back or refresh chat).
-
Observe the error response in the WebUI or backend logs:
fastapi.exceptions.HTTPException: 400: 429 Client Error: Too Many Requests for url: https://api.search.brave.com/res/v1/web/search...
- Note that Brave allows only 1 request per second, and Open WebUI does not enforce a delay between sequential requests — causing the 429 error.
Logs & Screenshots
Below is the error log captured from the WebUI backend when using the Brave search API:
fastapi.exceptions.HTTPException: 400: 429 Client Error: Too Many Requests for url: https://api.search.brave.com/res/v1/web/search?q=latest+inflation+news&count=1
This confirms the issue is due to rate limiting (429 Too Many Requests), despite the settings:
Concurrent Requests: 1
Search Result Count: 1
The Brave Search API documentation specifies a limit of 1 request per second, but the WebUI currently issues requests without a delay, triggering this error.
Additional Information
Brave’s official API documentation clearly states a rate limit of 1 request per second.
Other search engines (like Tavily or SerpAPI) seem to work fine because they either allow higher request rates or the backend handles throttling.
The issue affects users with valid Brave API keys, even with minimal search load, due to the lack of a built-in delay/throttle mechanism in Open WebUI.
A simple feature such as “Request Delay (ms)” or automatic rate-limit handling would likely resolve this.
Tested using both Docker and local installs of Open WebUI.