Commit graph

817 commits

Author SHA1 Message Date
Timothy Jaeryang Baek
c2f98a4cd2 refac: usage info 2025-09-16 10:28:25 -05:00
Tim Jaeryang Baek
dd6f83e9c5
Merge pull request #17423 from aleprj/fix-filehandler
Fix file_handler filters
2025-09-15 11:35:39 -04:00
Timothy Jaeryang Baek
aa8ab349ed feat: ref chat 2025-09-14 10:26:46 +02:00
Alexandre Oliveira
f9fd22d98e fix: setting file_handler in a filter would generate errors in messages with no files, because a "files: Null" in metadata would trigger an attempt to delete a non existent files object 2025-09-13 12:57:54 -03:00
Tim Jaeryang Baek
a156033d3c
Merge pull request #17284 from xyb/feishucn
feat: add Feishu OAuth integration
2025-09-12 12:48:45 +04:00
Xie Yanbo
ee82439e67 feat: add Feishu OAuth integration
Implement Feishu OAuth provider using standard client:
- Set up Feishu-specific endpoints for authorization, token, and userinfo
- Use user_id as sub claim for Feishu user identification
- Extract correct user information from nested 'data' field in Feishu responses

Configuration requirements:
- Set FEISHU_CLIENT_ID and FEISHU_CLIENT_SECRET environment variables to enable Feishu OAuth
- Set ENABLE_OAUTH_SIGNUP=true to allow automatic user creation after OAuth login
- Set DEFAULT_USER_ROLE=user to grant immediate access after OAuth registration
- Set OAUTH_MERGE_ACCOUNTS_BY_EMAIL=true to enable merging of existing user accounts with matching emails
2025-09-12 14:09:32 +08:00
Timothy Jaeryang Baek
6c0a5fa91c refac 2025-09-11 21:56:59 +04:00
Timothy Jaeryang Baek
cf72f5503f refac 2025-09-11 12:26:25 +04:00
Timothy Jaeryang Baek
774c0056bd refac: tool server data handling 2025-09-09 19:00:01 +04:00
Timothy Jaeryang Baek
6f6412dd16 refac 2025-09-08 19:53:44 +04:00
Timothy Jaeryang Baek
2b2d123531 refac: oauth auth type in openai connection 2025-09-08 19:42:50 +04:00
Timothy Jaeryang Baek
4cea3a57be refac 2025-09-08 19:09:26 +04:00
Timothy Jaeryang Baek
b786d1e3f3 refac 2025-09-08 18:52:59 +04:00
Timothy Jaeryang Baek
b5bb6ae177 refac 2025-09-08 18:50:23 +04:00
Timothy Jaeryang Baek
f71834720e refac 2025-09-08 18:35:09 +04:00
Timothy Jaeryang Baek
f11bdc6ab5 refac 2025-09-08 18:23:44 +04:00
Timothy Jaeryang Baek
fc11e4384f refac 2025-09-08 18:17:11 +04:00
Timothy Jaeryang Baek
217f4daef0 feat: server-side OAuth token management system
Co-Authored-By: Classic298 <27028174+Classic298@users.noreply.github.com>
2025-09-08 18:05:43 +04:00
Timothy Jaeryang Baek
6d38ac41b6 refac 2025-09-08 14:36:00 +04:00
Timothy Jaeryang Baek
91755309ce refac 2025-09-08 14:18:25 +04:00
Timothy Jaeryang Baek
6dc0df2473 refac 2025-09-07 05:17:38 +04:00
Timothy Jaeryang Baek
3d37e4a42d refac 2025-09-07 05:06:03 +04:00
Timothy Jaeryang Baek
1cdb7aed1e refac/enh: status history 2025-09-07 04:21:46 +04:00
Timothy Jaeryang Baek
0a85dd4bca refac: web search link display 2025-09-07 03:00:28 +04:00
Timothy Jaeryang Baek
3d6d050ad8 refac/enh: display oauth error as toast 2025-09-07 01:48:52 +04:00
Timothy Jaeryang Baek
1bc9711afd refac 2025-09-05 17:28:05 +04:00
Timothy Jaeryang Baek
df66e21472 enh: regex pattern support for groups 2025-09-03 18:50:02 +04:00
Timothy Jaeryang Baek
37bf0087e5 refac: tool message format 2025-09-03 13:57:14 +04:00
Sihyeon Jang
0503fbd2e3 perf: fix N+1 query issue in tools access control checking
- Pre-fetch user group IDs once per request in get_tools endpoint
- Pass user_group_ids to has_access to avoid repeated group queries
- Optimize access control validation from 1+N to 1+1 query pattern
- Reduce database load when checking multiple tools access permissions

Signed-off-by: Sihyeon Jang <sihyeon.jang@navercorp.com>
2025-09-03 05:49:53 +09:00
Timothy Jaeryang Baek
e830b4959e enh: llama cpp timing stats 2025-09-01 22:49:49 +04:00
Timothy Jaeryang Baek
f56889c5c7 fix: fillter exception handling 2025-09-01 14:14:20 +04:00
Timothy Jaeryang Baek
ed5d95f434 refac 2025-09-01 02:41:29 +04:00
Timothy Jaeryang Baek
77b65ccbfb refac/enh: forward headers to tool server 2025-09-01 01:52:10 +04:00
Timothy Jaeryang Baek
e0ab5adb97 refac 2025-08-31 23:52:50 +04:00
Timothy Jaeryang Baek
b0f6f24ca8 refac 2025-08-31 23:42:34 +04:00
Timothy Jaeryang Baek
e7c7c65227 refac/fix: error message 2025-08-28 02:35:29 +04:00
Timothy Jaeryang Baek
e39ce16a86 enh: custom reasoning tags 2025-08-27 17:24:16 +04:00
Timothy Jaeryang Baek
31485835a7 enh: query caching
Co-Authored-By: Jacob Leksan <63938553+jmleksan@users.noreply.github.com>
2025-08-27 03:07:21 +04:00
Timothy Jaeryang Baek
e4b6855984 enh: CHAT_RESPONSE_MAX_TOOL_CALL_RETRIES 2025-08-27 02:58:25 +04:00
Timothy Jaeryang Baek
43b2eca418 refac 2025-08-22 14:01:57 +04:00
Timothy Jaeryang Baek
278a4edd0b fix: tool server not loading 2025-08-22 13:44:03 +04:00
Timothy Jaeryang Baek
efcf6db687 refac 2025-08-21 04:46:43 +04:00
Timothy Jaeryang Baek
66f00ce4bf refac 2025-08-21 04:40:08 +04:00
Timothy Jaeryang Baek
094a16ab49 refac 2025-08-21 03:38:26 +04:00
Timothy Jaeryang Baek
faf01bdeac fix: None Type tool installation during startup
Co-Authored-By: Adam Outler <adamoutler@gmail.com>
2025-08-20 23:58:08 +04:00
Timothy Jaeryang Baek
919d65f36f feat/enh: ENABLE_OTEL_TRACES granular otel support 2025-08-20 23:03:12 +04:00
Timothy Jaeryang Baek
b3a95f40fc refac/enh: add performance indexes
Co-Authored-By: decent-engineer-decent-datascientist <77806775+decent-engineer-decent-datascientist@users.noreply.github.com>
2025-08-19 03:24:10 +04:00
Tim Jaeryang Baek
96643f5b6d
Merge pull request #14682 from olivier-lacroix/genai-tool-function
refactor: Improve tool callable generation to allow for genai native function call
2025-08-19 03:16:12 +04:00
Timothy Jaeryang Baek
d6f709574e refac/enh: async process chat handling 2025-08-19 01:24:53 +04:00
Timothy Jaeryang Baek
4bc77b544e refac 2025-08-18 23:39:14 +04:00
Timothy Jaeryang Baek
70d0477418 refac: tool name collision handling 2025-08-18 21:28:28 +04:00
Timothy Jaeryang Baek
f592748011 refac: tool server redis cache 2025-08-18 20:53:46 +04:00
Timothy Jaeryang Baek
8a157578f4 enh/refac: ability to specify external tool server id 2025-08-18 20:38:55 +04:00
Timothy Jaeryang Baek
68d42ef850 refac 2025-08-18 19:49:29 +04:00
Timothy Jaeryang Baek
d7363fd65f fix: arena model selected model id 2025-08-17 04:55:45 +04:00
Timothy Jaeryang Baek
ccd2a0be5b refac 2025-08-17 04:15:13 +04:00
Tim Jaeryang Baek
47560d4d72
Merge pull request #14703 from rragundez/code-interpreter-blacklist
feat: Blacklist modules from arbitrary code execution in code interpreter
2025-08-17 04:12:12 +04:00
Timothy Jaeryang Baek
7f0c50f445 refac 2025-08-17 04:06:16 +04:00
Tim Jaeryang Baek
6a109e972e
Merge pull request #15863 from tcx4c70/feat/sqlite-wal
perf(db): Improve performance of db, especially sqlite
2025-08-17 03:55:59 +04:00
Sihyeon Jang
3da22af859 fix(utils/middleware): flush pending chat deltas on stream termination
Guarantees the last partial delta chunk is emitted when the SSE stream closes (EOF, break, or `[DONE]` sentinel).

* Buffer `last_delta_data` and track `delta_count`
* Flush automatically once `delta_count >= chunk_size`
* Perform a final flush after the iterator ends

Signed-off-by: Sihyeon Jang <sihyeon.jang@navercorp.com>
2025-08-16 13:03:57 +09:00
Timothy Jaeryang Baek
f1c28455ad refac: async webhook request 2025-08-15 00:07:02 +04:00
Timothy Jaeryang Baek
b43acc2b3d refac/fix: tag attribute handling 2025-08-14 04:04:34 +04:00
Timothy Jaeryang Baek
3e8d3b08fa refac 2025-08-14 04:04:20 +04:00
Timothy Jaeryang Baek
2ed9896dea refac/fix: oauth jwt cookie 2025-08-14 02:00:38 +04:00
Tim Jaeryang Baek
0845b7ffe5
Merge pull request #16582 from koflerm/patch-1
Fix: Retrieve Username Claim from Userinfo Endpoint
2025-08-13 19:23:44 +04:00
Markus Kofler
2011e5711d
Enable Retrieving Username Claim from Userinfo Endpoint 2025-08-13 16:27:25 +02:00
Thomas Rehn
7aa41d5d0c feat: use AIOHTTP_CLIENT_TIMEOUT for tool calls to make timeout configurable 2025-08-12 12:29:02 +02:00
Timothy Jaeryang Baek
f890fe6901 enh: allow plaintext for external tool servers 2025-08-11 17:36:36 +04:00
Timothy Jaeryang Baek
97448e25ec fix: openai error handling 2025-08-11 17:00:06 +04:00
Timothy Jaeryang Baek
fbb8c111ed refac 2025-08-11 00:39:12 +04:00
Timothy Jaeryang Baek
059cc636f6 fix: openai response propagation issue 2025-08-11 00:37:06 +04:00
Adam Tao
7bd7559bfe refactor: format
Signed-off-by: Adam Tao <tcx4c70@gmail.com>
2025-08-10 22:28:31 +08:00
Adam Tao
635cb8e3ff perf(db): deduplicate update_user_last_active_by_id to reduce conflicts
Signed-off-by: Adam Tao <tcx4c70@gmail.com>
2025-08-10 22:28:31 +08:00
xhejtman
c4e0051ab2
Fix audit get_current_user
get_current_user has 4 args not 3 args:
```
get_current_user(
    request: Request,
    response: Response,
    background_tasks: BackgroundTasks,
    auth_token: HTTPAuthorizationCredentials = Depends(bearer_security)
```
2025-08-10 02:10:00 +02:00
Timothy Jaeryang Baek
4e9c75be50 enh: CHAT_RESPONSE_STREAM_DELTA_CHUNK_SIZE 2025-08-09 23:49:56 +04:00
Timothy Jaeryang Baek
1a93891d97 feat: stream delta chunk
Co-Authored-By: Jan Kessler <Ithanil@users.noreply.github.com>
2025-08-09 23:43:27 +04:00
Timothy Jaeryang Baek
4485c7a5d2 refac 2025-08-09 21:38:31 +04:00
Tim Jaeryang Baek
17084f629c
Merge pull request #16385 from gaby/2025-08-08-13-38-31
feat: Propagate upstream OpenAI router errors
2025-08-09 00:58:14 +04:00
Timothy Jaeryang Baek
c1d566bad4 enh: oauth_sub_claim 2025-08-09 00:46:14 +04:00
Timothy Jaeryang Baek
f923a85f40 refac/fix: reasoning_content chunk 2025-08-09 00:31:28 +04:00
Juan Calderon-Perez
d2f2d42e09 Format python code 2025-08-08 10:09:31 -04:00
Tim Jaeryang Baek
67dcef5e9a
Merge pull request #16344 from Rain6435/fix-openapi-array-parameters
fix: include items property in OpenAPI array parameters
  for OpenAI function calling
2025-08-08 12:12:28 +04:00
Rain6435
30540cb40e fix: include items property in OpenAPI array parameters for OpenAI function calling
Resolves issue where OpenAPI specs with array query parameters were generating
  invalid OpenAI function schemas missing the required 'items' property, causing
  400 Bad Request errors from OpenAI.

  The fix ensures that when converting OpenAPI parameter schemas to OpenAI function
  schemas, array parameters properly include their 'items' property definition.

  Fixes open-webui/open-webui#14115
2025-08-07 01:21:22 -04:00
Timothy Jaeryang Baek
0912a023c2 fix: jwt token exposed in url 2025-08-06 21:02:54 +04:00
Timothy Jaeryang Baek
2f349b5979 refac 2025-08-06 15:06:43 +04:00
Timothy Jaeryang Baek
f2cae3d0a7 refac 2025-08-06 15:02:39 +04:00
Timothy Jaeryang Baek
5d4199bf52 chore: format 2025-08-06 14:27:58 +04:00
Timothy Jaeryang Baek
3a1bbcb12e refac 2025-08-06 13:48:43 +04:00
Timothy Jaeryang Baek
2e36540023 refac: tag handling 2025-08-06 13:32:28 +04:00
Timothy Jaeryang Baek
f24b76d9a3 refac: has_users
Co-Authored-By: pickle-dice <159401444+hassan-ajek@users.noreply.github.com>
2025-08-05 22:15:22 +04:00
Tim Jaeryang Baek
0b627248f5
Merge pull request #15640 from ipapapa/feat/cleaner-logs
refactor(logger): Conditionally include extra_json in logs
2025-08-04 17:52:12 +04:00
Timothy Jaeryang Baek
35400daf19 enh/refac: redis cluster support 2025-08-04 14:15:08 +04:00
Tim Jaeryang Baek
7c29084a19
Merge pull request #16237 from expruc/chore/separate_otel_logs_config
chore: separate otel logs config
2025-08-03 21:08:55 +04:00
expruc
58180c0586 added otel lgos specific config 2025-08-02 22:15:22 +03:00
Timothy Jaeryang Baek
00084c6ca6 refac/fix: tool payload 2025-08-02 19:36:46 +04:00
Tim Jaeryang Baek
49926f06ee
Merge branch 'dev' into feat/otel-logger-handler 2025-08-02 14:52:16 +04:00
Timothy Jaeryang Baek
446f4ee5a8 refac 2025-08-02 13:59:07 +04:00
expruc
a679fb3f45 split otel metrics from general otel configuration 2025-08-02 11:30:34 +03:00
expruc
2035eabb1f added otel logging handler 2025-07-31 21:58:49 +03:00
Timothy Jaeryang Baek
aa83ebae58 refac: lazySpanExporter no longer needed 2025-07-31 17:30:37 +04:00