mirror of
https://github.com/open-webui/open-webui.git
synced 2026-05-08 21:09:41 -05:00
[GH-ISSUE #12772] feat: Support for Self-Hosted/External Web Search/Loader Engines #16711
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 @tth37 on GitHub (Apr 12, 2025).
Original GitHub issue: https://github.com/open-webui/open-webui/issues/12772
Check Existing Issues
Problem Description
Currently, open-webui provides built-in web search engines (Bing, DuckDuckGo) and web page loader engines (Tavily, Local Web Fetcher). While useful, this predefined list has limitations:
http_proxysettings might not work effectively for the underlying search/fetch libraries.This is similar to the flexibility provided by OpenAPI Tool Servers, which allow users to define external functionalities. Applying a similar concept to web search/loading would be beneficial.
Desired Solution you'd like
I propose adding a new type of engine configuration, perhaps "Self-Hosted" or "External Connection", for both Web Search and Web Loaders.
This would allow advanced users to:
Based on the apparent structure in the current codebase, the API contract for these external endpoints could potentially look like this (subject to design adjustments):
{ "query": str, "count": int, "filter_list": Optional[list[str]] }list[SearchResult]{ "url": str, ... }DocumentWhen a user selects their configured "Self-Hosted Engine", Open WebUI would make API calls to the user-provided URL instead of using the built-in logic.
Alternatives Considered
No response
Additional Context
If this feature request is approved, I would be happy to contribute to its implementation 💪. Thanks a lot!
@lucky0218 commented on GitHub (Apr 12, 2025):
Really helpful to those have "limited" global internet access.
@tjbck commented on GitHub (Apr 12, 2025):
PR Welcome!