@@ -69,7 +69,8 @@ Napi::Value CoreWrap::read_model_sync(const Napi::CallbackInfo& info) {
6969 std::shared_ptr<ov::Model> model;
7070
7171 if (ov::js::validate<Napi::String, Napi::String>(info, allowed_signatures)) {
72- model = _core.read_model (info[0 ].ToString (), info[1 ].ToString ());
72+ model =
73+ _core.read_model (js_to_cpp<std::filesystem::path>(info, 0 ), js_to_cpp<std::filesystem::path>(info, 1 ));
7374 } else if (ov::js::validate<Napi::Buffer<uint8_t >, Napi::Buffer<uint8_t >>(info, allowed_signatures)) {
7475 std::string model_str = buffer_to_string (info[0 ]);
7576
@@ -87,7 +88,7 @@ Napi::Value CoreWrap::read_model_sync(const Napi::CallbackInfo& info) {
8788
8889 model = _core.read_model (model_str, weight_tensor);
8990 } else if (ov::js::validate<Napi::String>(info, allowed_signatures)) {
90- model = _core.read_model (info[ 0 ]. ToString ( ));
91+ model = _core.read_model (js_to_cpp<std::filesystem::path>( info, 0 ));
9192 } else if (ov::js::validate<Napi::String, TensorWrap>(info, allowed_signatures)) {
9293 model = _core.read_model (info[0 ].ToString (), cast_to_tensor (info, 1 ));
9394 } else {
@@ -131,13 +132,6 @@ Napi::Value CoreWrap::compile_model_sync(const Napi::CallbackInfo& info,
131132 }
132133}
133134
134- Napi::Value CoreWrap::compile_model_sync (const Napi::CallbackInfo& info,
135- const Napi::String& model_path,
136- const Napi::String& device) {
137- const auto & compiled_model = _core.compile_model (model_path, device);
138- return CompiledModelWrap::wrap (info.Env (), compiled_model);
139- }
140-
141135Napi::Value CoreWrap::compile_model_sync (const Napi::CallbackInfo& info,
142136 const Napi::Object& model_obj,
143137 const Napi::String& device,
@@ -147,26 +141,22 @@ Napi::Value CoreWrap::compile_model_sync(const Napi::CallbackInfo& info,
147141 return CompiledModelWrap::wrap (info.Env (), compiled_model);
148142}
149143
150- Napi::Value CoreWrap::compile_model_sync (const Napi::CallbackInfo& info,
151- const Napi::String& model_path,
152- const Napi::String& device,
153- const std::map<std::string, ov::Any>& config) {
154- const auto & compiled_model = _core.compile_model (model_path, device, config);
155- return CompiledModelWrap::wrap (info.Env (), compiled_model);
156- }
157-
158144Napi::Value CoreWrap::compile_model_sync_dispatch (const Napi::CallbackInfo& info) {
159145 std::vector<std::string> allowed_signatures;
160146
161147 try {
162148 if (ov::js::validate<Napi::String, Napi::String>(info, allowed_signatures)) {
163- return compile_model_sync (info, info[0 ].ToString (), info[1 ].ToString ());
149+ const auto & compiled_model =
150+ _core.compile_model (js_to_cpp<std::filesystem::path>(info, 0 ), info[1 ].ToString ());
151+ return CompiledModelWrap::wrap (info.Env (), compiled_model);
164152 } else if (ov::js::validate<ModelWrap, Napi::String>(info, allowed_signatures)) {
165153 return compile_model_sync (info, info[0 ].ToObject (), info[1 ].ToString ());
166154 } else if (ov::js::validate<Napi::String, Napi::String, Napi::Object>(info, allowed_signatures)) {
167155 const auto & config = js_to_cpp<std::map<std::string, ov::Any>>(info, 2 );
168156
169- return compile_model_sync (info, info[0 ].ToString (), info[1 ].ToString (), config);
157+ const auto & compiled_model =
158+ _core.compile_model (js_to_cpp<std::filesystem::path>(info, 0 ), info[1 ].ToString (), config);
159+ return CompiledModelWrap::wrap (info.Env (), compiled_model);
170160 } else if (ov::js::validate<ModelWrap, Napi::String, Napi::Object>(info, allowed_signatures)) {
171161 const auto & config = js_to_cpp<std::map<std::string, ov::Any>>(info, 2 );
172162
@@ -244,7 +234,7 @@ Napi::Value CoreWrap::compile_model_async(const Napi::CallbackInfo& info) {
244234 return context_data->deferred .Promise ();
245235 } else if (info[0 ].IsString () && info[1 ].IsString ()) {
246236 auto context_data = new TsfnContextPath (env);
247- context_data->_model = info[ 0 ]. ToString ( );
237+ context_data->_model = js_to_cpp<std::filesystem::path>( info, 0 );
248238 context_data->_device = info[1 ].ToString ();
249239
250240 if (info.Length () == 3 ) {
@@ -473,8 +463,7 @@ void CoreWrap::add_extension(const Napi::CallbackInfo& info) {
473463 if (!info[0 ].IsString ())
474464 OPENVINO_THROW (" addExtension method applies one argument of string type" );
475465
476- std::string library_path = info[0 ].ToString ();
477- _core.add_extension (library_path);
466+ _core.add_extension (js_to_cpp<std::filesystem::path>(info, 0 ));
478467 } catch (std::runtime_error& err) {
479468 reportError (info.Env (), err.what ());
480469 }
0 commit comments