Commit Graph

4951 Commits

Author SHA1 Message Date
CaIon
f2d2b6e7fc feat(channel): add error handling for SaveWithoutKey when channel ID is 0 2025-12-20 13:26:40 +08:00
Seefs
7a9cfa38ff Merge pull request #2476 from TinsFox/chore/code-inspector-plugin 2025-12-20 11:04:40 +08:00
Seefs
a78fd2dae6 docs: document pyroscope env var 2025-12-19 23:16:56 +08:00
TinsFox
c06a216a14 chore: add code-inspector-plugin integration 2025-12-19 23:04:53 +08:00
Seefs
fb0ffe8c95 docs: document pyroscope env var 2025-12-19 23:03:04 +08:00
Seefs
b49bb48ed1 fix: systemname 2025-12-19 22:27:35 +08:00
Seefs
6d0cb5df75 Merge pull request #2474 from TinsFox/main 2025-12-19 21:39:56 +08:00
TinsFox
530b3eff11 style: add card spacing 2025-12-19 21:00:31 +08:00
Seefs
39df47486c fix(gemini): handle minimal reasoning effort budget
- Add minimal case to clampThinkingBudgetByEffort to avoid defaulting to full thinking budget
2025-12-18 08:10:46 +08:00
comeback01
5aaf006642 Refine French translations for UI conciseness
Updated web/src/i18n/locales/fr.json to improve French translations for the user interface.

Removed verbose prefixes like 'Gestion des...' and 'Paramètres de...' to prevent truncation in sidebars and menus.

Harmonized terms for consistency (e.g., 'Tâches', 'Journaux', 'Dessins').

Renamed 'Place du marché' to 'Marché des modèles'.
2025-12-17 12:10:36 +01:00
Seefs
2f28f265a9 Merge pull request #2452 from QuantumNous/fix/oom-request-body-limit 2025-12-16 18:21:59 +08:00
t0ng7u
fa814b80fe 🧹 fix: harden request-body size handling and error unwrapping
Tighten oversized request handling across relay paths and make error matching reliable.

- Align `MAX_REQUEST_BODY_MB` fallback to `32` in request body reader and decompression middleware
- Stop ignoring `GetRequestBody` errors in relay retry paths; return consistent **413** on oversized bodies (400 for other read errors)
- Add `Unwrap()` to `types.NewAPIError` so `errors.Is/As` can match wrapped underlying errors
- `go test ./...` passes
2025-12-16 18:10:00 +08:00
t0ng7u
c2ed76ddfd 🛡️ fix: prevent OOM on large/decompressed requests; skip heavy prompt meta when token count is disabled
Clamp request body size (including post-decompression) to avoid memory exhaustion caused by huge payloads/zip bombs, especially with large-context Claude requests. Add a configurable `MAX_REQUEST_BODY_MB` (default `32`) and document it.

- Enforce max request body size after gzip/br decompression via `http.MaxBytesReader`
- Add a secondary size guard in `common.GetRequestBody` and cache-safe handling
- Return **413 Request Entity Too Large** on oversized bodies in relay entry
- Avoid building large `TokenCountMeta.CombineText` when both token counting and sensitive check are disabled (use lightweight meta for pricing)
- Update READMEs (CN/EN/FR/JA) with `MAX_REQUEST_BODY_MB`
- Fix a handful of vet/formatting issues encountered during the change
- `go test ./...` passes
2025-12-16 17:00:19 +08:00
Seefs
3eee8c7a21 fix: 支持传入system_instruction和systemInstruction两种风格系统提示词参数名 2025-12-16 13:08:58 +08:00
Calcium-Ion
87195a07b0 Merge pull request #2445 from QuantumNous/feat/token-ip-whitelist-cidr
feat(auth): enhance IP restriction handling with CIDR support
2025-12-15 20:14:09 +08:00
CaIon
692b5ff5ac feat(auth): refactor IP restriction handling to use clearer variable naming 2025-12-15 20:13:09 +08:00
旃蒙
5d0e66b39e fix(task): 修复渠道配置多个key时无法获取任务的问题 2025-12-15 18:15:35 +08:00
CaIon
947a763a1a feat(auth): enhance IP restriction handling with CIDR support 2025-12-15 17:24:09 +08:00
CaIon
1bd0d8de02 Revert "feat(audio): replace SysLog with logger for improved logging in GetAudioDuration"
This reverts commit 2a980bbcf5.
2025-12-14 00:04:40 +08:00
CaIon
2a980bbcf5 feat(audio): replace SysLog with logger for improved logging in GetAudioDuration 2025-12-13 23:59:58 +08:00
CaIon
da0d3ea93c fix(audio): improve WAV duration calculation with enhanced PCM size handling 2025-12-13 23:57:32 +08:00
CaIon
06d1bd404b feat(model_ratio): add default ratios for gpt-4o-mini-tts 2025-12-13 19:14:27 +08:00
CaIon
284ce42c88 refactor(channel_select): improve retry logic with reset functionality 2025-12-13 18:09:10 +08:00
Calcium-Ion
ef5e4a056c Merge pull request #2434 from QuantumNous/feat/gpt-4o-mini-tts
feat: support gpt tts series model quota calculate
2025-12-13 17:55:16 +08:00
CaIon
3822f4577c fix(audio): correct TotalTokens calculation for accurate usage reporting 2025-12-13 17:49:57 +08:00
CaIon
be2a863b9b feat(audio): enhance audio request handling with token type detection and streaming support 2025-12-13 17:24:23 +08:00
CaIon
29565c837f feat(token): add CrossGroupRetry field to token insertion 2025-12-13 16:45:42 +08:00
CaIon
a1299114a6 refactor(error): replace dto.OpenAIError with types.OpenAIError for consistency 2025-12-13 16:43:57 +08:00
CaIon
6175f254a2 refactor(channel_select): enhance retry logic and context key usage for channel selection 2025-12-13 16:43:38 +08:00
Seefs
bdfc875775 feat: pyroscope integrate 2025-12-13 13:49:38 +08:00
CaIon
7d586ef507 fix(helper): improve error handling in FlushWriter and related functions 2025-12-13 13:29:21 +08:00
CaIon
e0a79e853d refactor(auth): replace direct token group setting with context key retrieval 2025-12-13 01:38:12 +08:00
Calcium-Ion
6e998eaf82 Merge pull request #2430 from QuantumNous/fix/cross-group-retry
fix(channel_select): adjust priority retry logic for cross-group
2025-12-13 01:05:40 +08:00
CaIon
51f3a936e4 fix(channel_select): adjust priority retry logic for cross-group channel selection 2025-12-13 01:04:10 +08:00
Calcium-Ion
2a01d1c996 Merge pull request #2429 from QuantumNous/feat/xhigh
feat(adaptor): add '-xhigh' suffix to reasoning effort options
2025-12-12 22:06:19 +08:00
CaIon
413968a0fd refactor(relay): update channel retrieval to use RelayInfo structure 2025-12-12 22:04:38 +08:00
Calcium-Ion
281ebacb8c Merge pull request #2424 from ion1ze/main
fix: correct sender format issues fix #1347
2025-12-12 20:55:22 +08:00
CaIon
27dd42718b feat(adaptor): add '-xhigh' suffix to reasoning effort options for model parsing 2025-12-12 20:53:48 +08:00
Calcium-Ion
3c5edc54b7 Merge pull request #2426 from QuantumNous/feat/auto-cross-group-retry
feat(token): add cross-group retry option for token processing
2025-12-12 20:45:54 +08:00
Calcium-Ion
8b0e710053 Merge pull request #2428 from seefs001/fix/health-check
fix: health check
2025-12-12 20:45:34 +08:00
Seefs
ae30b4d15f fix: health check 2025-12-12 20:37:32 +08:00
CaIon
ffb1931906 feat: implement cross-group retry functionality and update translations 2025-12-12 18:28:33 +08:00
CaIon
c87deaa7d9 feat(token): add cross-group retry option for token processing 2025-12-12 17:59:21 +08:00
hackerxiao
8257438499 feat: 支持仅使用x-api-key获取anthropic格式的模型列表 注释增加 2025-12-12 17:27:24 +08:00
zdwy5
85ecad90a7 fix: 支持aws 通过全局参数透传或者渠道参数透传来 调用 (#2423)
* fix: 支持aws 通过全局参数透传或者渠道参数透传来 调用

* fix(aws): replace json.Unmarshal with common.Unmarshal for request body processing

---------

Co-authored-by: r0 <liangchunlei@01.ai>
Co-authored-by: CaIon <i@caion.me>
2025-12-12 17:09:27 +08:00
hackerxiao
f9c2e1fbf2 feat: 支持仅使用x-api-key获取anthropic格式的模型列表 2025-12-12 16:53:10 +08:00
zhiheng.wang
8279be2380 fix: correct sender format issues
- Adjust sender field format, add space to separate nickname and email address
- Ensure email header format complies with standard RFC specifications
- Fix potential email client sending exceptions (Tencent Cloud)
2025-12-12 16:19:14 +08:00
Seefs
ee53a7b6bf Merge pull request #2412 from seefs001/pr-2372
feat: add openai video remix endpoint
2025-12-11 23:35:23 +08:00
Seefs
d3086c8752 Merge pull request #2194 from NoahCodeGG/fix/process_channel_error 2025-12-11 18:12:06 +08:00
Calcium-Ion
4886c74097 Merge pull request #2397 from seefs001/fix/tool-call-claude
fix: try to fix tool call issues
2025-12-09 16:57:24 +08:00