refactor: Update SystemInstructions type in GeminiChatRequest and adjust handling in CovertGemini2OpenAI

- Changed SystemInstructions from *GeminiPart to *GeminiChatContent in GeminiChatRequest for improved structure.
- Updated CovertGemini2OpenAI function to accommodate the new SystemInstructions type, ensuring proper handling of message content.
This commit is contained in:
CalciumIon
2024-12-16 22:41:23 +08:00
parent 76acfdc9e2
commit 4163713714
2 changed files with 7 additions and 3 deletions

View File

@@ -5,7 +5,7 @@ type GeminiChatRequest struct {
SafetySettings []GeminiChatSafetySettings `json:"safety_settings,omitempty"`
GenerationConfig GeminiChatGenerationConfig `json:"generation_config,omitempty"`
Tools []GeminiChatTools `json:"tools,omitempty"`
SystemInstructions *GeminiPart `json:"system_instruction,omitempty"`
SystemInstructions *GeminiChatContent `json:"system_instruction,omitempty"`
}
type GeminiInlineData struct {

View File

@@ -76,8 +76,12 @@ func CovertGemini2OpenAI(textRequest dto.GeneralOpenAIRequest) *GeminiChatReques
for _, message := range textRequest.Messages {
if message.Role == "system" {
geminiRequest.SystemInstructions = &GeminiPart{
Text: message.StringContent(),
geminiRequest.SystemInstructions = &GeminiChatContent{
Parts: []GeminiPart{
{
Text: message.StringContent(),
},
},
}
continue
}