mirror of
https://github.com/open-webui/open-webui.git
synced 2026-03-10 15:54:15 -05:00
[Bug]DuckDuckGo Web Search is broken #3555
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 @zerodegress on GitHub (Feb 3, 2025).
Bug Report
Installation Method
Both Docker and pip.
Environment
Open WebUI Version: v0.5.7
**Ollama (if applicable):**v0.5.7
Operating System: ArchLinux
Browser (if applicable): Firefox 135.0b9
Confirmation:
Expected Behavior:
Web Search should be available, and the search query should be generated correctly.
Actual Behavior:
Errors occured when using duckduckgo as the web searchbackend, which reported 'keywords is mandatory' or more.
Description
Bug Summary:
[Provide a brief but clear summary of the bug]
Reproduction Details
Steps to Reproduce:
Logs and Screenshots
Docker Container Logs:
/app/backend/open_webui/retrieval/web/duckduckgo.py:27: UserWarning: backend='api' is deprecated, using backend='auto'
ddgs_gen = ddgs.text(
ERROR [open_webui.routers.retrieval] keywords is mandatory
Traceback (most recent call last):
File "/app/backend/open_webui/routers/retrieval.py", line 1248, in process_web_search
web_results = search_web(
^^^^^^^^^^^
File "/app/backend/open_webui/routers/retrieval.py", line 1196, in search_web
return search_duckduckgo(
^^^^^^^^^^^^^^^^^^
File "/app/backend/open_webui/retrieval/web/duckduckgo.py", line 27, in search_duckduckgo
ddgs_gen = ddgs.text(
^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/duckduckgo_search/duckduckgo_search.py", line 253, in text
raise DuckDuckGoSearchException(err)
duckduckgo_search.exceptions.DuckDuckGoSearchException: keywords is mandatory
ERROR [open_webui.utils.middleware] 400: keywords is mandatory
Traceback (most recent call last):
File "/app/backend/open_webui/routers/retrieval.py", line 1248, in process_web_search
web_results = search_web(
^^^^^^^^^^^
File "/app/backend/open_webui/routers/retrieval.py", line 1196, in search_web
return search_duckduckgo(
^^^^^^^^^^^^^^^^^^
File "/app/backend/open_webui/retrieval/web/duckduckgo.py", line 27, in search_duckduckgo
ddgs_gen = ddgs.text(
^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/duckduckgo_search/duckduckgo_search.py", line 253, in text
raise DuckDuckGoSearchException(err)
duckduckgo_search.exceptions.DuckDuckGoSearchException: keywords is mandatory
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/app/backend/open_webui/utils/middleware.py", line 425, in chat_web_search_handler
results = await loop.run_in_executor(
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/concurrent/futures/thread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/app/backend/open_webui/utils/middleware.py", line 427, in
lambda: process_web_search(
^^^^^^^^^^^^^^^^^^^
File "/app/backend/open_webui/routers/retrieval.py", line 1254, in process_web_search
raise HTTPException(
fastapi.exceptions.HTTPException: 400: keywords is mandatory
Screenshots/Screen Recordings (if applicable):