diff --git a/crates/goose/src/providers/formats/databricks.rs b/crates/goose/src/providers/formats/databricks.rs index 6e463476..fad832a8 100644 --- a/crates/goose/src/providers/formats/databricks.rs +++ b/crates/goose/src/providers/formats/databricks.rs @@ -454,7 +454,8 @@ pub fn create_request( let model_name = model_config.model_name.to_string(); let is_o1 = model_name.starts_with("o1") || model_name.starts_with("goose-o1"); let is_o3 = model_name.starts_with("o3") || model_name.starts_with("goose-o3"); - let is_claude_3_7_sonnet = model_name.contains("claude-3-7-sonnet"); // can be goose- or databricks- + let is_claude_sonnet = + model_name.contains("claude-3-7-sonnet") || model_name.contains("claude-4-sonnet"); // can be goose- or databricks- // Only extract reasoning effort for O1/O3 models let (model_name, reasoning_effort) = if is_o1 || is_o3 { @@ -515,7 +516,7 @@ pub fn create_request( // Add thinking parameters for Claude 3.7 Sonnet model when requested let is_thinking_enabled = std::env::var("CLAUDE_THINKING_ENABLED").is_ok(); - if is_claude_3_7_sonnet && is_thinking_enabled { + if is_claude_sonnet && is_thinking_enabled { // Minimum budget_tokens is 1024 let budget_tokens = std::env::var("CLAUDE_THINKING_BUDGET") .unwrap_or_else(|_| "16000".to_string())