Timothy Jaeryang Baek
6d9996e599
refac
2026-03-06 20:12:37 -06:00
Timothy Jaeryang Baek
73b69ae408
refac
2026-03-06 15:13:21 -06:00
Timothy Jaeryang Baek
80376a3fdc
revert
2026-03-06 15:05:36 -06:00
Algorithm5838
1c1c1c3100
fix: allow clearing file upload settings ( #22336 )
2026-03-06 14:23:20 -06:00
Timothy Jaeryang Baek
0c2e4270bc
chore: format
2026-03-01 14:10:45 -06:00
Classic298
2054ee0b73
fix: enforce ownership check on user-memory collection queries ( #22109 )
...
* fix: enforce ownership check on user-memory collection queries
fix: enforce ownership check on user-memory collection queries
Prevent authenticated users from querying other users' memory
collections via the /query/doc and /query/collection endpoints.
A new _validate_collection_access helper rejects requests for
user-memory-{UUID} collections where the UUID does not match
the requesting user. Admins bypass the check.
* Update retrieval.py
* Update retrieval.py
2026-03-01 15:03:37 -05:00
Timothy Jaeryang Baek
93bab8d822
refac
2026-03-01 13:54:44 -06:00
Timothy Jaeryang Baek
259d5ca596
refac
2026-03-01 13:49:36 -06:00
Timothy Jaeryang Baek
c83a42198d
refac
2026-03-01 13:37:31 -06:00
Timothy Jaeryang Baek and Johannes Fahrenkrug
5ee5093259
refac
...
Co-Authored-By: Johannes Fahrenkrug <16358+jfahrenkrug@users.noreply.github.com >
2026-02-24 17:23:36 -06:00
Timothy Jaeryang Baek
631e30e22d
refac
2026-02-21 15:35:34 -06:00
lazariv
5759917f54
feat: Adding You.com as a web search provider ( #21599 )
...
* Add ydc.py provider implementation
* Add PersistentConfig entry for you.com
* Add Youcom search function import
* Update you.com configuration
* Add you.com as a web search engine option in frontend
* Add YOUCOM_API_KEY to main.py
2026-02-21 14:51:56 -06:00
Timothy Jaeryang Baek
5d4547f934
enh: RAG_EMBEDDING_CONCURRENT_REQUESTS
2026-02-21 14:33:48 -06:00
Timothy Jaeryang Baek
4bef69cc63
refac
2026-02-19 16:03:03 -06:00
Timothy Jaeryang Baek
74988189b8
refac
2026-02-18 13:06:50 -06:00
Timothy Jaeryang Baek
c653e4ec54
refac
2026-02-12 15:25:24 -06:00
Classic298 and Claude
8cf32ae2a7
fix: prevent worker death during document upload by using run_coroutine_threadsafe ( #21158 )
...
* fix: prevent worker death during document upload by using run_coroutine_threadsafe
Replace asyncio.run() with asyncio.run_coroutine_threadsafe() in
save_docs_to_vector_db() to prevent uvicorn worker health check failures.
The issue: asyncio.run() creates a new event loop and blocks the thread
completely, preventing the worker from responding to health checks during
long-running embedding operations (>5 seconds default timeout).
The fix: Schedule the async embedding work on the main event loop using
run_coroutine_threadsafe(). This keeps the main loop responsive to health
check pings while the sync caller waits for the result.
Changes:
- main.py: Store main event loop reference in app.state.main_loop at startup
- retrieval.py: Use run_coroutine_threadsafe() instead of asyncio.run()
https://claude.ai/code/session_01UQSYvSTkXb57sFb7M85Kcw
* add env var
---------
Co-authored-by: Claude <noreply@anthropic.com >
2026-02-12 15:22:57 -06:00
Tim Baek
258454276e
fix: files settings save issue
2026-02-06 22:33:49 +04:00
c5c4aef7b1
Yandex web search ( #20922 )
...
Co-authored-by: Tim Baek <tim@openwebui.com >
Co-authored-by: joaoback <156559121+joaoback@users.noreply.github.com >
2026-01-26 07:31:44 -05:00
Classic298
b272ca5e88
fix: remove invalid expunge call on Pydantic FileModel ( #20931 )
...
fix: remove invalid expunge call on Pydantic FileModel
Files.get_file_by_id() returns a Pydantic FileModel, not an SQLAlchemy
ORM object. Calling db.expunge() on a Pydantic model fails with
UnmappedInstanceError since it lacks _sa_instance_state.
The expunge was also unnecessary because subsequent DB updates already
use fresh sessions via get_db() context manager.
Fixes #20925
2026-01-26 07:24:53 -05:00
Classic298
25fd342261
Update retrieval.py ( #20930 )
2026-01-26 15:29:15 +04:00
Timothy Jaeryang Baek
9af40624c5
refac
2026-01-22 18:58:00 +04:00
Timothy Jaeryang Baek
68b2872ed6
fix/refac: file batch process issue
2026-01-22 15:03:31 +04:00
Classic298
00b3583dc2
fix: fix reindex not working due to unnecessary dupe check ( #20857 )
...
* Update retrieval.py
* Update knowledge.py
* Update retrieval.py
* Update knowledge.py
2026-01-21 18:36:08 -05:00
Timothy Jaeryang Baek
ecbdef732b
enh: PDF_LOADER_MODE
2026-01-21 23:51:36 +04:00
Classic298
182d5e8591
fix(db): release connection before embedding in process_files_batch ( #20576 )
...
Remove Depends(get_session) from POST /process/files/batch endpoint to prevent database connections from being held during batch embedding API calls (5-60+ seconds for large batches).
The save_docs_to_vector_db() function makes external embedding API calls. Post-embedding file updates (Files.update_file_by_id) manage their own short-lived sessions internally, releasing connections promptly.
2026-01-11 23:32:56 +04:00
G30
4b4743b497
feat: enforce permissions in backend ( #20471 )
...
* feat: enforce image generation permissions in backend
* feat: enforce web search permissions in backend
* feat: enforce audio (tts/stt) permissions in backend
2026-01-08 02:48:35 +04:00
Timothy Jaeryang Baek
1d08376860
refac
2026-01-05 18:55:44 +04:00
Timothy Jaeryang Baek
d3ab9f4b96
fix: failed hash in files
2026-01-05 18:21:00 +04:00
Classic298
614cb56420
feat: Add configurable DDGS backend selection with UI support ( #20366 )
...
* init
* Update WebSearch.svelte
* reorder
2026-01-05 03:05:56 +04:00
Timothy Jaeryang Baek
dc2c2f2295
refac
2026-01-03 19:48:37 +04:00
Timothy Jaeryang Baek and Classic298
c324359580
feat: chunk min size target for md header splitter
...
Co-Authored-By: Classic298 <27028174+Classic298@users.noreply.github.com >
2026-01-03 19:47:29 +04:00
Timothy Jaeryang Baek
f7f8a263b9
feat: JINA_API_BASE_URL
2026-01-01 02:17:47 +04:00
Timothy Jaeryang Baek
89ad1c68d1
enh: FIRECRAWL_TIMEOUT
2026-01-01 02:07:22 +04:00
Classic298
431632d530
fix: normalize local CrossEncoder reranking scores for relevance threshold ( #20228 )
...
* Update utils.py
* Update retrieval.py
* Update utils.py
* Update retrieval.py
* add env var
* rename to SENTENCE_TRANSFORMERS_CROSS_ENCODER_SIGMOID_ACTIVATION_FUNCTION
2025-12-31 15:48:31 -05:00
Classic298
201c38a08a
fix: prevent delete_entries_from_collection crash when file is None ( #20274 )
...
Add null check after Files.get_file_by_id() before accessing file.hash. Raises HTTP 404 instead of crashing with AttributeError when file doesn't exist.
2025-12-31 02:31:26 -05:00
Classic298
46f867cda6
fix: prevent save_docs_to_vector_db crash on empty result.ids ( #20275 )
...
Add check that result.ids exists and has length > 0 before accessing result.ids[0]. Prevents IndexError when query returns empty results.
2025-12-31 02:31:05 -05:00
Timothy Jaeryang Baek
08bf4670ec
refac
2025-12-30 19:38:45 +04:00
Timothy Jaeryang Baek
18a33a079b
refac
2025-12-30 19:33:30 +04:00
Timothy Jaeryang Baek
d3a682759f
enh: ENABLE_MARKDOWN_HEADER_TEXT_SPLITTER
2025-12-30 19:31:59 +04:00
Timothy Jaeryang Baek
b1d0f00d8c
refac/enh: db session sharing
2025-12-29 00:21:18 +04:00
Timothy Jaeryang Baek
c96549eaa7
refac
2025-12-21 18:08:36 +04:00
Classic298
4fd790f7dd
feat: Apply WEB_SEARCH_CONCURRENT_REQUESTS to all search engines using semaphore ( #20070 )
...
* sequential
* zero default
* fix
2025-12-21 07:18:00 -05:00
Classic298
48ccb1e170
fix: consolidate psql cleanup logic and fix web add with cleanup ( #20072 )
...
* sequential
* consolidate logic and fix for web add
* Update WebSearch.svelte
* Update retrieval.py
* Update retrieval.py
* Update WebSearch.svelte
2025-12-21 07:14:29 -05:00
okamototk
37085ed42b
chore: update langchain 1.2.0 ( #19991 )
...
* chore: update langchain 1.2.0
* chore: format
2025-12-20 08:50:44 -05:00
2e7c7d635d
fix: prevent ExternalReranker from blocking event loop during RAG queries ( #20049 )
...
* fix: prevent ExternalReranker from blocking event loop during RAG queries (#120 )
Co-authored-by: Tim Baek <tim@openwebui.com >
Co-authored-by: Claude <noreply@anthropic.com >
Fixes #19900
* Merge pull request open-webui#19030 from open-webui/dev (#122 )
Co-authored-by: Tim Baek <tim@openwebui.com >
Co-authored-by: Claude <noreply@anthropic.com >
Fixes #19900
---------
Co-authored-by: Tim Baek <tim@openwebui.com >
Co-authored-by: Claude <noreply@anthropic.com >
2025-12-20 08:43:40 -05:00
Timothy Jaeryang Baek
afaa404fe4
enh: mineru api timeout
2025-12-20 17:39:33 +04:00
823b9a6dd9
chore/perf: Remove old SRC level log env vars with no impact ( #20045 )
...
* Update openai.py
* Update env.py
* Merge pull request open-webui#19030 from open-webui/dev (#119 )
Co-authored-by: Tim Baek <tim@openwebui.com >
Co-authored-by: Claude <noreply@anthropic.com >
---------
Co-authored-by: Tim Baek <tim@openwebui.com >
Co-authored-by: Claude <noreply@anthropic.com >
2025-12-20 08:16:14 -05:00
Boris Bocquet
bc681f8258
feat : new environment variable SEARXNG_LANGUAGE , in the persistent config, that you can also edit in Admin > Web Search pannel in case you choose Searxng. This is used in the request to searxng as the "search language" (arguement "language"). Before this feature, it was set to en-US only. Now default is "all". ( #19909 )
2025-12-14 12:38:47 -05:00
Timothy Jaeryang Baek
b02397e460
feat: WEB_LOADER_TIMEOUT
2025-12-08 11:49:27 -05:00