CaIon
9e17df3f74
fix: update references from setting to system_setting for ServerAddress
2025-09-13 15:27:41 +08:00
CaIon
287b3ab2c9
Merge remote-tracking branch 'origin/main'
2025-09-13 12:54:49 +08:00
CaIon
15d845cd01
fix(adaptor): correct VertexKeyType condition in SetupRequestHeader
2025-09-13 12:53:41 +08:00
CaIon
1a8d781721
Revert "feat: gemini-2.5-flash-image-preview 文本和图片输出计费"
...
This reverts commit a45513a7a6 .
2025-09-13 12:53:28 +08:00
CaIon
59d6ff0caf
feat(i18n): update TOTP verification message with configuration details
2025-09-12 21:53:21 +08:00
CaIon
e60d6ed4a3
feat(settings): 移除单位美元额度设置项,为后续修改作准备
2025-09-12 21:14:10 +08:00
CaIon
cde212a6ff
Merge remote-tracking branch 'origin/main'
2025-09-12 19:54:46 +08:00
CaIon
0b87aa3a6f
feat(i18n): add translations for pricing terms in English
2025-09-12 19:54:02 +08:00
CaIon
b8687d96d2
Merge remote-tracking branch 'origin/main'
2025-09-12 19:29:40 +08:00
CaIon
c47d9fb5b5
feat(payment): add payment settings configuration and update payment methods handling
2025-09-12 19:29:34 +08:00
CaIon
b04aa78013
feat(channel): add support for Vertex AI key type configuration in settings
2025-09-12 14:06:09 +08:00
CaIon
83154b88f6
fix(responses): allow pass-through body for specific channel settings. ( close #1762 )
2025-09-11 21:02:12 +08:00
CaIon
e8afc25c71
chore: remove PR branching strategy workflow file
2025-09-09 23:23:53 +08:00
CaIon
1b1953e21a
Merge branch 'alpha'
...
# Conflicts:
# README.md
2025-09-09 23:08:17 +08:00
CaIon
e53cbd96ad
fix(channel): implement per-channel locking to ensure thread-safe updates in multi-key mode
2025-09-03 15:52:54 +08:00
CaIon
4f5c343791
feat(readme): update format conversion feature details in README
2025-09-03 14:43:51 +08:00
CaIon
f0183785c9
feat(option): enhance UpdateOption to handle various value types and improve validation
2025-09-03 14:30:25 +08:00
CaIon
1bbabda081
feat(monitor_setting): implement automatic channel testing configuration
2025-09-03 14:00:52 +08:00
CaIon
742871db57
feat(token_counter): add mime type extraction for base64 encoded data
2025-08-28 17:30:53 +08:00
CaIon
9e4c4d3bd1
fix(channel): ensure thread-safe polling with channel-specific lock
2025-08-28 16:34:23 +08:00
CaIon
f7c4eda0f3
Revert "refactor: replace DeepCopy with Copy for request handling consistency"
...
This reverts commit c21219fcff .
2025-08-28 15:11:55 +08:00
CaIon
c21219fcff
refactor: replace DeepCopy with Copy for request handling consistency
2025-08-28 14:57:47 +08:00
CaIon
7e698f658a
fix(pre_consume_quota): improve error messages for insufficient user quota
2025-08-28 13:57:16 +08:00
CaIon
906f797be5
refactor: replace json.Marshal with common.Marshal for consistency and error handling
2025-08-28 13:51:07 +08:00
CaIon
d1f3f2c395
fix(token_counter): update token counting logic to handle media token conditions
2025-08-27 17:11:33 +08:00
CaIon
d92c9db61c
fix(image): add error handling for empty base64 string in image decoding
2025-08-27 16:38:32 +08:00
CaIon
3401abe4d2
fix(relay-gemini): update media handling in candidate content processing
2025-08-27 12:14:50 +08:00
CaIon
a102bed25a
fix(model_ratio): update return value logic for gemini-2.5-flash-lite
2025-08-26 23:01:00 +08:00
CaIon
8004b4ff5f
Merge remote-tracking branch 'origin/alpha' into alpha
2025-08-26 20:38:32 +08:00
CaIon
67719dc087
fix: update web search handling and request structure in adaptor and openai_request
2025-08-26 18:15:18 +08:00
CaIon
1b8bcfb000
fix: update error types for upstream errors and JSON marshal failure
2025-08-26 16:26:56 +08:00
CaIon
b0f86bd82e
fix: update PromptTokens assignment logic in relay_responses
2025-08-26 14:21:10 +08:00
CaIon
0e34de8fe2
feat: replace pcopy with jinzhu/copier for deep copy functionality
2025-08-26 13:40:41 +08:00
CaIon
3e5bc637de
fix: Invalid type for 'input[x].summary': expected an array of objects, but got null instead
2025-08-26 13:17:31 +08:00
CaIon
f249cf9acc
fix: ensure reasoning is not nil before setting effort in OpenAI responses
2025-08-25 22:46:45 +08:00
CaIon
781a708173
feat: support qwen-image-edit
2025-08-25 14:33:12 +08:00
CaIon
bb897a893e
Merge remote-tracking branch 'origin/feat/dalle-extra' into alpha
...
# Conflicts:
# dto/dalle.go
2025-08-25 14:20:54 +08:00
CaIon
79c7d8f477
fix: improve model ratio handling for reserved models in getHardcodedCompletionModelRatio
2025-08-25 11:59:55 +08:00
CaIon
5c7395adc6
Merge remote-tracking branch 'origin/alpha' into alpha
2025-08-25 11:52:57 +08:00
CaIon
7e513ad06d
fix: update model ratio handling for GPT versions
2025-08-25 11:52:45 +08:00
CaIon
a69f166e9e
feat: add SaveWithoutKey method to Channel and update status saving logic
2025-08-25 11:20:16 +08:00
CaIon
1a5ba75068
fix: correct logic for handling nil OpenAI error codes. ( close #1609 )
2025-08-25 11:19:32 +08:00
CaIon
3d7a05bdac
feat: update ali image response handling
2025-08-24 22:50:45 +08:00
CaIon
488f6a2e71
feat: enhance image request handling and add async support
2025-08-24 21:52:56 +08:00
CaIon
94e7f10367
feat: restructure token usage routes and enhance token retrieval logic
2025-08-23 15:45:43 +08:00
CaIon
13301d8544
fix: enhance error handling for invalid request types in relay handlers
2025-08-23 13:34:56 +08:00
CaIon
060ce89286
refactor: rename relay-text.go to compatible_handler.go for clarity
2025-08-23 13:13:57 +08:00
CaIon
ff57ad2072
fix: improve request handling by deep copying OpenAIResponsesRequest
2025-08-23 13:13:10 +08:00
CaIon
1ee3d1cc50
feat: 修复重试后请求结构混乱,修复rerank端点无法使用
2025-08-23 13:12:15 +08:00
CaIon
858585d974
fix: update response body handling in OpenAI relay format
2025-08-22 17:33:20 +08:00
CaIon
bbc362c301
fix: add nil check for Writer in FlushWriter function
2025-08-18 12:48:56 +08:00
CaIon
61601d38c4
feat: 完善gemini格式转换
2025-08-17 19:08:06 +08:00
CaIon
f181ca254b
fix: remove redundant reasoning assignment in ChatCompletionsStreamResponseChoiceDelta
2025-08-17 18:43:31 +08:00
CaIon
3e61e6eb52
refactor: extract FlushWriter function for improved stream flushing
2025-08-17 15:30:31 +08:00
CaIon
aad6314c51
fix: improve error handling for image edit form request parsing
2025-08-17 15:18:57 +08:00
CaIon
bc6c3042b8
fix: remove unnecessary option from error handling in image request conversion
2025-08-17 15:13:17 +08:00
CaIon
4e3f008ae9
fix: update token usage calculation
2025-08-16 19:11:15 +08:00
CaIon
c06d9485c3
feat: add support for Midjourney relay mode based on path prefix
2025-08-16 18:26:26 +08:00
CaIon
3c30b7c4cb
fix: refactor processChannelError to use goroutine for asynchronous handling
2025-08-16 15:15:19 +08:00
CaIon
22125a6dd8
fix: correct argument passing in DoDownloadRequest for MIME type retrieval
2025-08-16 15:03:42 +08:00
CaIon
3a90d5054c
feat: implement file type detection from URL with enhanced MIME type handling
2025-08-16 14:56:29 +08:00
CaIon
11ce48be47
feat: set API version for Azure and Vertex AI channel types
2025-08-16 14:56:19 +08:00
CaIon
28d381982d
Merge remote-tracking branch 'origin/alpha' into alpha
2025-08-16 12:28:46 +08:00
CaIon
cf9faeb901
feat: implement concurrent top-up locking mechanism to prevent race conditions
2025-08-15 20:03:38 +08:00
CaIon
f8f0ee1e3e
feat: initialize channel metadata in mjproxy and relay processing
2025-08-15 19:14:29 +08:00
CaIon
f6ee0b9791
feat: add checks for non-empty URLs in file metadata processing
2025-08-15 19:10:40 +08:00
CaIon
0e95efdf34
feat: initialize channel metadata in relay processing
2025-08-15 19:00:16 +08:00
CaIon
beb61343cd
refactor: comment out SetContextKey to prevent token count meta setting
2025-08-15 18:43:08 +08:00
CaIon
77b100ba2b
refactor: update function signatures to include context and improve file handling #1599
2025-08-15 18:40:54 +08:00
CaIon
215546a805
feat: 优化ac自动机
2025-08-15 16:54:26 +08:00
CaIon
63e7fb697f
Merge remote-tracking branch 'origin/alpha' into alpha
2025-08-15 16:47:36 +08:00
CaIon
893104a173
refactor: move anthropicKey retrieval to improve authorization handling
2025-08-15 16:08:55 +08:00
CaIon
8284cff9b7
refactor: set prompt tokens when not provided in usage
2025-08-15 15:55:01 +08:00
CaIon
e1d36932ae
fix panic
2025-08-15 15:15:21 +08:00
CaIon
5084a43aa9
refactor: ensure graceful closure of response body in relay responses
2025-08-15 15:10:54 +08:00
CaIon
d849412cf5
refactor: replace json.Marshal and json.Unmarshal with common.Marshal and common.Unmarshal
2025-08-15 14:52:17 +08:00
CaIon
07903b0a8a
refactor: improve logging for channel operations with detailed context
2025-08-15 14:15:03 +08:00
CaIon
9da13fdabe
refactor: enhance logging messages for user quota handling in pre-consume logic
2025-08-15 14:08:15 +08:00
CaIon
4858e98b2d
refactor: simplify domain masking logic by removing URL check
2025-08-15 13:46:46 +08:00
CaIon
e0f256506f
Merge branch 'alpha' into refactor_relay
...
# Conflicts:
# dto/openai_image.go
2025-08-15 13:46:34 +08:00
CaIon
07137e6bb8
refactor: update token type handling and improve token counting logic
2025-08-15 13:28:03 +08:00
CaIon
8eb17f24bb
refactor: improve request type validation and enhance sensitive information masking
2025-08-15 13:20:36 +08:00
CaIon
dba74e5b05
refactor: add email masking function and enhance RelayInfo logging
...
This commit introduces a new function, MaskEmail, to mask user email addresses in logs, preventing PII leakage. Additionally, the RelayInfo logging has been updated to utilize this new masking function, ensuring sensitive information is properly handled. The channel test logic has also been improved to dynamically determine the relay format based on the request path.
2025-08-15 12:50:27 +08:00
CaIon
013b30c228
refactor: enhance error handling and masking for model not found scenarios
2025-08-15 12:41:05 +08:00
CaIon
f6f9e73fa3
refactor: improve channel base URL handling and enhance RelayInfo logging
2025-08-14 22:15:18 +08:00
CaIon
112de0b6a6
refactor: enhance quota handling and logging for pre-consume operations
2025-08-14 21:30:03 +08:00
CaIon
c9e9a24e99
refactor: centralize logging and update resource initialization
...
This commit refactors the logging mechanism across the application by replacing direct logger calls with a centralized logging approach using the `common` package. Key changes include:
- Replaced instances of `logger.SysLog` and `logger.FatalLog` with `common.SysLog` and `common.FatalLog` for consistent logging practices.
- Updated resource initialization error handling to utilize the new logging structure, enhancing maintainability and readability.
- Minor adjustments to improve code clarity and organization throughout various modules.
This change aims to streamline logging and improve the overall architecture of the codebase.
2025-08-14 21:10:04 +08:00
CaIon
97ea8b6560
refactor: Introduce pre-consume quota and unify relay handlers
...
This commit introduces a major architectural refactoring to improve quota management, centralize logging, and streamline the relay handling logic.
Key changes:
- **Pre-consume Quota:** Implements a new mechanism to check and reserve user quota *before* making the request to the upstream provider. This ensures more accurate quota deduction and prevents users from exceeding their limits due to concurrent requests.
- **Unified Relay Handlers:** Refactors the relay logic to use generic handlers (e.g., `ChatHandler`, `ImageHandler`) instead of provider-specific implementations. This significantly reduces code duplication and simplifies adding new channels.
- **Centralized Logger:** A new dedicated `logger` package is introduced, and all system logging calls are migrated to use it, moving this responsibility out of the `common` package.
- **Code Reorganization:** DTOs are generalized (e.g., `dalle.go` -> `openai_image.go`) and utility code is moved to more appropriate packages (e.g., `common/http.go` -> `service/http.go`) for better code structure.
2025-08-14 20:05:06 +08:00
CaIon
f21353bfbb
fix(dalle): update ImageRequest struct to use json.RawMessage for flexible field types
2025-08-12 21:12:00 +08:00
CaIon
b850f94139
fix(auth): refine authorization header setting for messages endpoint #1575
2025-08-12 20:42:44 +08:00
CaIon
c7281a353f
fix(env): update STREAMING_TIMEOUT default value to 300 seconds
2025-08-12 19:58:04 +08:00
CaIon
1382ec4f20
fix(adaptor): optimize multipart form handling and resource management
2025-08-12 19:57:56 +08:00
CaIon
219ed0d1cf
fix(database): improve MySQL Chinese character support validation
2025-08-12 16:31:00 +08:00
CaIon
9625ee2d55
fix(relay): remove unnecessary channel type check for BadRequest
2025-08-12 16:12:47 +08:00
CaIon
5b8382a6ab
Merge remote-tracking branch 'origin/alpha' into alpha
2025-08-12 14:13:34 +08:00
CaIon
a423ee3dd1
feat(database): enhance MySQL support for Chinese characters
...
- Added a check for MySQL charset/collation to ensure compatibility with Chinese characters during database initialization.
- Updated SQLite busy timeout from 5000ms to 30000ms for improved performance.
- Removed commented-out PostgreSQL migration logic for clarity.
2025-08-12 14:12:11 +08:00
CaIon
32978f9cd9
✨ feat: Simplify response handling by returning raw response body directly
2025-08-11 20:07:24 +08:00
CaIon
ce74e94fc7
✨ feat: Refactor Gemini tools handling to support JSON raw message format
2025-08-11 19:48:04 +08:00
CaIon
a80ecb8896
✨ feat: Refactor model handling to use UpstreamModelName for request processing
2025-08-11 17:32:58 +08:00
CaIon
37f0383941
✨ feat: Update request URL handling for Claude relay format in adaptor #1557
2025-08-11 17:17:56 +08:00