Fix handling of OpenAI messages with content and multi-content.

Previously, OpenAI messages containing both `Content` and `MultiContent` could cause inconsistent behavior. This update ensures `Content` is converted into a `MultiContent` entry to maintain compatibility.
This commit is contained in:
Steve Dudenhoeffer 2025-03-18 01:01:46 -04:00
parent e5a046a70b
commit 88fbf89a63

9
llm.go
View File

@ -106,6 +106,15 @@ func (m Message) toChatCompletionMessages() []openai.ChatCompletionMessage {
} }
} }
// openai does not support messages with both content and multi-content
if len(res.MultiContent) > 0 && res.Content != "" {
res.MultiContent = append([]openai.ChatMessagePart{{
Type: "text",
Text: res.Content,
}}, res.MultiContent...)
res.Content = ""
}
return []openai.ChatCompletionMessage{res} return []openai.ChatCompletionMessage{res}
} }