fix(bedrock): normalize aws-bedrock alias and harden docs/tests
This commit is contained in:
parent
0e4e0d590d
commit
a0098de28c
3 changed files with 39 additions and 3 deletions
|
|
@ -505,6 +505,7 @@ fn canonical_provider_name(provider_name: &str) -> &str {
|
|||
"google" | "google-gemini" => "gemini",
|
||||
"kimi_coding" | "kimi_for_coding" => "kimi-code",
|
||||
"nvidia-nim" | "build.nvidia.com" => "nvidia",
|
||||
"aws-bedrock" => "bedrock",
|
||||
_ => provider_name,
|
||||
}
|
||||
}
|
||||
|
|
@ -547,7 +548,7 @@ fn default_model_for_provider(provider: &str) -> String {
|
|||
"ollama" => "llama3.2".into(),
|
||||
"gemini" => "gemini-2.5-pro".into(),
|
||||
"kimi-code" => "kimi-for-coding".into(),
|
||||
"bedrock" | "aws-bedrock" => "anthropic.claude-sonnet-4-5-20250929-v1:0".into(),
|
||||
"bedrock" => "anthropic.claude-sonnet-4-5-20250929-v1:0".into(),
|
||||
"nvidia" => "meta/llama-3.3-70b-instruct".into(),
|
||||
"astrai" => "anthropic/claude-sonnet-4.6".into(),
|
||||
_ => "anthropic/claude-sonnet-4.6".into(),
|
||||
|
|
@ -5047,6 +5048,10 @@ mod tests {
|
|||
assert_eq!(default_model_for_provider("gemini"), "gemini-2.5-pro");
|
||||
assert_eq!(default_model_for_provider("google"), "gemini-2.5-pro");
|
||||
assert_eq!(default_model_for_provider("kimi-code"), "kimi-for-coding");
|
||||
assert_eq!(
|
||||
default_model_for_provider("bedrock"),
|
||||
"anthropic.claude-sonnet-4-5-20250929-v1:0"
|
||||
);
|
||||
assert_eq!(
|
||||
default_model_for_provider("google-gemini"),
|
||||
"gemini-2.5-pro"
|
||||
|
|
@ -5081,6 +5086,7 @@ mod tests {
|
|||
assert_eq!(canonical_provider_name("zai-cn"), "zai");
|
||||
assert_eq!(canonical_provider_name("z.ai-global"), "zai");
|
||||
assert_eq!(canonical_provider_name("nvidia-nim"), "nvidia");
|
||||
assert_eq!(canonical_provider_name("aws-bedrock"), "bedrock");
|
||||
assert_eq!(canonical_provider_name("build.nvidia.com"), "nvidia");
|
||||
}
|
||||
|
||||
|
|
@ -5130,6 +5136,19 @@ mod tests {
|
|||
assert!(ids.contains(&"anthropic/claude-sonnet-4.6".to_string()));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn curated_models_for_bedrock_include_verified_model_ids() {
|
||||
let ids: Vec<String> = curated_models_for_provider("bedrock")
|
||||
.into_iter()
|
||||
.map(|(id, _)| id)
|
||||
.collect();
|
||||
|
||||
assert!(ids.contains(&"anthropic.claude-sonnet-4-6".to_string()));
|
||||
assert!(ids.contains(&"anthropic.claude-opus-4-6-v1".to_string()));
|
||||
assert!(ids.contains(&"anthropic.claude-haiku-4-5-20251001-v1:0".to_string()));
|
||||
assert!(ids.contains(&"anthropic.claude-sonnet-4-5-20250929-v1:0".to_string()));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn curated_models_for_moonshot_drop_deprecated_aliases() {
|
||||
let ids: Vec<String> = curated_models_for_provider("moonshot")
|
||||
|
|
@ -5229,6 +5248,10 @@ mod tests {
|
|||
curated_models_for_provider("nvidia"),
|
||||
curated_models_for_provider("build.nvidia.com")
|
||||
);
|
||||
assert_eq!(
|
||||
curated_models_for_provider("bedrock"),
|
||||
curated_models_for_provider("aws-bedrock")
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
|
|
|||
|
|
@ -1219,6 +1219,19 @@ mod tests {
|
|||
assert!(resolved.is_none());
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn resolve_provider_credential_bedrock_uses_internal_credential_path() {
|
||||
let _generic_guard = EnvGuard::set("API_KEY", Some("generic-key"));
|
||||
let _override_guard = EnvGuard::set("OPENROUTER_API_KEY", Some("openrouter-key"));
|
||||
|
||||
assert_eq!(
|
||||
resolve_provider_credential("bedrock", Some("explicit")),
|
||||
Some("explicit".to_string())
|
||||
);
|
||||
assert!(resolve_provider_credential("bedrock", None).is_none());
|
||||
assert!(resolve_provider_credential("aws-bedrock", None).is_none());
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn regional_alias_predicates_cover_expected_variants() {
|
||||
assert!(is_moonshot_alias("moonshot"));
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue