fix: use system not developer role in db (#6098)
This commit is contained in:
@@ -534,12 +534,7 @@ pub fn create_request(
|
|||||||
};
|
};
|
||||||
|
|
||||||
let system_message = DatabricksMessage {
|
let system_message = DatabricksMessage {
|
||||||
role: if is_openai_reasoning_model {
|
role: "system".to_string(),
|
||||||
"developer"
|
|
||||||
} else {
|
|
||||||
"system"
|
|
||||||
}
|
|
||||||
.to_string(),
|
|
||||||
content: system.into(),
|
content: system.into(),
|
||||||
tool_calls: None,
|
tool_calls: None,
|
||||||
tool_call_id: None,
|
tool_call_id: None,
|
||||||
@@ -1023,41 +1018,7 @@ mod tests {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_create_request_o1_default() -> anyhow::Result<()> {
|
fn test_create_request_reasoning_effort() -> anyhow::Result<()> {
|
||||||
// Test default medium reasoning effort for O1 model
|
|
||||||
let model_config = ModelConfig {
|
|
||||||
model_name: "o1".to_string(),
|
|
||||||
context_limit: Some(4096),
|
|
||||||
temperature: None,
|
|
||||||
max_tokens: Some(1024),
|
|
||||||
toolshim: false,
|
|
||||||
toolshim_model: None,
|
|
||||||
fast_model: None,
|
|
||||||
};
|
|
||||||
let request = create_request(&model_config, "system", &[], &[], &ImageFormat::OpenAi)?;
|
|
||||||
let obj = request.as_object().unwrap();
|
|
||||||
let expected = json!({
|
|
||||||
"model": "o1",
|
|
||||||
"messages": [
|
|
||||||
{
|
|
||||||
"role": "developer",
|
|
||||||
"content": "system"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"reasoning_effort": "medium",
|
|
||||||
"max_completion_tokens": 1024
|
|
||||||
});
|
|
||||||
|
|
||||||
for (key, value) in expected.as_object().unwrap() {
|
|
||||||
assert_eq!(obj.get(key).unwrap(), value);
|
|
||||||
}
|
|
||||||
|
|
||||||
Ok(())
|
|
||||||
}
|
|
||||||
|
|
||||||
#[test]
|
|
||||||
fn test_create_request_o3_custom_reasoning_effort() -> anyhow::Result<()> {
|
|
||||||
// Test custom reasoning effort for O3 model
|
|
||||||
let model_config = ModelConfig {
|
let model_config = ModelConfig {
|
||||||
model_name: "o3-mini-high".to_string(),
|
model_name: "o3-mini-high".to_string(),
|
||||||
context_limit: Some(4096),
|
context_limit: Some(4096),
|
||||||
@@ -1068,23 +1029,7 @@ mod tests {
|
|||||||
fast_model: None,
|
fast_model: None,
|
||||||
};
|
};
|
||||||
let request = create_request(&model_config, "system", &[], &[], &ImageFormat::OpenAi)?;
|
let request = create_request(&model_config, "system", &[], &[], &ImageFormat::OpenAi)?;
|
||||||
let obj = request.as_object().unwrap();
|
assert_eq!(request["reasoning_effort"], "high");
|
||||||
let expected = json!({
|
|
||||||
"model": "o3-mini",
|
|
||||||
"messages": [
|
|
||||||
{
|
|
||||||
"role": "developer",
|
|
||||||
"content": "system"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"reasoning_effort": "high",
|
|
||||||
"max_completion_tokens": 1024
|
|
||||||
});
|
|
||||||
|
|
||||||
for (key, value) in expected.as_object().unwrap() {
|
|
||||||
assert_eq!(obj.get(key).unwrap(), value);
|
|
||||||
}
|
|
||||||
|
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user