Attend the Women in ML Symposium on December 7 Register now

قم بتثبيت TensorFlow لـ Java

تنظيم صفحاتك في مجموعات يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.

يوفر TensorFlow واجهة برمجة تطبيقات Java - مفيدة لتحميل النماذج التي تم إنشاؤها باستخدام Python وتشغيلها داخل تطبيق Java.

حزم Java Libtensorflow الليلية

يتم إنشاء حزم Libtensorflow JNI ليلاً ويتم تحميلها على GCS لجميع الأنظمة الأساسية المدعومة. يتم تحميلها إلى حاوية GCS libtensorflow-nightly ويتم فهرستها بواسطة نظام التشغيل وتاريخ الإنشاء.

المنصات المدعومة

يتم دعم TensorFlow لـ Java على الأنظمة التالية:

  • Ubuntu 16.04 أو أعلى ؛ 64 بت ، x86
  • macOS 10.12.6 (Sierra) أو أعلى
  • Windows 7 أو أعلى ؛ 64 بت ، x86

لاستخدام TensorFlow على Android ، راجع TensorFlow Lite

TensorFlow مع Apache Maven

لاستخدام TensorFlow مع Apache Maven ، أضف التبعية إلى ملف pom.xml الخاص pom.xml :

<dependency>
  <groupId>org.tensorflow</groupId>
  <artifactId>tensorflow</artifactId>
  <version>2.4.0</version>
</dependency>

دعم GPU

إذا كان نظامك يدعم GPU ، فقم بإضافة تبعيات TensorFlow التالية إلى ملف pom.xml الخاص pom.xml :

<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>

برنامج مثال

يوضح هذا المثال كيفية إنشاء مشروع Apache Maven باستخدام TensorFlow. أولاً ، أضف تبعية TensorFlow إلى ملف pom.xml الخاص pom.xml :

<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 ملف المصدر ( 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

TensorFlow مع JDK

يمكن استخدام TensorFlow مع JDK من خلال واجهة Java الأصلية (JNI).

تحميل

  1. قم بتنزيل أرشيف TensorFlow Jar (JAR): libtensorflow.jar
  2. قم بتنزيل واستخراج ملف Java Native Interface (JNI) لنظام التشغيل ودعم المعالج:
نسخة JNI URL
لينكس
وحدة المعالجة المركزية Linux فقط https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow_jni-cpu-linux-x86_64-2.4.0.tar.gz
دعم Linux GPU https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow_jni-gpu-linux-x86_64-2.4.0.tar.gz
macOS
وحدة المعالجة المركزية macOS فقط https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow_jni-cpu-darwin-x86_64-2.4.0.tar.gz
شبابيك
وحدة المعالجة المركزية لنظام Windows فقط 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 من المثال السابق ، قم بترجمة برنامج يستخدم TensorFlow. تأكد من أن libtensorflow.jar هي في متناول الخاص classpath :

javac -cp libtensorflow-2.4.0.jar HelloTensorFlow.java

يركض

لتنفيذ برنامج TensorFlow Java ، يجب على JVM الوصول إلى libtensorflow.jar ومكتبة JNI المستخرجة.

لينكس / ماك

java -cp libtensorflow-2.4.0.jar:. -Djava.library.path=./jni HelloTensorFlow

شبابيك

049370 aee0

يخرج الأمر: Hello from version

بناء من المصدر

TensorFlow مفتوح المصدر. اقرأ التعليمات لإنشاء مكتبات Java والمكتبات الأصلية في TensorFlow من التعليمات البرمجية المصدر.