|
18 | 18 |
|
19 | 19 | import java.io.IOException; |
20 | 20 | import java.io.InputStream; |
| 21 | +import java.nio.file.FileSystems; |
21 | 22 | import java.nio.file.FileVisitResult; |
22 | 23 | import java.nio.file.Files; |
23 | 24 | import java.nio.file.Path; |
24 | 25 | import java.nio.file.SimpleFileVisitor; |
25 | 26 | import java.nio.file.attribute.BasicFileAttributes; |
| 27 | +import java.nio.file.attribute.PosixFilePermission; |
| 28 | +import java.nio.file.attribute.PosixFilePermissions; |
| 29 | +import java.util.EnumSet; |
26 | 30 |
|
27 | 31 | import ai.djl.inference.Predictor; |
28 | 32 | import ai.djl.modality.Input; |
@@ -57,7 +61,14 @@ protected AbstractTaskPredictor() { |
57 | 61 |
|
58 | 62 | @Override |
59 | 63 | public void loadModel() throws Exception { |
60 | | - tmpDir = Files.createTempDirectory("hf_model"); |
| 64 | + if (FileSystems.getDefault().supportedFileAttributeViews().contains("posix")) { |
| 65 | + tmpDir = Files.createTempDirectory("hf_model", |
| 66 | + PosixFilePermissions.asFileAttribute( |
| 67 | + EnumSet.of(PosixFilePermission.OWNER_READ, PosixFilePermission.OWNER_WRITE, |
| 68 | + PosixFilePermission.OWNER_EXECUTE))); |
| 69 | + } else { |
| 70 | + tmpDir = Files.createTempDirectory("hf_model"); |
| 71 | + } |
61 | 72 | Path handlerPath = tmpDir.resolve("handler.py"); |
62 | 73 | String pythonScript = getPythonScript(); |
63 | 74 | Files.writeString(handlerPath, pythonScript); |
|
0 commit comments