chore: initialize template autoresearch segment

This commit is contained in:
Evandro Fonseca Junior committed 2026-03-26 18:14:03 -03:00
1 parent 43e2fb01f2
commit b3001f6234
7 files changed
+266 -61

No files matched your search

+98
View File
@@ -718,4 +718,102 @@ mod tests {
Some("Use references and lifetimes.")
);
}
#[test]
#[ignore = "autoresearch benchmark"]
fn dynamic_template_qwen_family_uses_im_tokens() {
let config = ServerConfig {
model_catalog: ModelCatalog::new("Qwen2.5-Coder-7B-Instruct".to_owned(), vec![]),
..base_config()
};
let request = parse_request(
r#"{
"model": "Qwen2.5-Coder-7B-Instruct",
"messages": [{"role":"user","content":"hello"}]
}"#,
);
let prepared = prepare_prompt(&request, &config);
assert!(prepared.prompt.contains("<|im_start|>"));
assert!(prepared.prompt.contains("<|im_end|>"));
}
#[test]
#[ignore = "autoresearch benchmark"]
fn dynamic_template_gemma_family_uses_turn_tokens() {
let config = ServerConfig {
model_catalog: ModelCatalog::new("gemma-2-9b-it".to_owned(), vec![]),
..base_config()
};
let request = parse_request(
r#"{
"model": "gemma-2-9b-it",
"messages": [{"role":"user","content":"hello"}]
}"#,
);
let prepared = prepare_prompt(&request, &config);
assert!(prepared.prompt.contains("<start_of_turn>user"));
assert!(prepared.prompt.contains("<start_of_turn>model"));
}
#[test]
#[ignore = "autoresearch benchmark"]
fn dynamic_template_llama_family_uses_inst_blocks() {
let config = ServerConfig {
model_catalog: ModelCatalog::new("Meta-Llama-3-8B-Instruct".to_owned(), vec![]),
..base_config()
};
let request = parse_request(
r#"{
"model": "Meta-Llama-3-8B-Instruct",
"messages": [{"role":"user","content":"hello"}]
}"#,
);
let prepared = prepare_prompt(&request, &config);
assert!(prepared.prompt.contains("[INST]"));
assert!(prepared.prompt.contains("[/INST]"));
}
#[test]
#[ignore = "autoresearch benchmark"]
fn dynamic_template_kimi_family_uses_moonshot_markers() {
let config = ServerConfig {
model_catalog: ModelCatalog::new("Kimi-K2-Instruct".to_owned(), vec![]),
..base_config()
};
let request = parse_request(
r#"{
"model": "Kimi-K2-Instruct",
"messages": [{"role":"user","content":"hello"}]
}"#,
);
let prepared = prepare_prompt(&request, &config);
assert!(prepared.prompt.contains("<|im_user|>"));
assert!(prepared.prompt.contains("<|im_assistant|>"));
}
#[test]
#[ignore = "autoresearch benchmark"]
fn dynamic_template_unknown_models_keep_generic_fallback() {
let config = ServerConfig {
model_catalog: ModelCatalog::new("my-custom-model".to_owned(), vec![]),
..base_config()
};
let request = parse_request(
r#"{
"model": "my-custom-model",
"messages": [{"role":"user","content":"hello"}]
}"#,
);
let prepared = prepare_prompt(&request, &config);
assert!(prepared
.prompt
.contains("System: Default coding system prompt"));
assert!(prepared.prompt.contains("User: hello"));
assert!(prepared.prompt.ends_with("Assistant:"));
}
}