fix(venice): supports reason effort prop

Andrey Nering created

Change summary

cmd/venice/main.go                     |  8 ++++-
internal/providers/configs/venice.json | 42 ----------------------------
2 files changed, 6 insertions(+), 44 deletions(-)

Detailed changes

cmd/venice/main.go 🔗

@@ -49,6 +49,7 @@ type VeniceModelCapabilities struct {
 	Quantization            string `json:"quantization"`
 	SupportsFunctionCalling bool   `json:"supportsFunctionCalling"`
 	SupportsReasoning       bool   `json:"supportsReasoning"`
+	SupportsReasoningEffort bool   `json:"supportsReasoningEffort"`
 	SupportsResponseSchema  bool   `json:"supportsResponseSchema"`
 	SupportsVision          bool   `json:"supportsVision"`
 	SupportsWebSearch       bool   `json:"supportsWebSearch"`
@@ -187,10 +188,13 @@ func main() {
 			continue
 		}
 
-		canReason := model.ModelSpec.Capabilities.SupportsReasoning
+		var (
+			canReason            = model.ModelSpec.Capabilities.SupportsReasoning
+			supportsReasonEffort = model.ModelSpec.Capabilities.SupportsReasoningEffort
+		)
 		var reasoningLevels []string
 		var defaultReasoning string
-		if canReason {
+		if canReason && supportsReasonEffort {
 			reasoningLevels = []string{"low", "medium", "high"}
 			defaultReasoning = "medium"
 		}

internal/providers/configs/venice.json 🔗

@@ -93,12 +93,6 @@
       "context_window": 160000,
       "default_max_tokens": 32768,
       "can_reason": true,
-      "reasoning_levels": [
-        "low",
-        "medium",
-        "high"
-      ],
-      "default_reasoning_effort": "medium",
       "supports_attachments": false,
       "options": {}
     },
@@ -125,12 +119,6 @@
       "context_window": 198000,
       "default_max_tokens": 16384,
       "can_reason": true,
-      "reasoning_levels": [
-        "low",
-        "medium",
-        "high"
-      ],
-      "default_reasoning_effort": "medium",
       "supports_attachments": false,
       "options": {}
     },
@@ -163,12 +151,6 @@
       "context_window": 200000,
       "default_max_tokens": 24000,
       "can_reason": true,
-      "reasoning_levels": [
-        "low",
-        "medium",
-        "high"
-      ],
-      "default_reasoning_effort": "medium",
       "supports_attachments": false,
       "options": {}
     },
@@ -182,12 +164,6 @@
       "context_window": 198000,
       "default_max_tokens": 32000,
       "can_reason": true,
-      "reasoning_levels": [
-        "low",
-        "medium",
-        "high"
-      ],
-      "default_reasoning_effort": "medium",
       "supports_attachments": false,
       "options": {}
     },
@@ -622,12 +598,6 @@
       "context_window": 128000,
       "default_max_tokens": 16384,
       "can_reason": true,
-      "reasoning_levels": [
-        "low",
-        "medium",
-        "high"
-      ],
-      "default_reasoning_effort": "medium",
       "supports_attachments": false,
       "options": {}
     },
@@ -680,12 +650,6 @@
       "context_window": 256000,
       "default_max_tokens": 65536,
       "can_reason": true,
-      "reasoning_levels": [
-        "low",
-        "medium",
-        "high"
-      ],
-      "default_reasoning_effort": "medium",
       "supports_attachments": true,
       "options": {
         "temperature": 1,
@@ -702,12 +666,6 @@
       "context_window": 256000,
       "default_max_tokens": 65536,
       "can_reason": true,
-      "reasoning_levels": [
-        "low",
-        "medium",
-        "high"
-      ],
-      "default_reasoning_effort": "medium",
       "supports_attachments": true,
       "options": {}
     },