From 1b161f92645244ea36d21c9961ad71d9e65e51d7 Mon Sep 17 00:00:00 2001 From: tangxingyu Date: Sat, 30 Mar 2024 23:05:40 +0800 Subject: [PATCH] fix claude system message --- adapter/claude/chat.go | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/adapter/claude/chat.go b/adapter/claude/chat.go index 93f1df6..4472ff0 100644 --- a/adapter/claude/chat.go +++ b/adapter/claude/chat.go @@ -60,6 +60,12 @@ func (c *ChatInstance) ConvertMessages(props *adaptercommon.ChatProps) []globals result := make([]globals.Message, 0) for _, message := range props.Message { + + // System message is set when constructing Chatbody + if message.Role == globals.System { + continue + } + // if is first message, set it to user message if !start { start = true @@ -70,11 +76,6 @@ func (c *ChatInstance) ConvertMessages(props *adaptercommon.ChatProps) []globals continue } - // if is system message, set it to user message - if message.Role == globals.System { - continue - } - // anthropic api does not allow multi-same role messages if len(result) > 0 && result[len(result)-1].Role == message.Role { result[len(result)-1].Content += "\n" + message.Content