ソースを参照

fix: 转义 Gemini 工具调用中的反斜杠

Yan 1 年間 前
コミット
72dc54309c
1 ファイル変更2 行追加1 行削除
  1. 2 1
      relay/channel/gemini/relay-gemini.go

+ 2 - 1
relay/channel/gemini/relay-gemini.go

@@ -296,7 +296,8 @@ func getToolCall(item *GeminiPart) *dto.ToolCall {
 		ID:   fmt.Sprintf("call_%s", common.GetUUID()),
 		Type: "function",
 		Function: dto.FunctionCall{
-			Arguments: string(argsBytes),
+			// 不好评价,得去转义一下反斜杠,Gemini 的特性好像是,Google 返回的时候本身就会转义“\”
+			Arguments: strings.ReplaceAll(string(argsBytes), "\\\\", "\\"),
 			Name:      item.FunctionCall.FunctionName,
 		},
 	}