Commit Graph

47 Commits

Author SHA1 Message Date
CaIon
6ddeab2f2f fix(adaptor): enhance response handling and error logging for Claude format 2025-07-23 20:59:56 +08:00
CaIon
c73b5886b9 feat: support ollama claude format 2025-07-23 20:01:03 +08:00
CaIon
c5ec332ab3 fix: add Think field to OllamaRequest and support extra parameters in GeneralOpenAIRequest. (close #1125
)
2025-07-22 12:06:21 +08:00
CaIon
5bf5d3d16a feat(adaptor): refactor response handlers to return usage first and improve error handling 2025-07-12 21:12:46 +08:00
CaIon
4a9ca4209a refactor: Introduce standardized API error
This commit refactors the application's error handling mechanism by introducing a new standardized error type, `types.NewAPIError`. It also renames common JSON utility functions for better clarity.

Previously, internal error handling was tightly coupled to the `dto.OpenAIError` format. This change decouples the internal logic from the external API representation.

Key changes:
- A new `types.NewAPIError` struct is introduced to serve as a canonical internal representation for all API errors.
- All relay adapters (OpenAI, Claude, Gemini, etc.) are updated to return `*types.NewAPIError`.
- Controllers now convert the internal `NewAPIError` to the client-facing `OpenAIError` format at the API boundary, ensuring backward compatibility.
- Channel auto-disable/enable logic is updated to use the new standardized error type.
- JSON utility functions are renamed to align with Go's standard library conventions (e.g., `UnmarshalJson` -> `Unmarshal`, `EncodeJson` -> `Marshal`).
2025-07-10 15:02:40 +08:00
CaIon
aae9e81c20 🐛 fix: refactor response body handling in multiple relay handlers to utilize IOCopyBytesGracefully 2025-06-27 23:35:56 +08:00
CaIon
ae586e1be9 feat: add CloseResponseBodyGracefully function to handle HTTP response body closure 2025-06-27 21:37:13 +08:00
creamlike1024
8ea4c76f2b feat: support /v1/responses API 2025-05-02 13:59:46 +08:00
1808837298@qq.com
921ad4530e refactor: Replace direct access to ImageUrl with GetImageMedia method across multiple relay channels 2025-03-15 19:43:37 +08:00
CalciumIon
5021000c5d refactor: Simplify OpenAI handler function signature and remove unused TextResponseWithError struct; introduce common_handler for rerank functionality 2025-03-14 17:31:05 +08:00
1808837298@qq.com
47c297794d feat: 初步兼容流模式下openai渠道类型转为claude格式访问 #862 2025-03-13 19:32:08 +08:00
1808837298@qq.com
78fc3a191c feat: claude relay 2025-03-12 21:31:46 +08:00
1808837298@qq.com
0646fa1892 fix: gemini&claude tool call format #795 #766 2025-02-26 23:56:10 +08:00
1808837298@qq.com
8f3c7280cf feat: Support max_tokens parameter for Ollama channel #782 2025-02-24 17:35:49 +08:00
1808837298@qq.com
8dbac87e92 fix: Correct Ollama channel authentication header setting 2025-02-20 01:28:15 +08:00
Coming
368b5fbaa1 fix: Fix Ollama channel authentication 2025-02-20 00:52:30 +08:00
1808837298@qq.com
5ef44f6898 feat: Improve image handling for Ollama channels 2025-02-19 20:45:42 +08:00
1808837298@qq.com
604a5b1ad5 feat: Enhance Ollama channel support with additional request parameters #771 2025-02-19 19:58:34 +08:00
1808837298@qq.com
61ad1adbda feat: Improve embedding request handling and support across channels
- Update EmbeddingRequest DTO to support more flexible input types
- Add input parsing method to handle various input formats
- Implement ConvertEmbeddingRequest for multiple channel adaptors
- Remove relayMode parameter from EmbeddingHelper
- Add input validation for embedding requests
- Simplify embedding request conversion for different channels
2025-02-12 14:39:36 +08:00
kuwork
fdebb6e6e8 Merge branch 'main' into main 2025-02-04 22:52:37 +08:00
Jerry
fcc32ffbc9 Fix M3E not working 2025-01-23 05:54:39 +08:00
Butui Hu
6e710f3210 Fix temperature not being set to 0 due to json omitempty
The issue was caused by the `omitempty` tag in the Go struct, which prevented the `temperature` field from being included in the JSON output when it was set to 0.

Signed-off-by: Butui Hu <hot123tea123@gmail.com>
2025-01-21 12:54:09 +08:00
HowieWood
0788a6c25f Continue fixing Ollama embedding return issue 2024-11-06 01:21:02 +00:00
HowieWood
9e550eab00 Modify ollama embed return fields 2024-11-05 20:12:51 +08:00
1808837298@qq.com
9e4133a890 feat: realtime
(cherry picked from commit a5529df3e1a4c08a120e8c05203a7d885b0fe8d8)
2024-11-05 19:24:14 +08:00
HowieWood
70eb30e9c7 /api/embeddings is deprecated, use /api/embed.
/api/embeddings is deprecated, use /api/embed.
2024-11-04 22:03:41 +08:00
CalciumIon
fffef91df5 feat: support ollama multi-text embedding 2024-09-12 18:29:45 +08:00
CalciumIon
5c1a127b1c fix: response format 2024-08-07 15:43:01 +08:00
CalciumIon
3a3f79f4b8 feat: support ollama tools 2024-07-27 17:51:05 +08:00
CalciumIon
d06018cd3f chore: gopool 2024-07-19 01:07:37 +08:00
CalciumIon
ee0e1c9736 refactor: audio relay 2024-07-16 22:07:10 +08:00
CalciumIon
22ed887350 chore: openai stream 2024-07-15 22:07:50 +08:00
CalciumIon
7b20b4ed3d fix: azure stream options 2024-07-15 16:05:30 +08:00
CalciumIon
22bc0bf773 feat: support stream_options 2024-07-08 01:27:57 +08:00
CalciumIon
c7ba4a245b feat: support cohere rerank 2024-07-06 17:09:22 +08:00
CalciumIon
6e92f1f2d1 feat: 记录流模式首字时间 (close #323) 2024-06-26 18:04:49 +08:00
CaIon
e355c24725 feat: 填入相关模型 2024-05-12 19:07:33 +08:00
CaIon
86ab64ec67 feat: 完善函数计费 2024-04-23 23:01:06 +08:00
CaIon
a8095ef020 feat: 支持ollama embedding数组传参 2024-04-22 21:09:11 +08:00
CaIon
54c18dc89e fix: remove sensitive check on completion (close #157) 2024-03-29 22:20:14 +08:00
CaIon
f47e80f7c1 feat: support ollama embedding 2024-03-26 19:53:53 +08:00
CaIon
ca600790b4 fix: ollama channel test 2024-03-26 19:27:11 +08:00
CaIon
1004e3a1d5 fix: fix embedding 2024-03-21 17:39:05 +08:00
CaIon
580f2894ac feat: 初步兼容生成内容检查 2024-03-20 19:00:51 +08:00
CaIon
14892a6582 feat: 初步兼容敏感词过滤 2024-03-20 17:07:42 +08:00
CaIon
1a0d4b20c6 feat: add parameter top_k 2024-03-12 18:18:47 +08:00
CaIon
c1537aad3c feat: support ollama (close #112) 2024-03-12 02:36:39 +08:00