TensorFlow একটি জাভা এপিআই প্রদান করে — যা পাইথনে তৈরি মডেল লোড করতে এবং জাভা অ্যাপ্লিকেশনের মধ্যে সেগুলো চালাতে উপযোগী।
রাতের লিবটেনসরফ্লো জাভা প্যাকেজ
Libtensorflow JNI প্যাকেজগুলো প্রতি রাতে বিল্ড করা হয় এবং সকল সমর্থিত প্ল্যাটফর্মের জন্য GCS-এ আপলোড করা হয়। এগুলো libtensorflow-nightly GCS বাকেটে আপলোড করা হয় এবং অপারেটিং সিস্টেম ও বিল্ডের তারিখ অনুযায়ী সূচিবদ্ধ করা থাকে।
সমর্থিত প্ল্যাটফর্ম
TensorFlow for Java নিম্নলিখিত সিস্টেমগুলিতে সমর্থিত:
- উবুন্টু ১৬.০৪ বা উচ্চতর সংস্করণ; ৬৪-বিট, এক্স৮৬
- macOS 10.12.6 (Sierra) বা উচ্চতর সংস্করণ
- উইন্ডোজ ৭ বা উচ্চতর সংস্করণ; ৬৪-বিট, এক্স৮৬
অ্যান্ড্রয়েডে TensorFlow ব্যবহার করতে TensorFlow Lite দেখুন।
অ্যাপাচি মেভেনের সাথে টেনসরফ্লো
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
জাভা নেটিভ ইন্টারফেস (JNI)-এর মাধ্যমে JDK-এর সাথে TensorFlow ব্যবহার করা যায়।
ডাউনলোড করুন
- TensorFlow Jar আর্কাইভ (JAR) ডাউনলোড করুন: libtensorflow.jar
- আপনার অপারেটিং সিস্টেম এবং প্রসেসর সমর্থনের জন্য জাভা নেটিভ ইন্টারফেস (JNI) ফাইলটি ডাউনলোড এবং এক্সট্র্যাক্ট করুন:
| JNI সংস্করণ | ইউআরএল |
|---|---|
| লিনাক্স | |
| শুধুমাত্র লিনাক্স সিপিইউ | https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow_jni-cpu-linux-x86_64-2.4.0.tar.gz |
| লিনাক্স জিপিইউ সমর্থন | https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow_jni-gpu-linux-x86_64-2.4.0.tar.gz |
| ম্যাকওএস | |
| শুধুমাত্র ম্যাকওএস সিপিইউ | 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 |
| উইন্ডোজ জিপিইউ সমর্থন | https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow_jni-gpu-windows-x86_64-2.4.0.zip |
সংকলন
পূর্ববর্তী উদাহরণের HelloTensorFlow.java ফাইলটি ব্যবহার করে টেনসরফ্লো ব্যবহার করে এমন একটি প্রোগ্রাম কম্পাইল করুন। নিশ্চিত করুন যে libtensorflow.jar আপনার classpath অ্যাক্সেসযোগ্য আছে।
javac -cp libtensorflow-2.4.0.jar HelloTensorFlow.java
দৌড়
একটি TensorFlow জাভা প্রোগ্রাম চালানোর জন্য, JVM-কে অবশ্যই libtensorflow.jar এবং নিষ্কাশিত JNI লাইব্রেরি অ্যাক্সেস করতে হবে।
লিনাক্স / ম্যাকওএস
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-এর জাভা এবং নেটিভ লাইব্রেরিগুলো বিল্ড করার জন্য নির্দেশাবলী পড়ুন।