ai-gateway/common
Laisky.Cai fc9a784950
feat: support aws bedrockruntime claude3 (#1328)
* feat: support aws bedrockruntime claude3

closes #622, closes #749, closes #1300

* fix: convert to aws claude model id

* fix: Update AWS adapter to handle stream completions and calculate usage metrics

Based on the file summaries provided, here are the important bullet points for the commit message:

- Add functionality to handle stream completion events from AWS in the relay/adaptor/aws/main.go file
- Marshall AWS response to OpenAI format and calculate usage metrics in the same file
- Implement a custom render function for streaming events in the same file
- Improve error handling for JSON unmarshalling and marshalling errors in the same file

* fix: Implement AWS handler with usage tracking and error handling

- Implemented streaming response handling for AWS handler
- Set response content type to text/event-stream
- Added error handling for failed marshaling/unmarshaling
- Updated return values to include `relaymodel.ErrorWithStatusCode` and `relaymodel.Usage`
- Improved error handling and response formatting for AWS adaptor

* fix: Refactor AWS Adapter for Improved Model Mapping and Error Handling

* Refactor AWS adapter to improve model management
  - Replace hardcoded model list in `adapter.go` with a function to get models from `awsModelIDMap`
  - Update `GetModelList` function to return model list directly
  - Add `GetChannelName` function to get channel name from `Adaptor` object
* Improve error handling and code organization in main.go
  - Replace switch statement with a map to map AWS model IDs to OpenAI model IDs
  - Return an error if the model is not found in the map
  - Use a single return statement instead of wrapping multiple return statements in the `awsModelID` function
  - Add a new error message for when the model is not found in the map in the `Handler` function

* fix: bug fix

* chore: change variable name & package

* chore: change variable name

* perf: update config related code

---------

Co-authored-by: JustSong <songquanpeng@foxmail.com>
2024-04-20 00:40:47 +08:00
..
blacklist fix: add user to blacklist when it's banned or deleted, and make deletion soft (close #473, close #791) 2024-03-10 15:56:19 +08:00
config feat: support aws bedrockruntime claude3 (#1328) 2024-04-20 00:40:47 +08:00
conv feat: support function call for ali (close #1242) 2024-03-30 10:43:26 +08:00
ctxkey feat: support aws bedrockruntime claude3 (#1328) 2024-04-20 00:40:47 +08:00
env fix: fix baidu system prompt (close #1079) 2024-03-13 22:56:54 +08:00
helper chore: reorganize helper related package 2024-04-06 01:02:35 +08:00
image chore: update module name 2024-01-28 19:38:58 +08:00
logger feat: support ollama now (close #870) 2024-03-14 01:02:47 +08:00
message feat: able to send alert message via message pusher (close #993) 2024-03-10 19:16:06 +08:00
network feat: able to set multiple subnets 2024-04-05 17:25:28 +08:00
random chore: reorganize helper related package 2024-04-06 01:02:35 +08:00
constants.go chore: reorganize common package 2024-04-06 02:03:59 +08:00
crypto.go Initial commit 2023-04-22 20:39:27 +08:00
custom-event.go refactor: rename file to conform to standards 2023-05-13 15:43:55 +08:00
database.go fix: fix baidu system prompt (close #1079) 2024-03-13 22:56:54 +08:00
embed-file-system.go feat: Handle errors, validate model names, and calculate quota usage (#978) 2024-02-12 21:35:40 +08:00
gin.go fix: fix getAndValidateTextRequest failed: unexpected end of JSON input (close #1043) 2024-02-26 22:52:16 +08:00
init.go chore: update module name 2024-01-28 19:38:58 +08:00
rate-limit.go Initial commit 2023-04-22 20:39:27 +08:00
redis.go chore: update module name 2024-01-28 19:38:58 +08:00
utils.go fix: make quota int64 2024-03-13 20:00:51 +08:00
validate.go Initial commit 2023-04-22 20:39:27 +08:00
verification.go Initial commit 2023-04-22 20:39:27 +08:00