Commit Graph

329 Commits

Author SHA1 Message Date
Laisky.Cai
609a6cb4b2 Merge remote-tracking branch 'origin/upstream/main' 2024-02-22 01:54:25 +00:00
JustSong
cece77e533 fix: fix model list 2024-02-19 22:20:18 +08:00
Laisky.Cai
79daa892bd fix: Refactor: Ignore nil adaptors when initializing OpenAI models map
- Ignore nil adaptors when initializing OpenAI models map
2024-02-19 07:34:24 +00:00
Laisky.Cai
29eab22762 Merge remote-tracking branch 'origin/upstream/main' 2024-02-19 07:23:30 +00:00
JustSong
2acc2f5017 feat: support moonshot now (close #804) 2024-02-18 16:17:19 +08:00
JustSong
1aa374ccfb refactor: use adaptor to do relay & test 2024-02-18 00:15:31 +08:00
Laisky.Cai
d548a01c59
feat: Handle errors, validate model names, and calculate quota usage (#978)
- Improved error handling in various modules for better stability and responsiveness.
- Optimized code in several files for improved efficiency and readability.
- Enhanced user experience by providing more detailed error responses in the controller.
- Strengthened security by ignoring sensitive files in `.gitignore`.
2024-02-12 21:35:40 +08:00
Laisky.Cai
4713c92969 Merge branch 'patch/format' 2024-01-28 13:54:35 +00:00
Laisky.Cai
0cabc2791f feat: Handle errors, validate model names, and calculate quota usage
- Improved error handling in various modules for better stability and responsiveness.
- Optimized code in several files for improved efficiency and readability.
- Enhanced user experience by providing more detailed error responses in the controller.
- Strengthened security by ignoring sensitive files in `.gitignore`.
2024-01-28 13:53:05 +00:00
Laisky.Cai
10cbe63c0d Merge remote-tracking branch 'origin/upstream/main' 2024-01-28 13:44:16 +00:00
JustSong
2cd1a78203 chore: update module name 2024-01-28 19:38:58 +08:00
JustSong
b9d3cb0c45 refactor: split RelayTextHelper function 2024-01-28 19:14:46 +08:00
Benny
26e2e646cb
feat: sync models with OpenAI (#971)
* add new 0125 chat models and embedding-3 models

* refine the step of manually deploying

* add gpt-4-turbo-preview
2024-01-28 16:09:21 +08:00
JustSong
2d760d4a01
refactor: refactor relay part (#957)
* refactor: refactor relay part

* refactor: refactor config part
2024-01-21 23:21:42 +08:00
JustSong
eed9f5fdf0
refactor: refactor relay part (#935) 2024-01-14 19:21:03 +08:00
Laisky.Cai
d37fa80106 Merge remote-tracking branch 'origin/upstream/main' 2024-01-11 09:28:40 +00:00
Laisky
e3d5c5fccb feat: Handle OpenAI requests depending on the model type
- Update `golang.org/x/image` and `golang.org/x/net` to their latest versions.
- Convert the request to the correct request type based on the model.
- Handle the request and response differently depending on the API type.
2024-01-08 03:39:08 +00:00
JustSong
bdd4be562d chore: add theme validation 2024-01-07 18:44:26 +08:00
Buer
48989d4a0b
feat: add new theme berry (#860)
* feat: add theme berry

* docs: add development notes

* fix: fix blank page

* chore: update implementation

* fix: fix package.json

* chore: update ui copy

---------

Co-authored-by: JustSong <songquanpeng@foxmail.com>
2024-01-07 14:20:07 +08:00
Laisky.Cai
9d4d9af915 refactor: Migrate AI relay APIs and add audit logging
- Handle all the cases in `relayMode` and `apiType` switch in a consistent manner.
- Retire AI Proxy Library API call pattern.
- Add new cases (Zhipu, Ali, Tencent, Gemini) to generalize the conversion and handling of requests.
- Log the requests if conservation audit is enabled.
2024-01-05 05:58:44 +00:00
Laisky.Cai
021affc81a Merge remote-tracking branch 'origin/upstream/main' 2024-01-03 05:54:05 +00:00
Tailen
498dea2dbb
feat: add support for davinci-002 and babbage-002 (#888) 2024-01-01 17:06:17 +08:00
Tisfeng
af8908db54
feat: able to change gemini safety setting (#867)
* perf: adjust gemini safety settings, set BLOCK_NONE by default

* feat: able to adjust by env variable

---------

Co-authored-by: JustSong <songquanpeng@foxmail.com>
2024-01-01 16:42:19 +08:00
JustSong
d8029550f7 fix: do not consume user quota if failed (close #881) 2024-01-01 16:18:50 +08:00
Laisky.Cai
16603e2530 doc: Relax safety settings for Gemini
- Fix an error message in getting image bytes from a URL in Gemini.
- Remove safety settings from the Gemini OpenAI request and set all harm categories to block only high.
- Add a log statement about how many images are sent to Gemini vision.
2023-12-29 01:39:49 +00:00
Laisky.Cai
671fe78e44 fix: Add image support to Gemini relay
- Add support for getting base64-encoded images via openAI's image_url.
- Add `context` as a parameter for the function `LogError`.
- Handle the error from `image.GetImageFromUrl` by logging it.
- Convert the role to `user` if it is `system` and add a dummy model message to make Gemini happy.
2023-12-27 03:13:11 +00:00
Laisky.Cai
75cbfd7bb6 refactor: Relay text controller improvements
- Add client-side UI for Relaytext.
2023-12-27 02:51:30 +00:00
Laisky.Cai
9a94b41684 style: Refactor controller/relay-text.go
- Exclude multiline error messages from webhook request logs.
2023-12-27 02:32:03 +00:00
Laisky.Cai
00eca28a76 Merge remote-tracking branch 'origin/upstream/main' 2023-12-27 02:14:34 +00:00
JustSong
1c8922153d feat: support gemini-vision-pro 2023-12-24 18:54:32 +08:00
Laisky.Cai
f3c07e1451
fix: openai response should contains model (#841)
* fix: openai response should contains `model`

- Update model attributes in `claudeHandler` for `relay-claude.go`
- Implement model type for fullTextResponse in `relay-gemini.go`
- Add new `Model` field to `OpenAITextResponse` struct in `relay.go`

* chore: set model name response for models

---------

Co-authored-by: JustSong <songquanpeng@foxmail.com>
2023-12-24 16:58:31 +08:00
moondie
ee9e746520
feat: update ali stream implementation & enable internet search (#856)
* Update relay-ali.go: 改进stream模式,添加联网搜索能力

通义千问支持stream的增量模式,不需要每次去掉上次的前缀;实测qwen-max联网模式效果不错,添加了联网模式。如果别的模型有问题可以改为单独给qwen-max开放

* 删除"stream参数"

刚发现原来阿里api没有这个参数,上次误加了。

* refactor: only enable search when specified

* fix: remove custom suffix when get model ratio

---------

Co-authored-by: JustSong <songquanpeng@foxmail.com>
2023-12-24 16:17:21 +08:00
Laisky.Cai
e50008199f Merge remote-tracking branch 'origin/upstream/main' 2023-12-23 01:07:07 +00:00
JustSong
67c64e71c8 fix: fix max_tokens check 2023-12-20 21:45:33 +08:00
Laisky.Cai
d4a0d4025d fix: openai response should contains model
- Update model attributes in `claudeHandler` for `relay-claude.go`
- Implement model type for fullTextResponse in `relay-gemini.go`
- Add new `Model` field to `OpenAITextResponse` struct in `relay.go`
2023-12-19 02:21:12 +00:00
Laisky.Cai
fd7585550a refactor: Increase performance by optimizing text relay functionality
```
- Refactor relay-text controller to improve readability and maintainability
- Optimize database queries for improved performance
- Update error handling to provide more informative messages
```
2023-12-18 03:35:10 +00:00
Laisky.Cai
e382322445 refactor: Optimize code performance across multiple files
- Optimize performance in relay-text functionality
- Refactored code for better readability and maintainability
- Fixed a bug causing intermittent crashes
- Improved error handling for edge cases
- Updated documentation for relay-text module
2023-12-18 03:29:35 +00:00
Laisky.Cai
e86bc68f07 chore: Optimize imports across project files
- Remove unused import `gorm.io/gorm/logger` from relay-text controller
- Refactor and consolidate related functions in relay-text controller
- Improve error handling in relay-text controller
2023-12-18 03:11:04 +00:00
Laisky.Cai
da6d7874ee refactor: Improve performance and reliability in text relay functionality
- Refactor relay-text controller to improve performance and readability
- Update function signatures for better consistency
- Optimize error handling for improved reliability
2023-12-18 03:02:35 +00:00
Laisky.Cai
287376dd97 refactor: Enhance error handling and logging in relay controller
- Update error logging in relay controller
- Include error summary and request details in error log message
- Improve formatting for more descriptive and comprehensive error log messages
2023-12-18 02:44:26 +00:00
Laisky.Cai
a889d9dcc9 Merge remote-tracking branch 'origin/upstream/main' 2023-12-18 02:10:13 +00:00
JustSong
97030e27f8 fix: fix gemini panic (close #833) 2023-12-17 23:30:45 +08:00
ShinChven ✨
bc6769826b
feat: add condition to validate n value for non-Azure channels (#775)
- Add a condition to validate the n value only for non-Azure channels, ensuring it falls within the acceptable range.
- Fix Azure compatibility
2023-12-17 19:49:08 +08:00
Oliver Lee
0fe26cc4bd
feat: update ali relay implementation (#830)
* 修改通译千问最新接口:1.删除history参数,改用官方推荐的messages参数 2.整理messages参数顺序,补充必要上下文信息 3.用autogen调试测试通过

* chore: update impl

---------

Co-authored-by: JustSong <songquanpeng@foxmail.com>
2023-12-17 19:43:23 +08:00
Ghostz
66f06e5d6f
feat: reset image num to 1 when not given (#821)
* Update relay-image.go

* fix: reset image num to 1 when not given

---------

Co-authored-by: JustSong <songquanpeng@foxmail.com>
2023-12-17 18:54:08 +08:00
JustSong
6acb9537a9 fix: try to return a more meaningful error message (close #817) 2023-12-17 18:33:27 +08:00
JustSong
7069c49bdf fix: fix xunfei panic error (close #820) 2023-12-17 18:06:37 +08:00
JustSong
58dee76bf7 fix: fix Gemini stream problem 2023-12-17 16:16:18 +08:00
David Zhuang
5cf23d8698
feat: add Google Gemini Pro support (#826)
* fest: Add Google Gemini Pro, fix #810

* fest: Add tooling to Gemini; Add OpenAI-like system prompt to Gemini

* refactor: removing unused if statement

* fest: Add dummy model message for system message in gemini model

* chore: update implementation

---------

Co-authored-by: JustSong <songquanpeng@foxmail.com>
2023-12-17 12:48:32 +08:00
Laisky.Cai
c503a87c74 refactor: Refactor code for improved efficiency and readability
- Refactored code in relay-utils.go
- Eliminated unused imports and redundant function
- Improved code readability with added comments
- Cleaned up by removing unnecessary commented-out code
2023-12-12 06:09:11 +00:00