Skip to content

Commit 93a90a3

Browse files
authored
Merge pull request #3 from audacity/fix_music_generator
Use the correct loading path for openvino tokenizers
2 parents 4038292 + 5791085 commit 93a90a3

File tree

1 file changed

+72
-3
lines changed

1 file changed

+72
-3
lines changed
Lines changed: 72 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
1-
--- mod-openvino/musicgen/music_gen_decoder_cl.cpp.orig 2025-04-24 14:58:41.839354735 +0300
2-
+++ mod-openvino/musicgen/music_gen_decoder_cl.cpp 2025-04-24 15:00:48.024587074 +0300
3-
@@ -521,7 +521,7 @@
1+
diff --git a/mod-openvino/musicgen/music_gen_decoder_cl.cpp b/mod-openvino/musicgen/music_gen_decoder_cl.cpp
2+
index 62c0858..82efd7f 100644
3+
--- a/mod-openvino/musicgen/music_gen_decoder_cl.cpp
4+
+++ b/mod-openvino/musicgen/music_gen_decoder_cl.cpp
5+
@@ -521,7 +521,7 @@ namespace ov_musicgen
46
{
57
//slice the new key values into the existing past_key_vals buffer using OpenCL.
68
std::array<size_t, 3> srcOrigin = { 0, 0, 0 }; // Start at the beginning of the source buffer
@@ -9,3 +11,70 @@
911

1012
// Size of one element
1113
std::array<size_t, 3> region = { sizeof(ov::float16) * past_key_values_shape[3], 1, past_key_values_shape[0] * past_key_values_shape[1] };
14+
diff --git a/mod-openvino/musicgen/musicgen.cpp b/mod-openvino/musicgen/musicgen.cpp
15+
index 736ec15..df4b4ad 100644
16+
--- a/mod-openvino/musicgen/musicgen.cpp
17+
+++ b/mod-openvino/musicgen/musicgen.cpp
18+
@@ -4,6 +4,24 @@
19+
#include <ittutils.h>
20+
#include "musicgen_for_conditional_generation.h"
21+
22+
+#ifdef __APPLE__
23+
+
24+
+#include <dlfcn.h>
25+
+
26+
+static void* getModuleSymbol() {
27+
+ return reinterpret_cast<void*>(&getModuleSymbol);
28+
+}
29+
+
30+
+static std::string getModulePath() {
31+
+ using namespace std::filesystem;
32+
+
33+
+ Dl_info info;
34+
+ dladdr(reinterpret_cast<void*>(getModuleSymbol()), &info);
35+
+ return path(info.dli_fname).parent_path();
36+
+}
37+
+
38+
+#endif
39+
+
40+
namespace ov_musicgen
41+
{
42+
struct MusicGen::Impl
43+
@@ -14,20 +32,24 @@ namespace ov_musicgen
44+
45+
ov::Core core;
46+
47+
-#if OPENVINO_VERSION_MAJOR>=2024
48+
-#ifdef WIN32
49+
- core.add_extension("openvino_tokenizers.dll");
50+
-#else
51+
- core.add_extension("libopenvino_tokenizers.so");
52+
-#endif
53+
-#elif (OPENVINO_VERSION_MAJOR==2023)&&(OPENVINO_VERSION_MINOR==3)
54+
-#ifdef WIN32
55+
- core.add_extension("user_ov_extensions.dll");
56+
-#else
57+
- core.add_extension("libuser_ov_extensions.so");
58+
-#endif
59+
+#if OPENVINO_VERSION_MAJOR >= 2024
60+
+ #ifdef _WIN32
61+
+ core.add_extension("openvino_tokenizers.dll");
62+
+ #elif defined(__APPLE__)
63+
+ core.add_extension(getModulePath() + "/libs/libopenvino_tokenizers.dylib");
64+
+ #else
65+
+ core.add_extension("libopenvino_tokenizers.so");
66+
+ #endif
67+
+#elif (OPENVINO_VERSION_MAJOR == 2023) && (OPENVINO_VERSION_MINOR == 3)
68+
+ #ifdef _WIN32
69+
+ core.add_extension("user_ov_extensions.dll");
70+
+ #elif defined(__APPLE__)
71+
+ core.add_extension(getModulePath() + "/libs/user_ov_extensions.dylib");
72+
+ #else
73+
+ core.add_extension("libuser_ov_extensions.so");
74+
+ #endif
75+
#else
76+
-#error OpenVINO 2023.3.0 or later is required.
77+
+ #error OpenVINO 2023.3.0 or later is required.
78+
#endif
79+
80+
auto tokenizer_model_path = FullPath(config.model_folder, "musicgen-small-tokenizer.xml");

0 commit comments

Comments
 (0)