chore: limit the temperature and top_p parameter value range to (0.0, 1) for zhipu (#1091)

This commit is contained in:
majian 2024-03-16 13:39:30 +08:00 committed by GitHub
parent 8dac3afebc
commit 205aba694f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -9,6 +9,7 @@ import (
"github.com/songquanpeng/one-api/relay/model" "github.com/songquanpeng/one-api/relay/model"
"github.com/songquanpeng/one-api/relay/util" "github.com/songquanpeng/one-api/relay/util"
"io" "io"
"math"
"net/http" "net/http"
"strings" "strings"
) )
@ -52,9 +53,13 @@ func (a *Adaptor) ConvertRequest(c *gin.Context, relayMode int, request *model.G
if request == nil { if request == nil {
return nil, errors.New("request is nil") return nil, errors.New("request is nil")
} }
if request.TopP >= 1 { // TopP (0.0, 1.0)
request.TopP = 0.99 request.TopP = math.Min(0.99, request.TopP)
} request.TopP = math.Max(0.01, request.TopP)
// Temperature (0.0, 1.0)
request.Temperature = math.Min(0.99, request.Temperature)
request.Temperature = math.Max(0.01, request.Temperature)
a.SetVersionByModeName(request.Model) a.SetVersionByModeName(request.Model)
if a.APIVersion == "v4" { if a.APIVersion == "v4" {
return request, nil return request, nil