diff --git a/relay/channel/openai/adaptor.go b/relay/channel/openai/adaptor.go index def08502..bb483670 100644 --- a/relay/channel/openai/adaptor.go +++ b/relay/channel/openai/adaptor.go @@ -132,6 +132,19 @@ func (a *Adaptor) ConvertAudioRequest(c *gin.Context, info *relaycommon.RelayInf writer.WriteField("model", request.Model) + // 获取所有表单字段 + formData := c.Request.PostForm + + // 遍历表单字段并打印输出 + for key, values := range formData { + if key == "model" { + continue + } + for _, value := range values { + writer.WriteField(key, value) + } + } + // 添加文件字段 file, header, err := c.Request.FormFile("file") if err != nil { diff --git a/relay/relay-audio.go b/relay/relay-audio.go index 21dbd54e..cd06fc89 100644 --- a/relay/relay-audio.go +++ b/relay/relay-audio.go @@ -33,15 +33,18 @@ func getAndValidAudioRequest(c *gin.Context, info *relaycommon.RelayInfo) (*dto. } } default: - if audioRequest.Model == "" { - audioRequest.Model = c.PostForm("model") + err = c.Request.ParseForm() + if err != nil { + return nil, err } + formData := c.Request.PostForm + if audioRequest.Model == "" { + audioRequest.Model = formData.Get("model") + } + if audioRequest.Model == "" { return nil, errors.New("model is required") } - if audioRequest.ResponseFormat == "" { - audioRequest.ResponseFormat = "json" - } } return audioRequest, nil }