From e1a93a1b82c0cbe395c428ac414254fc6ffcc0aa Mon Sep 17 00:00:00 2001 From: RedwindA Date: Sat, 14 Jun 2025 19:36:58 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=92=AC=20fix(GeminiHelper):=20clean=20up?= =?UTF-8?q?=20empty=20system=20instructions=20in=20request?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- relay/relay-gemini.go | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/relay/relay-gemini.go b/relay/relay-gemini.go index 93a2b7aa..21cf5e12 100644 --- a/relay/relay-gemini.go +++ b/relay/relay-gemini.go @@ -136,6 +136,20 @@ func GeminiHelper(c *gin.Context) (openaiErr *dto.OpenAIErrorWithStatusCode) { adaptor.Init(relayInfo) + // Clean up empty system instruction + if req.SystemInstructions != nil { + hasContent := false + for _, part := range req.SystemInstructions.Parts { + if part.Text != "" { + hasContent = true + break + } + } + if !hasContent { + req.SystemInstructions = nil + } + } + requestBody, err := json.Marshal(req) if err != nil { return service.OpenAIErrorWrapperLocal(err, "marshal_text_request_failed", http.StatusInternalServerError)