diff --git a/cli/flags.go b/cli/flags.go index e4f0ac6b..39bb39ce 100644 --- a/cli/flags.go +++ b/cli/flags.go @@ -279,14 +279,7 @@ func (o *Flags) BuildChatRequest(Meta string) (ret *common.ChatRequest, err erro } var message *goopenai.ChatCompletionMessage - if len(o.Attachments) == 0 { - if o.Message != "" { - message = &goopenai.ChatCompletionMessage{ - Role: goopenai.ChatMessageRoleUser, - Content: strings.TrimSpace(o.Message), - } - } - } else { + if len(o.Attachments) > 0 { message = &goopenai.ChatCompletionMessage{ Role: goopenai.ChatMessageRoleUser, } @@ -323,7 +316,13 @@ func (o *Flags) BuildChatRequest(Meta string) (ret *common.ChatRequest, err erro }, }) } + } else if o.Message != "" { + message = &goopenai.ChatCompletionMessage{ + Role: goopenai.ChatMessageRoleUser, + Content: strings.TrimSpace(o.Message), + } } + ret.Message = message if o.Language != "" { diff --git a/core/chatter.go b/core/chatter.go index 19083f7f..34a2d72e 100644 --- a/core/chatter.go +++ b/core/chatter.go @@ -227,6 +227,8 @@ func (o *Chatter) BuildSession(request *common.ChatRequest, raw bool) (session * // So, we only append the direct user message if NO pattern was used. if request.PatternName == "" && request.Message != nil { session.Append(request.Message) + } else if request.Message != nil { + session.Append(request.Message) } }