Merge pull request open-webui#19030 from open-webui/dev#122
Merged
Classic298 merged 9 commits intorerankfrom Dec 20, 2025
Merged
Merge pull request open-webui#19030 from open-webui/dev#122Classic298 merged 9 commits intorerankfrom
Classic298 merged 9 commits intorerankfrom
Conversation
chore: format
…ries Fixes open-webui#19900 This commit addresses the issue where ExternalReranker's synchronous HTTP requests blocked the Python event loop, causing the entire application to freeze during reranking operations. Changes: - Wrap reranking_function call with asyncio.to_thread() in acompress_documents to prevent blocking the event loop - Add configurable RAG_EXTERNAL_RERANKER_TIMEOUT environment variable (default: 120s) - Add timeout parameter to requests.post() in ExternalReranker.predict() - Update ExternalReranker instantiation to pass timeout through get_rf() The asyncio.to_thread() approach is consistent with existing patterns in the codebase (e.g., embedding operations on line 790 of retrieval/utils.py). This ensures the application remains responsive while waiting for external reranking API responses, preventing outages during long-running rerank operations.
…to follow system default - Changed RAG_EXTERNAL_RERANKER_TIMEOUT default from 120 to empty string - Updated ExternalReranker timeout parameter to Optional[int] = None - When timeout is empty/None, requests.post() uses system default (no timeout) - When timeout is set, it's converted to int and used This follows the pattern of other timeout configs and allows users to opt-in to timeout behavior rather than forcing a default value.
Classic298
added a commit
that referenced
this pull request
Dec 20, 2025
…ries (open-webui#20049) * fix: prevent ExternalReranker from blocking event loop during RAG queries (#120) Co-authored-by: Tim Baek <[email protected]> Co-authored-by: Claude <[email protected]> Fixes open-webui#19900 * Merge pull request open-webui#19030 from open-webui/dev (#122) Co-authored-by: Tim Baek <[email protected]> Co-authored-by: Claude <[email protected]> Fixes open-webui#19900 --------- Co-authored-by: Tim Baek <[email protected]> Co-authored-by: Claude <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Pull Request Checklist
Note to first-time contributors: Please open a discussion post in Discussions to discuss your idea/fix with the community before creating a pull request, and describe your changes before submitting a pull request.
This is to ensure large feature PRs are discussed with the community first, before starting work on it. If the community does not want this feature or it is not relevant for Open WebUI as a project, it can be identified in the discussion before working on the feature and submitting the PR.
Before submitting, make sure you've checked the following:
devbranch. Not targeting thedevbranch will lead to immediate closure of the PR.Changelog Entry
Description
Added
Changed
Deprecated
Removed
Fixed
Security
Breaking Changes
Additional Information
Screenshots or Videos
Contributor License Agreement
By submitting this pull request, I confirm that I have read and fully agree to the Contributor License Agreement (CLA), and I am providing my contributions under its terms.
Note
Deleting the CLA section will lead to immediate closure of your PR and it will not be merged in.