fix: only use the first one

This commit is contained in:
JustSong 2024-04-27 16:05:04 +08:00
parent 5bdb30a983
commit 4dd64cf84e

View File

@ -62,8 +62,8 @@ func (a *Adaptor) ConvertRequest(c *gin.Context, relayMode int, request *model.G
} }
switch relayMode { switch relayMode {
case relaymode.Embeddings: case relaymode.Embeddings:
baiduEmbeddingRequest := ConvertEmbeddingRequest(*request) baiduEmbeddingRequest, err := ConvertEmbeddingRequest(*request)
return baiduEmbeddingRequest, nil return baiduEmbeddingRequest, err
default: default:
// TopP (0.0, 1.0) // TopP (0.0, 1.0)
request.TopP = math.Min(0.99, request.TopP) request.TopP = math.Min(0.99, request.TopP)
@ -129,11 +129,15 @@ func (a *Adaptor) DoResponse(c *gin.Context, resp *http.Response, meta *meta.Met
return return
} }
func ConvertEmbeddingRequest(request model.GeneralOpenAIRequest) *EmbeddingRequest { func ConvertEmbeddingRequest(request model.GeneralOpenAIRequest) (*EmbeddingRequest, error) {
return &EmbeddingRequest{ inputs := request.ParseInput()
Model: "embedding-2", if len(inputs) != 1 {
Input: strings.Join(request.ParseInput(), " "), return nil, errors.New("invalid input length, zhipu only support one input")
} }
return &EmbeddingRequest{
Model: request.Model,
Input: inputs[0],
}, nil
} }
func (a *Adaptor) GetModelList() []string { func (a *Adaptor) GetModelList() []string {