Fixed gemini system prompt handling

This commit is contained in:
Matt Low 2024-06-01 19:47:08 +00:00
parent 60a474d516
commit 8467a6d759
2 changed files with 15 additions and 6 deletions

View File

@ -159,7 +159,6 @@ func createGenerateContentRequest(
request := &GenerateContentRequest{
Contents: requestContents,
SystemInstructions: system,
GenerationConfig: &GenerationConfig{
MaxOutputTokens: &params.MaxTokens,
Temperature: &params.Temperature,
@ -167,6 +166,16 @@ func createGenerateContentRequest(
},
}
if system != "" {
request.SystemInstruction = Content{
Parts: []ContentPart{
{
Text: system,
},
},
}
}
if len(params.ToolBag) > 0 {
request.Tools = convertTools(params.ToolBag)
}

View File

@ -36,7 +36,7 @@ type GenerationConfig struct {
type GenerateContentRequest struct {
Contents []Content `json:"contents"`
Tools []Tool `json:"tools,omitempty"`
SystemInstructions string `json:"systemInstructions,omitempty"`
SystemInstruction Content `json:"systemInstruction,omitempty"`
GenerationConfig *GenerationConfig `json:"generationConfig,omitempty"`
}