(identifier: str, *, default_provider: str = "openai")
| 47 | |
| 48 | |
| 49 | def resolve_model(identifier: str, *, default_provider: str = "openai") -> ModelSpec: |
| 50 | raw_identifier = identifier.strip() |
| 51 | if not raw_identifier: |
| 52 | raise ValueError("Model identifier cannot be empty.") |
| 53 | |
| 54 | provider_candidate, separator, model_name = raw_identifier.partition(":") |
| 55 | if separator and provider_candidate.strip().lower() in SUPPORTED_PROVIDERS: |
| 56 | return build_model_spec(model_name, provider=provider_candidate) |
| 57 | |
| 58 | return build_model_spec(raw_identifier, provider=default_provider) |
no test coverage detected