Ver Fonte

Merge remote-tracking branch 'origin/alpha' into alpha

t0ng7u há 7 meses atrás
pai
commit
71ba3fa310
3 ficheiros alterados com 6 adições e 5 exclusões
  1. 1 0
      dto/openai_request.go
  2. 4 5
      relay/channel/aws/relay-aws.go
  3. 1 0
      types/error.go

+ 1 - 0
dto/openai_request.go

@@ -29,6 +29,7 @@ type GeneralOpenAIRequest struct {
 	MaxTokens           uint              `json:"max_tokens,omitempty"`
 	MaxTokens           uint              `json:"max_tokens,omitempty"`
 	MaxCompletionTokens uint              `json:"max_completion_tokens,omitempty"`
 	MaxCompletionTokens uint              `json:"max_completion_tokens,omitempty"`
 	ReasoningEffort     string            `json:"reasoning_effort,omitempty"`
 	ReasoningEffort     string            `json:"reasoning_effort,omitempty"`
+	Verbosity           json.RawMessage   `json:"verbosity,omitempty"` // gpt-5
 	Temperature         *float64          `json:"temperature,omitempty"`
 	Temperature         *float64          `json:"temperature,omitempty"`
 	TopP                float64           `json:"top_p,omitempty"`
 	TopP                float64           `json:"top_p,omitempty"`
 	TopK                int               `json:"top_k,omitempty"`
 	TopK                int               `json:"top_k,omitempty"`

+ 4 - 5
relay/channel/aws/relay-aws.go

@@ -1,7 +1,6 @@
 package aws
 package aws
 
 
 import (
 import (
-	"encoding/json"
 	"fmt"
 	"fmt"
 	"net/http"
 	"net/http"
 	"one-api/common"
 	"one-api/common"
@@ -113,14 +112,14 @@ func awsHandler(c *gin.Context, info *relaycommon.RelayInfo, requestMode int) (*
 	}
 	}
 	claudeReq := claudeReq_.(*dto.ClaudeRequest)
 	claudeReq := claudeReq_.(*dto.ClaudeRequest)
 	awsClaudeReq := copyRequest(claudeReq)
 	awsClaudeReq := copyRequest(claudeReq)
-	awsReq.Body, err = json.Marshal(awsClaudeReq)
+	awsReq.Body, err = common.Marshal(awsClaudeReq)
 	if err != nil {
 	if err != nil {
 		return types.NewError(errors.Wrap(err, "marshal request"), types.ErrorCodeBadResponseBody), nil
 		return types.NewError(errors.Wrap(err, "marshal request"), types.ErrorCodeBadResponseBody), nil
 	}
 	}
 
 
 	awsResp, err := awsCli.InvokeModel(c.Request.Context(), awsReq)
 	awsResp, err := awsCli.InvokeModel(c.Request.Context(), awsReq)
 	if err != nil {
 	if err != nil {
-		return types.NewError(errors.Wrap(err, "InvokeModel"), types.ErrorCodeChannelAwsClientError), nil
+		return types.NewOpenAIError(errors.Wrap(err, "InvokeModel"), types.ErrorCodeAwsInvokeError, http.StatusInternalServerError), nil
 	}
 	}
 
 
 	claudeInfo := &claude.ClaudeResponseInfo{
 	claudeInfo := &claude.ClaudeResponseInfo{
@@ -165,14 +164,14 @@ func awsStreamHandler(c *gin.Context, resp *http.Response, info *relaycommon.Rel
 	claudeReq := claudeReq_.(*dto.ClaudeRequest)
 	claudeReq := claudeReq_.(*dto.ClaudeRequest)
 
 
 	awsClaudeReq := copyRequest(claudeReq)
 	awsClaudeReq := copyRequest(claudeReq)
-	awsReq.Body, err = json.Marshal(awsClaudeReq)
+	awsReq.Body, err = common.Marshal(awsClaudeReq)
 	if err != nil {
 	if err != nil {
 		return types.NewError(errors.Wrap(err, "marshal request"), types.ErrorCodeBadResponseBody), nil
 		return types.NewError(errors.Wrap(err, "marshal request"), types.ErrorCodeBadResponseBody), nil
 	}
 	}
 
 
 	awsResp, err := awsCli.InvokeModelWithResponseStream(c.Request.Context(), awsReq)
 	awsResp, err := awsCli.InvokeModelWithResponseStream(c.Request.Context(), awsReq)
 	if err != nil {
 	if err != nil {
-		return types.NewError(errors.Wrap(err, "InvokeModelWithResponseStream"), types.ErrorCodeChannelAwsClientError), nil
+		return types.NewOpenAIError(errors.Wrap(err, "InvokeModelWithResponseStream"), types.ErrorCodeAwsInvokeError, http.StatusInternalServerError), nil
 	}
 	}
 	stream := awsResp.GetStream()
 	stream := awsResp.GetStream()
 	defer stream.Close()
 	defer stream.Close()

+ 1 - 0
types/error.go

@@ -65,6 +65,7 @@ const (
 	ErrorCodeBadResponse            ErrorCode = "bad_response"
 	ErrorCodeBadResponse            ErrorCode = "bad_response"
 	ErrorCodeBadResponseBody        ErrorCode = "bad_response_body"
 	ErrorCodeBadResponseBody        ErrorCode = "bad_response_body"
 	ErrorCodeEmptyResponse          ErrorCode = "empty_response"
 	ErrorCodeEmptyResponse          ErrorCode = "empty_response"
+	ErrorCodeAwsInvokeError         ErrorCode = "aws_invoke_error"
 
 
 	// sql error
 	// sql error
 	ErrorCodeQueryDataError  ErrorCode = "query_data_error"
 	ErrorCodeQueryDataError  ErrorCode = "query_data_error"