TensorFlow एक जावा एपीआई प्रदान करता है - पायथन के साथ बनाए गए लोडिंग मॉडल के लिए उपयोगी है और उन्हें एक जावा एप्लिकेशन के भीतर चला रहा है।
रात Libtensorflow जावा संकुल
Libtensorflow JNI पैकेज रात में बनाए जाते हैं और सभी समर्थित प्लेटफार्मों के लिए GCS में अपलोड किए जाते हैं। वे libtensorflow-nightly जीसीएस बाल्टी में अपलोड किए जाते हैं और ऑपरेटिंग सिस्टम और निर्मित दिनांक द्वारा अनुक्रमित होते हैं।
समर्थित प्लेटफार्म
जावा के लिए TensorFlow निम्नलिखित प्रणालियों पर समर्थित है:
- उबंटू 16.04 या उच्चतर; 64-बिट, x86
- macOS 10.12.6 (सिएरा) या उच्चतर
- विंडोज 7 या उच्चतर; 64-बिट, x86
Android पर TensorFlow का उपयोग करने के लिए TensorFlow Lite देखें
Apache Maven के साथ TensorFlow
Apache Maven के साथ TensorFlow का उपयोग करने के लिए, प्रोजेक्ट की pom.xml
फ़ाइल पर निर्भरता जोड़ें:
<dependency>
<groupId>org.tensorflow</groupId>
<artifactId>tensorflow</artifactId>
<version>2.4.0</version>
</dependency>
GPU समर्थन
यदि आपके सिस्टम में GPU का समर्थन है , तो प्रोजेक्ट की pom.xml
फ़ाइल में निम्न TensorFlow निर्भरताएं जोड़ें:
<dependency>
<groupId>org.tensorflow</groupId>
<artifactId>libtensorflow</artifactId>
<version>2.4.0</version>
</dependency>
<dependency>
<groupId>org.tensorflow</groupId>
<artifactId>libtensorflow_jni_gpu</artifactId>
<version>2.4.0</version>
</dependency>
उदाहरण कार्यक्रम
यह उदाहरण बताता है कि TensorFlow के साथ Apache Maven प्रोजेक्ट कैसे बनाया जाता है। सबसे पहले, प्रोजेक्ट की pom.xml
फ़ाइल में TensorFlow निर्भरता जोड़ें:
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>org.myorg</groupId>
<artifactId>hellotensorflow</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<exec.mainClass>HelloTensorFlow</exec.mainClass>
<!-- The sample code requires at least JDK 1.7. -->
<!-- The maven compiler plugin defaults to a lower version -->
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>org.tensorflow</groupId>
<artifactId>tensorflow</artifactId>
<version>1.14.0</version>
</dependency>
</dependencies>
</project>
स्रोत फ़ाइल बनाएँ ( src/main/java/HelloTensorFlow.java
):
import org.tensorflow.Graph;
import org.tensorflow.Session;
import org.tensorflow.Tensor;
import org.tensorflow.TensorFlow;
public class HelloTensorFlow {
public static void main(String[] args) throws Exception {
try (Graph g = new Graph()) {
final String value = "Hello from " + TensorFlow.version();
// Construct the computation graph with a single operation, a constant
// named "MyConst" with a value "value".
try (Tensor t = Tensor.create(value.getBytes("UTF-8"))) {
// The Java API doesn't yet include convenience functions for adding operations.
g.opBuilder("Const", "MyConst").setAttr("dtype", t.dataType()).setAttr("value", t).build();
}
// Execute the "MyConst" operation in a Session.
try (Session s = new Session(g);
// Generally, there may be multiple output tensors,
// all of them must be closed to prevent resource leaks.
Tensor output = s.runner().fetch("MyConst").run().get(0)) {
System.out.println(new String(output.bytesValue(), "UTF-8"));
}
}
}
}
संकलित करें और निष्पादित करें:
mvn -q compile exec:java # Use -q to hide logging
कमांड आउटपुट: Hello from version
JDK के साथ TensorFlow
TensorFlow का उपयोग जावा मूल इंटरफ़ेस (JNI) के माध्यम से JDK के साथ किया जा सकता है।
डाउनलोड
- TensorFlow जार आर्काइव (JAR) डाउनलोड करें: libtensorflow.jar
- अपने ऑपरेटिंग सिस्टम और प्रोसेसर समर्थन के लिए जावा नेटिव इंटरफ़ेस (JNI) फ़ाइल डाउनलोड और निकालें:
जेएनआई संस्करण | यूआरएल |
---|---|
लिनक्स | |
केवल लिनक्स सीपीयू | https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow_jni-cpu-linux-x86_64-2.4.0.tar.gz |
लिनक्स GPU सपोर्ट | https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow_jni-gpu-linux-x86_64-2.4.0.tar.gz |
मैक ओ एस | |
macOS CPU केवल | https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow_jni-cpu-darwin-x86_64-2.4.0.tar.gz |
खिड़कियाँ | |
केवल विंडोज सीपीयू | https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow_jni-cpu-windows-x86_64-2.4.0.zip |
Windows GPU समर्थन | https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow_jni-gpu-windows-x86_64-2.4.0.zip |
संकलन
पिछले उदाहरण से HelloTensorFlow.java
फ़ाइल का उपयोग करके, HelloTensorFlow.java
का उपयोग करने वाले प्रोग्राम को संकलित करें। सुनिश्चित करें कि libtensorflow.jar
अपने लिए सुलभ है classpath
:
javac -cp libtensorflow-2.4.0.jar HelloTensorFlow.java
Daud
TensorFlow Java प्रोग्राम को निष्पादित करने के लिए, JVM को libtensorflow.jar
और एक्सट्रैक्टेड libtensorflow.jar
लाइब्रेरी का उपयोग करना चाहिए।
लिनक्स / macOS
java -cp libtensorflow-2.4.0.jar:. -Djava.library.path=./jni HelloTensorFlow
खिड़कियाँ
java -cp libtensorflow-2.4.0.jar;. -Djava.library.path=jni HelloTensorFlow
कमांड आउटपुट: Hello from version
स्रोत से बनाएँ
TensorFlow खुला स्रोत है। स्रोत कोड से TensorFlow के जावा और देशी पुस्तकालयों के निर्माण के निर्देशों को पढ़ें।