From 76824a033769552c10ad352cb240f49e78dd87bb Mon Sep 17 00:00:00 2001 From: "wang.rong" Date: Tue, 27 May 2025 09:32:20 +0800 Subject: [PATCH 1/4] =?UTF-8?q?chat/completion=E9=80=8F=E4=BC=A0parallel?= =?UTF-8?q?=5Ftool=5Fcalls=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dto/openai_request.go | 1 + 1 file changed, 1 insertion(+) diff --git a/dto/openai_request.go b/dto/openai_request.go index e491812a..bda1bb17 100644 --- a/dto/openai_request.go +++ b/dto/openai_request.go @@ -43,6 +43,7 @@ type GeneralOpenAIRequest struct { ResponseFormat *ResponseFormat `json:"response_format,omitempty"` EncodingFormat any `json:"encoding_format,omitempty"` Seed float64 `json:"seed,omitempty"` + ParallelTooCalls *bool `json:"parallel_tool_calls,omitempty"` Tools []ToolCallRequest `json:"tools,omitempty"` ToolChoice any `json:"tool_choice,omitempty"` User string `json:"user,omitempty"` From 96ab4177ca671506432b0dca9331280e078d0f18 Mon Sep 17 00:00:00 2001 From: skynono <6811626@qq.com> Date: Mon, 26 May 2025 17:22:13 +0800 Subject: [PATCH 2/4] fix: ali FetchUpstreamModels url --- controller/channel.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/controller/channel.go b/controller/channel.go index ad85fe24..a31e1f47 100644 --- a/controller/channel.go +++ b/controller/channel.go @@ -119,8 +119,11 @@ func FetchUpstreamModels(c *gin.Context) { baseURL = channel.GetBaseURL() } url := fmt.Sprintf("%s/v1/models", baseURL) - if channel.Type == common.ChannelTypeGemini { + switch channel.Type { + case common.ChannelTypeGemini: url = fmt.Sprintf("%s/v1beta/openai/models", baseURL) + case common.ChannelTypeAli: + url = fmt.Sprintf("%s/compatible-mode/v1/models", baseURL) } body, err := GetResponseBody("GET", url, channel, GetAuthHeader(channel.Key)) if err != nil { From 6e72dcd0ba00781bd14c4830c06993c524dad319 Mon Sep 17 00:00:00 2001 From: tbphp Date: Tue, 27 May 2025 21:50:53 +0800 Subject: [PATCH 3/4] fix: Vertex channel global region format --- relay/channel/vertex/adaptor.go | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/relay/channel/vertex/adaptor.go b/relay/channel/vertex/adaptor.go index d21a3e08..b75136bf 100644 --- a/relay/channel/vertex/adaptor.go +++ b/relay/channel/vertex/adaptor.go @@ -95,14 +95,23 @@ func (a *Adaptor) GetRequestURL(info *relaycommon.RelayInfo) (string, error) { } else { suffix = "generateContent" } - return fmt.Sprintf( - "https://%s-aiplatform.googleapis.com/v1/projects/%s/locations/%s/publishers/google/models/%s:%s", - region, - adc.ProjectID, - region, - info.UpstreamModelName, - suffix, - ), nil + if region == "global" { + return fmt.Sprintf( + "https://aiplatform.googleapis.com/v1/projects/%s/locations/global/publishers/google/models/%s:%s", + adc.ProjectID, + info.UpstreamModelName, + suffix, + ), nil + } else { + return fmt.Sprintf( + "https://%s-aiplatform.googleapis.com/v1/projects/%s/locations/%s/publishers/google/models/%s:%s", + region, + adc.ProjectID, + region, + info.UpstreamModelName, + suffix, + ), nil + } } else if a.RequestMode == RequestModeClaude { if info.IsStream { suffix = "streamRawPredict?alt=sse" From e3d7b31a49743cfa99a17cfafc7b2de540d2eb3f Mon Sep 17 00:00:00 2001 From: IcedTangerine Date: Wed, 28 May 2025 14:25:24 +0800 Subject: [PATCH 4/4] Update openai_request.go --- dto/openai_request.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dto/openai_request.go b/dto/openai_request.go index bda1bb17..78706f9c 100644 --- a/dto/openai_request.go +++ b/dto/openai_request.go @@ -43,7 +43,7 @@ type GeneralOpenAIRequest struct { ResponseFormat *ResponseFormat `json:"response_format,omitempty"` EncodingFormat any `json:"encoding_format,omitempty"` Seed float64 `json:"seed,omitempty"` - ParallelTooCalls *bool `json:"parallel_tool_calls,omitempty"` + ParallelTooCalls bool `json:"parallel_tool_calls,omitempty"` Tools []ToolCallRequest `json:"tools,omitempty"` ToolChoice any `json:"tool_choice,omitempty"` User string `json:"user,omitempty"`