fix(executor): improve model compatibility handling for OpenAI-compatibility

Enhances payload handling by introducing OpenAI-compatibility checks and refining how reasoning metadata is resolved, ensuring broader model support.
This commit is contained in:
Luis Pater
2025-12-12 21:57:25 +08:00
parent 1c52a89535
commit 9f511f0024
2 changed files with 31 additions and 11 deletions

View File

@@ -52,10 +52,14 @@ func applyReasoningEffortMetadata(payload []byte, metadata map[string]any, model
if len(metadata) == 0 {
return payload
}
if !util.ModelSupportsThinking(model) {
if field == "" {
return payload
}
if field == "" {
baseModel := util.ResolveOriginalModel(model, metadata)
if baseModel == "" {
baseModel = model
}
if !util.ModelSupportsThinking(baseModel) && !util.IsOpenAICompatibilityModel(baseModel) {
return payload
}
if effort, ok := util.ReasoningEffortFromMetadata(metadata); ok && effort != "" {
@@ -226,6 +230,9 @@ func normalizeThinkingConfig(payload []byte, model string) []byte {
}
if !util.ModelSupportsThinking(model) {
if util.IsOpenAICompatibilityModel(model) {
return payload
}
return stripThinkingFields(payload)
}