Files
CyberStrikeAI/internal/multiagent/eino_summarize_payload.go
T

34 lines
1014 B
Go

package multiagent
import (
"strings"
"cyberstrike-ai/internal/config"
copenai "cyberstrike-ai/internal/openai"
)
// stripReasoningFromSummarizationPayload removes thinking / reasoning fields from a
// chat-completions JSON body. Applied only to summarization Generate calls via
// model.ModelOptions on the shared ChatModel — main-agent requests are unchanged.
func stripReasoningFromSummarizationPayload(rawBody []byte, oa *config.OpenAIConfig) ([]byte, error) {
if shouldDisableDeepSeekThinkingForSummarization(oa) {
return copenai.DisableThinkingForChatCompletionBody(rawBody)
}
return copenai.StripReasoningFromChatCompletionBody(rawBody)
}
func shouldDisableDeepSeekThinkingForSummarization(oa *config.OpenAIConfig) bool {
if oa == nil {
return false
}
profile := strings.ToLower(strings.TrimSpace(oa.Reasoning.ProfileEffective()))
switch profile {
case "deepseek", "deepseek_compat":
return true
case "", "auto":
return oa.IsDeepSeekEndpointOrModel()
default:
return false
}
}