🐛 fix: gemini function call error

This commit is contained in:
MartialBE 2024-05-18 17:22:26 +08:00
parent 6ab116c0eb
commit 6cd0f932c9
No known key found for this signature in database
GPG Key ID: 27C0267EC84B0A5C

View File

@ -139,18 +139,19 @@ func OpenAIToGeminiChatContent(openaiContents []types.ChatCompletionMessage) ([]
Parts: make([]GeminiPart, 0),
}
content.Role = ConvertRole(openaiContent.Role)
if openaiContent.Role == types.ChatMessageRoleFunction {
contents = append(contents, GeminiChatContent{
if openaiContent.ToolCalls != nil {
content = GeminiChatContent{
Role: "model",
Parts: []GeminiPart{
{
FunctionCall: &GeminiFunctionCall{
Name: *openaiContent.Name,
Name: openaiContent.ToolCalls[0].Function.Name,
Args: map[string]interface{}{},
},
},
},
})
}
} else if openaiContent.Role == types.ChatMessageRoleTool {
content = GeminiChatContent{
Role: "function",
Parts: []GeminiPart{