|
|
@@ -245,6 +245,7 @@ func CovertGemini2OpenAI(c *gin.Context, textRequest dto.GeneralOpenAIRequest, i
|
|
|
functions := make([]dto.FunctionRequest, 0, len(textRequest.Tools))
|
|
|
googleSearch := false
|
|
|
codeExecution := false
|
|
|
+ urlContext := false
|
|
|
for _, tool := range textRequest.Tools {
|
|
|
if tool.Function.Name == "googleSearch" {
|
|
|
googleSearch = true
|
|
|
@@ -254,6 +255,10 @@ func CovertGemini2OpenAI(c *gin.Context, textRequest dto.GeneralOpenAIRequest, i
|
|
|
codeExecution = true
|
|
|
continue
|
|
|
}
|
|
|
+ if tool.Function.Name == "urlContext" {
|
|
|
+ urlContext = true
|
|
|
+ continue
|
|
|
+ }
|
|
|
if tool.Function.Parameters != nil {
|
|
|
|
|
|
params, ok := tool.Function.Parameters.(map[string]interface{})
|
|
|
@@ -281,6 +286,11 @@ func CovertGemini2OpenAI(c *gin.Context, textRequest dto.GeneralOpenAIRequest, i
|
|
|
GoogleSearch: make(map[string]string),
|
|
|
})
|
|
|
}
|
|
|
+ if urlContext {
|
|
|
+ geminiTools = append(geminiTools, dto.GeminiChatTool{
|
|
|
+ URLContext: make(map[string]string),
|
|
|
+ })
|
|
|
+ }
|
|
|
if len(functions) > 0 {
|
|
|
geminiTools = append(geminiTools, dto.GeminiChatTool{
|
|
|
FunctionDeclarations: functions,
|