霍雨佳
eb75ff232f
Refactor: Optimize the request rate limiting for ModelRequestRateLimitCount.
...
Reason: The original steps 1 and 3 in the redisRateLimitHandler method were not atomic, leading to poor precision under high concurrent requests. For example, with a rate limit set to 60, sending 200 concurrent requests would result in none being blocked, whereas theoretically around 140 should be intercepted.
Solution: I chose not to merge steps 1 and 3 into a single Lua script because a single atomic operation involving read, write, and delete operations could suffer from performance issues under high concurrency. Instead, I implemented a token bucket algorithm to optimize this, reducing the atomic operation to just read and write steps while significantly decreasing the memory footprint.
2025-04-16 10:33:43 +08:00
CaIon
214ca4db56
fix: claude parallel function calling
2025-04-15 04:52:33 +08:00
CaIon
473e8e0eaf
feat: support gemini output text and inline images. ( close #866 )
2025-04-15 02:32:51 +08:00
CaIon
99efc1fbb6
fix: try to fix claude to openai format mcp #966
2025-04-15 01:16:06 +08:00
Calcium-Ion
d283f6b35f
Merge pull request #967 from neotf/fix-01
...
fix: wrong field for Claude (OpenAI Upstream)
2025-04-15 00:05:41 +08:00
CaIon
2f3acd9d22
feat: 添加流模式下的SSE保活机制 #945
2025-04-14 19:40:23 +08:00
neotf
eee6dee599
fix: wrong systemStr for Claude (OpenAI Upstream)
2025-04-14 01:09:02 +08:00
CaIon
dcf7878772
fix: update model name handling in UI and localization
2025-04-12 17:44:29 +08:00
CaIon
ef8ae4db80
fix: xAI usage
2025-04-11 23:31:32 +08:00
CaIon
90576d0261
feat: enhance Claude to OpenAI request conversion with additional relay info support
2025-04-11 19:13:38 +08:00
CaIon
4b3e30e669
feat: 完善openai转claude支持
2025-04-11 18:28:50 +08:00
CaIon
75570af967
chore: update .gitignore and docker-compose.yml to include tiktoken_cache directory
2025-04-11 16:24:27 +08:00
CaIon
cca9c0479f
feat: enhance file handling and logging in the application
2025-04-11 16:23:54 +08:00
CaIon
8a2332074f
refactor: move maxFileSize variable inside GetFileBase64FromUrl function
2025-04-11 15:53:23 +08:00
CaIon
2ec4565601
feat: implement parameter cleaning for Gemini functions
2025-04-10 22:35:03 +08:00
CaIon
a4fb33957f
feat: support zhipu_4v embeddings path
2025-04-10 20:53:51 +08:00
Calcium-Ion
909c5eb276
Merge pull request #959 from Praying/main
...
fix(relay): 优化数据流处理
2025-04-10 17:21:55 +08:00
CaIon
8723e3f239
feat: add xAI handling and response processing
2025-04-10 17:20:59 +08:00
quran
9328b907f2
fix(relay): 优化数据流处理
...
- 移除了 bufio 的无效使用
- 在 StreamScannerHandler 中增加了初始和最大缓冲区大小的常量设置
- 调整 StreamScannerHandler 中缓冲区大小,避免出现token too long报错
2025-04-10 16:56:16 +08:00
Calcium-Ion
8efa12b941
Merge pull request #953 from wkxu/main
...
fix: .env文件配置DEBUG=true等参数不起作用的fix
2025-04-10 16:14:11 +08:00
Calcium-Ion
7b997b3a2c
Merge pull request #956 from HynoR/feat/xai
...
feat: add xAI channel
2025-04-10 16:13:48 +08:00
HynoR
700c05b826
feat: update adaptor methods and add new image model
2025-04-10 15:08:12 +08:00
HynoR
c5103237b0
feat: add xai grok-3-mini reasoning effort
2025-04-10 13:31:43 +08:00
HynoR
f500eb17a8
feat: add xai channel
...
feat: add xai channel
feat: add xai channel
2025-04-10 13:04:43 +08:00
wkxu
86f6bb7abe
refactor: 把common/instants.go里的从Getenv获取的参数,放到init.go的LoadEnv函数里获取
...
把constant/env.go里的从Getenv获取的参数,放到env.go的InitEnv函数里获取。以避免.env文件配置参数不起作用的情况
2025-04-10 09:02:19 +08:00
Calcium-Ion
c4c1099ae5
Merge pull request #944 from lamcodes/main
...
Update: Gemini channel fetch_models
2025-04-10 00:09:54 +08:00
CaIon
c869455456
fix: Update model ratios for gemini-2.5-pro
2025-04-10 00:09:11 +08:00
CaIon
f89d8a0fe5
refactor: Remove duplicate model settings initialization in main function
2025-04-10 00:07:34 +08:00
CaIon
3d6d19903b
refactor: Update localization keys for API address in English translations and adjust related UI labels
2025-04-09 22:22:19 +08:00
zkp
524d4a65bf
Update: Gemini channel fetch_models
2025-04-08 22:43:13 +08:00
CaIon
082218173a
feat: Add CheckSetup function call in main to ensure proper initialization #942
2025-04-08 18:14:36 +08:00
Calcium-Ion
67cbbc2266
Merge pull request #930 from Yiffyi/main
...
fix: save OIDC settings
2025-04-08 17:39:42 +08:00
CaIon
79b35e385f
Update MaxTokens for gemini model to 300 in test request
2025-04-08 17:37:25 +08:00
Calcium-Ion
03e8ab4126
Merge pull request #936 from lamcodes/main
...
fix: gemini test MaxTokens
2025-04-08 17:33:31 +08:00
Calcium-Ion
30f32c6a6d
Set MaxTokens to 50 for gemini
2025-04-08 17:33:10 +08:00
CaIon
5813ca780f
feat: Integrate SetupCheck component for improved setup validation in routing
2025-04-08 17:31:46 +08:00
CaIon
aa34c3035a
feat: Initialize model settings and improve concurrency control in operation settings
2025-04-07 22:20:47 +08:00
CaIon
fb9f595044
feat: Add concurrency control to group ratio management with mutexes
2025-04-07 21:55:54 +08:00
zkp
f24de65626
fix: gemini test MaxTokens
2025-04-06 23:24:47 +08:00
Yiffyi Jia
e34dccbc65
fix: cannot save OIDC settings
2025-04-05 04:24:38 +00:00
CaIon
f6e8887482
Update model-ratio.go
2025-04-04 23:43:14 +08:00
CaIon
a29f4d88c5
Update model-ratio.go
2025-04-04 23:41:41 +08:00
CaIon
a6bb30af41
fix: Improve setup check logic and logging for system initialization
2025-04-04 21:27:24 +08:00
CaIon
424424c160
Update model-ratio.go
2025-04-04 00:31:24 +08:00
CaIon
e5baa6ee1c
✨ feat: Enhance ModelSettingsVisualEditor with pricing modes and improved model management features
2025-04-03 20:42:08 +08:00
CaIon
9207d729ca
✨ feat: Add new localization strings for system initialization
2025-04-03 19:27:25 +08:00
CaIon
27933da884
fix: Update option key from SelfUseModeEnabled to DemoSiteEnabled in PostSetup function
2025-04-03 19:21:53 +08:00
CaIon
454dac17ea
feat: Add timestamp and version to setup initialization in PostSetup function
2025-04-03 19:16:17 +08:00
CaIon
1921ac3692
fix: Correct option key for SelfUseModeEnabled in setup controller
2025-04-03 19:15:04 +08:00
CaIon
42a2418d9a
Merge remote-tracking branch 'origin/main'
2025-04-03 19:09:26 +08:00