Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
159 changes: 159 additions & 0 deletions o/opensearch-project-ml-commons/ml-commons_3.3.0.0.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,159 @@
diff --git a/common/build.gradle b/common/build.gradle
index 67ce8dbe6..da6e59b0a 100644
--- a/common/build.gradle
+++ b/common/build.gradle
@@ -25,7 +25,7 @@ dependencies {
compileOnly group: 'org.opensearch', name:'opensearch-security-spi', version:"${opensearch_build}"

compileOnly group: 'org.apache.commons', name: 'commons-text', version: '1.14.0'
- compileOnly group: 'com.google.code.gson', name: 'gson', version: "${versions.gson}"
+ compileOnly group: 'com.google.code.gson', name: 'gson', version: '2.13.1'
compileOnly group: 'org.json', name: 'json', version: '20231013'
testImplementation group: 'org.json', name: 'json', version: '20231013'
implementation('com.google.guava:guava:32.1.3-jre') {
diff --git a/memory/build.gradle b/memory/build.gradle
index 8343db856..59d2993e7 100644
--- a/memory/build.gradle
+++ b/memory/build.gradle
@@ -37,7 +37,7 @@ dependencies {
testImplementation group: 'org.mockito', name: 'mockito-core', version: '5.15.2'
testImplementation "org.opensearch.test:framework:${opensearch_version}"
testImplementation "org.opensearch.client:opensearch-rest-client:${opensearch_version}"
- testImplementation group: 'com.google.code.gson', name: 'gson', version: "${versions.gson}"
+ testImplementation group: 'com.google.code.gson', name: 'gson', version: '2.13.1'
testImplementation group: 'org.json', name: 'json', version: '20231013'
testImplementation("com.fasterxml.jackson.core:jackson-annotations:${versions.jackson}")
testImplementation("com.fasterxml.jackson.core:jackson-databind:${versions.jackson_databind}")
diff --git a/ml-algorithms/build.gradle b/ml-algorithms/build.gradle
index 8d06f8b1c..9bdf92a26 100644
--- a/ml-algorithms/build.gradle
+++ b/ml-algorithms/build.gradle
@@ -13,6 +13,7 @@ plugins {
}

repositories {
+ mavenLocal()
mavenCentral()
}

@@ -43,8 +44,11 @@ dependencies {
implementation (group: 'com.google.guava', name: 'guava', version: '32.1.3-jre') {
exclude group: 'com.google.errorprone', module: 'error_prone_annotations'
}
- implementation group: 'com.google.code.gson', name: 'gson', version: "${versions.gson}"
- implementation platform("ai.djl:bom:0.31.1")
+ implementation group: 'com.google.code.gson', name: 'gson', version: "2.13.1"
+ implementation platform("ai.djl:bom:0.33.0")
+ implementation platform("ai.djl:bom:0.33.0") {
+ exclude group: "com.microsoft.onnxruntime", module: "onnxruntime"
+ }
implementation group: 'ai.djl.pytorch', name: 'pytorch-model-zoo'
implementation group: 'ai.djl', name: 'api'
implementation group: 'ai.djl.huggingface', name: 'tokenizers'
@@ -60,11 +64,11 @@ dependencies {
//arm/macos doesn't support GPU
if (os.macOsX || System.getProperty("os.arch") == "aarch64") {
dependencies {
- implementation "com.microsoft.onnxruntime:onnxruntime:1.16.3!!"
+ implementation "com.microsoft.onnxruntime:onnxruntime:1.17.1!!"
}
} else {
dependencies {
- implementation "com.microsoft.onnxruntime:onnxruntime_gpu:1.16.3!!"
+ implementation "com.microsoft.onnxruntime:onnxruntime:1.17.1!!"
}
}

@@ -101,6 +105,11 @@ lombok {
version = "1.18.38"
}

+tasks.withType(Test).configureEach {
+ environment "LD_LIBRARY_PATH", System.getProperty("org.opensearch.djl.pytorch.path")
+ environment "DJL_CACHE_DIR", System.getProperty("org.opensearch.djl.pytorch.path")
+}
+
configurations.all {
resolutionStrategy.force 'com.google.protobuf:protobuf-java:3.25.5'
resolutionStrategy.force 'org.apache.commons:commons-compress:1.26.0'
@@ -141,3 +150,4 @@ jacocoTestCoverageVerification {
}
check.dependsOn jacocoTestCoverageVerification
compileJava.dependsOn(':opensearch-ml-common:shadowJar')
+
diff --git a/ml-algorithms/src/main/java/org/opensearch/ml/engine/algorithms/DLModel.java b/ml-algorithms/src/main/java/org/opensearch/ml/engine/algorithms/DLModel.java
index 0aa755bd6..671dd415f 100644
--- a/ml-algorithms/src/main/java/org/opensearch/ml/engine/algorithms/DLModel.java
+++ b/ml-algorithms/src/main/java/org/opensearch/ml/engine/algorithms/DLModel.java
@@ -252,9 +252,10 @@ public abstract class DLModel implements Predictable {
AccessController.doPrivileged((PrivilegedExceptionAction<Void>) () -> {
ClassLoader contextClassLoader = Thread.currentThread().getContextClassLoader();
try {
- System.setProperty("PYTORCH_PRECXX11", "true");
- System.setProperty("PYTORCH_VERSION", "2.5.1");
+ System.setProperty("PYTORCH_PRECXX11", "false");
+ System.setProperty("PYTORCH_VERSION", "1.13.1");
System.setProperty("DJL_CACHE_DIR", mlEngine.getMlCachePath().toAbsolutePath().toString());
+ System.setProperty("ENGINE_CACHE_DIR", System.getProperty("user.home") + File.separator + ".djl.ai");
// DJL will read "/usr/java/packages/lib" if don't set "java.library.path". That will throw
// access denied exception
System.setProperty("java.library.path", mlEngine.getMlCachePath().toAbsolutePath().toString());
diff --git a/ml-algorithms/src/main/java/org/opensearch/ml/engine/algorithms/DLModelExecute.java b/ml-algorithms/src/main/java/org/opensearch/ml/engine/algorithms/DLModelExecute.java
index 7d80fe8ba..a838a36f7 100644
--- a/ml-algorithms/src/main/java/org/opensearch/ml/engine/algorithms/DLModelExecute.java
+++ b/ml-algorithms/src/main/java/org/opensearch/ml/engine/algorithms/DLModelExecute.java
@@ -130,9 +130,10 @@ public abstract class DLModelExecute implements MLExecutable {
AccessController.doPrivileged((PrivilegedExceptionAction<Void>) () -> {
ClassLoader contextClassLoader = Thread.currentThread().getContextClassLoader();
try {
- System.setProperty("PYTORCH_PRECXX11", "true");
- System.setProperty("PYTORCH_VERSION", "2.5.1");
+ System.setProperty("PYTORCH_PRECXX11", "false");
+ System.setProperty("PYTORCH_VERSION", "1.13.1");
System.setProperty("DJL_CACHE_DIR", mlEngine.getMlCachePath().toAbsolutePath().toString());
+ System.setProperty("ENGINE_CACHE_DIR", System.getProperty("user.home") + File.separator + ".djl.ai");
// DJL will read "/usr/java/packages/lib" if don't set "java.library.path". That will throw
// access denied exception
System.setProperty("java.library.path", mlEngine.getMlCachePath().toAbsolutePath().toString());
diff --git a/plugin/build.gradle b/plugin/build.gradle
index 57138307b..0e6ee9432 100644
--- a/plugin/build.gradle
+++ b/plugin/build.gradle
@@ -118,7 +118,7 @@ dependencies {
implementation (group: 'com.google.guava', name: 'guava', version: '32.1.3-jre') {
exclude group: 'com.google.errorprone', module: 'error_prone_annotations'
}
- implementation group: 'com.google.code.gson', name: 'gson', version: "${versions.gson}"
+ implementation group: 'com.google.code.gson', name: 'gson', version: '2.13.1'
implementation group: 'org.apache.commons', name: 'commons-lang3', version: "${versions.commonslang}"
implementation group: 'org.apache.commons', name: 'commons-math3', version: '3.6.1'
implementation group: 'org.apache.commons', name: 'commons-text', version: '1.14.0'
diff --git a/plugin/src/main/plugin-metadata/plugin-security.policy b/plugin/src/main/plugin-metadata/plugin-security.policy
index 280c0faad..49822601e 100644
--- a/plugin/src/main/plugin-metadata/plugin-security.policy
+++ b/plugin/src/main/plugin-metadata/plugin-security.policy
@@ -18,9 +18,11 @@ grant {
permission java.lang.RuntimePermission "setContextClassLoader";
permission java.util.PropertyPermission "PYTORCH_PRECXX11", "read,write";
permission java.util.PropertyPermission "DJL_CACHE_DIR", "read,write";
+ permission java.util.PropertyPermission "ENGINE_CACHE_DIR", "read,write";
permission java.util.PropertyPermission "java.library.path", "read,write";
permission java.util.PropertyPermission "*", "read,write";
permission java.lang.RuntimePermission "shutdownHooks";
+ permission java.io.FilePermission "${user.home}/.djl.ai/-", "read,write";

// Circuit Breaker
permission java.lang.RuntimePermission "getFileSystemAttributes";
diff --git a/search-processors/build.gradle b/search-processors/build.gradle
index 79632002b..efaaa2afc 100644
--- a/search-processors/build.gradle
+++ b/search-processors/build.gradle
@@ -29,7 +29,7 @@ repositories {
dependencies {
implementation project(path: ":${rootProject.name}-common", configuration: 'shadow')
compileOnly group: 'org.opensearch', name: 'opensearch', version: "${opensearch_version}"
- compileOnly group: 'com.google.code.gson', name: 'gson', version: '2.13.2'
+ compileOnly group: 'com.google.code.gson', name: 'gson', version: '2.13.1'
implementation "org.apache.commons:commons-lang3:${versions.commonslang}"
implementation project(':opensearch-ml-memory')
implementation group: 'org.opensearch', name: 'common-utils', version: "${common_utils_version}"
Loading