| 170 | return model; |
| 171 | } |
| 172 | |
| 173 | std::unique_ptr<ILoadedVoiceModel> ModelRegistry::load(const std::filesystem::path & model_path) const { |
| 174 | ModelLoadRequest request; |
| 175 | request.model_path = model_path; |
| 176 | return load(request); |
| 177 | } |
| 178 | |
| 179 | void ModelRegistry::validate_request(const ModelLoadRequest & request) const { |
| 180 | if (!engine::io::is_existing_file(request.model_path) && !engine::io::is_existing_directory(request.model_path)) { |
| 181 | throw std::runtime_error("model path does not exist: " + request.model_path.string()); |
| 182 | } |
| 183 | if (request.family_hint.has_value() && !supports_family(*request.family_hint)) { |
| 184 | throw std::runtime_error("unsupported model family hint: " + *request.family_hint); |
no test coverage detected