Commit Graph

1268 Commits

Author SHA1 Message Date
RedwindA
826d4b9190 feat(gemini): map OpenAI stop to Gemini stopSequences 2026-01-29 21:30:27 +08:00
Seefs
cc1da72d10 feat: openai response /v1/response/compact (#2644)
* feat: openai response /v1/response/compact

* feat: /v1/response/compact bill

* feat: /v1/response/compact

* feat: /v1/responses/compact -> codex channel

* feat: /v1/responses/compact -> codex channel

* feat: /v1/responses/compact -> codex channel

* feat: codex channel default models

* feat: compact model price

* feat: /v1/responses/comapct test
2026-01-26 20:20:16 +08:00
Seefs
d7d3a2f763 feat: channel affinity (#2669)
* feat: channel affinity

* feat: channel affinity -> model setting

* fix: channel affinity

* feat: channel affinity op

* feat: channel_type setting

* feat: clean

* feat: cache supports both memory and Redis.

* feat: Optimise ui/ux

* feat: Optimise ui/ux

* feat: Optimise codex usage ui/ux

* feat: Optimise ui/ux

* feat: Optimise ui/ux

* feat: Optimise ui/ux

* feat: If the affinitized channel fails and a retry succeeds on another channel, update the affinity to the successful channel
2026-01-26 19:57:41 +08:00
Seefs
ac8f17c827 Merge pull request #2735 from seefs001/feature/header-throughpass
feat: header passthrough
2026-01-26 19:56:51 +08:00
Calcium-Ion
3722c63c18 Merge pull request #2742 from seefs001/fix/pr-2540
feat(gemini): 支持 tool_choice 参数转换,优化多个渠道错误处理
2026-01-26 15:12:09 +08:00
Seefs
7d64e5908c Revert "feat: xai refusal reason"
This reverts commit fd25b60e7a.
2026-01-25 16:38:58 +08:00
Seefs
fd25b60e7a feat: xai refusal reason 2026-01-25 16:07:37 +08:00
Seefs
48efa1ddb9 fix: reason convert 2026-01-25 15:31:23 +08:00
Seefs
7afa476770 feat: claude refusal reason 2026-01-25 15:21:31 +08:00
Seefs
00c5d9ffdf feat: logs show reject reason 2026-01-25 14:52:18 +08:00
Li-Xingyu
ec826e67b5 feat: enhance Authorization header handling with Header Override support 2026-01-25 14:36:37 +08:00
Seefs
68d9a227dd fix: Charge locally even if there's an error 2026-01-25 14:32:51 +08:00
Seefs
d5b3d4b990 Merge branch 'upstream-main' into fix/pr-2540
# Conflicts:
#	relay/channel/gemini/relay-gemini.go
2026-01-25 14:14:05 +08:00
Li-Xingyu
1e0ba95dc0 feat: enhance Authorization header handling with Header Override support 2026-01-25 04:28:11 +08:00
Xyfacai
cf745623f8 feat(qwen): support qwen image sync image model config 2026-01-22 17:46:36 +08:00
Calcium-Ion
b28ac71722 Merge pull request #2703 from seefs001/feature/log-conversion-info
feat: log shows request conversion
2026-01-21 23:48:08 +08:00
Calcium-Ion
824c7a2cd6 Merge pull request #2702 from seefs001/fix/ali-baseurl
fix: replace Alibaba's Claude-compatible url with new url
2026-01-21 23:47:59 +08:00
Calcium-Ion
702c05c7b1 Merge pull request #2701 from seefs001/fix/gemini-tool-call-index
fix: calls to multiple tools in gemini all return index=0
2026-01-21 23:47:48 +08:00
Calcium-Ion
1af0269d78 Merge pull request #2684 from seefs001/fix/codex-rm-max-output-tokens
fix: codex Unsupported parameter: max_output_tokens
2026-01-21 23:47:17 +08:00
Calcium-Ion
089dd8aa45 Merge pull request #2667 from seefs001/fix/gemini-whitelist-field
fix: openAI function to gemini function field adjusted to whitelist mode
2026-01-21 23:45:57 +08:00
Seefs
46aae7358f fix: codex rm Temperature 2026-01-21 23:22:31 +08:00
Seefs
d4582ede98 feat: log shows request conversion 2026-01-20 23:43:29 +08:00
Seefs
9037d992be fix: Only models with the "qwen" designation can use the Claude-compatible interface; others require conversion. 2026-01-20 22:56:02 +08:00
Seefs
63921912dd fix: replace Alibaba's Claude-compatible interface with the new interface 2026-01-20 22:36:36 +08:00
Seefs
809a80815e fix: issue where consecutive calls to multiple tools in gemini all returned an index of 0 2026-01-20 22:03:19 +08:00
feitianbubu
575574f068 fix: jimeng i2v support multi image by metadata 2026-01-19 11:34:46 +08:00
Seefs
76164e951e fix: codex Unsupported parameter: max_output_tokens 2026-01-17 21:42:28 +08:00
Seefs
1d8a11b37a fix: for chat-based calls to the Claude model, tagging is required. Using Claude's rendering logs, the two approaches handle input rendering differently. 2026-01-15 15:28:02 +08:00
Seefs
ea802f2297 fix: openAI function to gemini function field adjusted to whitelist mode 2026-01-15 13:26:42 +08:00
Seefs
e5cb9ac03a feat: codex channel (#2652)
* feat: codex channel

* feat: codex channel

* feat: codex oauth flow

* feat: codex refresh cred

* feat: codex usage

* fix: codex err message detail

* fix: codex setting ui

* feat: codex refresh cred task

* fix: import err

* fix: codex store must be false

* fix: chat -> responses tool call

* fix: chat -> responses tool call
2026-01-14 22:29:43 +08:00
Seefs
ca11fcbabd Merge pull request #2632 from feitianbubu/pr/add-doubao-video-1.5 2026-01-14 16:33:30 +08:00
Seefs
6169f46cc6 Merge pull request #2627 from seefs001/feature/channel-test-param-override
feat: channel testing supports parameter overriding
2026-01-12 18:49:05 +08:00
Seefs
138fcd2327 fix: clean propertyNames for gemini function 2026-01-11 23:34:18 +08:00
Seefs
62b796fa6a feat: /v1/chat/completion -> /v1/response (#2629)
* feat: /v1/chat/completion -> /v1/response
2026-01-11 21:38:07 +08:00
feitianbubu
a4f28f0b79 feat: add doubao video 1.5 2026-01-10 22:23:31 +08:00
Seefs
1a5c8f3c35 Merge pull request #2615 from RedwindA/feat/GeminiNativeFetchModels
fix(gemini): fetch model list via native v1beta/models endpoint
2026-01-09 23:54:36 +08:00
RedwindA
c975b4cfa8 fix(minimax): 添加 MiniMax-M2 系列模型到 ModelList 2026-01-09 20:46:47 +08:00
RedwindA
07e77b3c6f refactor(gemini): 更新 GeminiModelsResponse 以使用 dto.GeminiModel 类型 2026-01-09 18:08:11 +08:00
RedwindA
c2464fc877 fix(gemini): fetch model list via native v1beta/models endpoint
Use the native Gemini Models API (/v1beta/models) instead of the OpenAI-compatible
path when listing models for Gemini channels, improving compatibility with
third-party Gemini-format providers that don't implement OpenAI routes.

- Add paginated model listing with timeout and optional proxy support
- Select an enabled key for multi-key Gemini channels
2026-01-09 18:00:40 +08:00
郑伯涛
aed1900364 fix(task): 修复使用 auto 分组时 Task Relay 不记录日志和不扣费的问题
问题描述:
- 使用 auto 分组的令牌调用 /v1/videos 等 Task 接口时,虽然任务能成功创建,
  但使用日志不显示记录,且不会扣费

根本原因:
- Distribute 中间件在选择渠道后,会将实际选中的分组存储在 ContextKeyAutoGroup 中
- 但 RelayTaskSubmit 函数没有从 context 中读取这个值来更新 info.UsingGroup
- 导致 info.UsingGroup 始终是 "auto" 而不是实际选中的分组(如 "sora2逆")
- 当 auto 分组的倍率配置为 0 时,quota 计算结果为 0
- 日志记录条件 "if quota != 0" 不满足,导致日志不记录、不扣费

修复方案:
- 在 RelayTaskSubmit 函数中计算分组倍率之前,添加从 ContextKeyAutoGroup
  获取实际分组的逻辑
- 使用安全的类型断言,避免潜在的 panic 风险

影响范围:
- 仅影响 Task Relay 流程(/v1/videos, /suno, /kling 等接口)
- 不影响使用具体分组令牌的调用
- 不影响其他 Relay 类型(chat/completions 等已有类似处理逻辑)
2026-01-06 00:16:50 +08:00
Seefs
5f37a1e97c fix: fix the proxyURL is empty, not using the default HTTP client configuration && the AWS calling side did not apply the relay timeout. 2026-01-05 17:56:24 +08:00
Calcium-Ion
177553af37 Merge pull request #2578 from xyfacai/fix/gemini-mimetype
fix: 修复 gemini 文件类型不支持 image/jpg
2026-01-04 22:19:16 +08:00
Xyfacai
5ed4583c0c fix: 修复 gemini 文件类型不支持 image/jpg 2026-01-04 22:09:03 +08:00
Seefs
1519e97bc6 Merge pull request #2550 from shikaiwei1/patch-2 2026-01-04 18:11:46 +08:00
Seefs
6b1f8b84c6 Merge pull request #2568 from seefs001/feature/channel_override_trim_prefix 2026-01-03 12:38:32 +08:00
Seefs
67ba913b44 feat: add support for Doubao /v1/responses (#2567)
* feat: add support for Doubao /v1/responses
2026-01-03 12:35:35 +08:00
Seefs
817da8d73c feat: add parameter coverage for the operations: copy, trim_prefix, trim_suffix, ensure_prefix, ensure_suffix, trim_space, to_lower, to_upper, replace, and regex_replace 2026-01-03 10:27:16 +08:00
Seefs
43c671b8b3 Merge pull request #2393 from prnake/fix-claude-haiku 2026-01-03 09:36:42 +08:00
Seefs
3510b3e6fc Merge pull request #2532 from feitianbubu/pr/620211e02bd55545f0fa4568f3d55c3b4d7f3305 2026-01-03 09:36:17 +08:00
CaIon
d06915c30d feat(ratio): add functions to check for audio ratios and clean up unused code 2025-12-31 21:29:10 +08:00