TensorFlow for Java
Stay organized with collections
Save and categorize content based on your preferences.
TensorFlow Java can run on any JVM for building, training and running machine learning models. It comes with
a series of utilities and frameworks that help achieve most of the tasks common to data scientists
and developers working in this domain. Java and other JVM languages, such as Scala or Kotlin, are
frequently used in small-to-large enterprises all over the world, which makes TensorFlow a strategic
choice for adopting machine learning at a large scale.
The Repository
In the early days, the Java language bindings for TensorFlow were hosted in the
main TensorFlow repository
and released only when a new version of the core library was ready to be distributed, which happens only
a few times a year. Now, all Java-related code has been moved to this repository so that it can evolve and
be released independently from official TensorFlow releases. In addition, most of the build tasks have been
migrated from Bazel to Maven, which is more familiar for most Java developers.
The following describes the layout of the repository and its different artifacts:
tensorflow-core
- All artifacts that build up the core language bindings of TensorFlow for Java
- Intended audience: projects that provide their own APIs or frameworks on top of
TensorFlow and just want a thin layer to access the TensorFlow runtime from the JVM
tensorflow-framework
- Primary API for building and training neural networks with TensorFlow
- Intended audience: neural network developers
ndarray
- Generic utility library for n-dimensional data I/O operations
- Used by TensorFlow but does not depend on TensorFlow
- Intended audience: any developer who needs a Java n-dimensional array implementation, whether or not they
use it with TensorFlow
Communication
This repository is maintained by TensorFlow JVM Special Interest Group (SIG). You can easily join the group
by subscribing to the jvm@tensorflow.org
mailing list, or you can simply send pull requests and raise issues to this repository.
There is also a sig-jvm Gitter channel.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2021-08-31 UTC.
[null,null,["Last updated 2021-08-31 UTC."],[],[],null,["# TensorFlow for Java\n\n\u003cbr /\u003e\n\n|----------------------------------------------------------|--------------------------------------------------------------|\n| [View on TensorFlow.org](https://www.tensorflow.org/jvm) | [View GitHub repository](https://github.com/tensorflow/java) |\n\nTensorFlow Java can run on any JVM for building, training and running machine learning models. It comes with\na series of utilities and frameworks that help achieve most of the tasks common to data scientists\nand developers working in this domain. Java and other JVM languages, such as Scala or Kotlin, are\nfrequently used in small-to-large enterprises all over the world, which makes TensorFlow a strategic\nchoice for adopting machine learning at a large scale.\n\nThe Repository\n--------------\n\nIn the early days, the Java language bindings for TensorFlow were hosted in the\n[main TensorFlow repository](https://github.com/tensorflow/tensorflow)\nand released only when a new version of the core library was ready to be distributed, which happens only\na few times a year. Now, all Java-related code has been moved to this repository so that it can evolve and\nbe released independently from official TensorFlow releases. In addition, most of the build tasks have been\nmigrated from Bazel to Maven, which is more familiar for most Java developers.\n\nThe following describes the layout of the repository and its different artifacts:\n\n- [tensorflow-core](https://github.com/tensorflow/java/tree/master/tensorflow-core)\n\n - All artifacts that build up the core language bindings of TensorFlow for Java\n - Intended audience: projects that provide their own APIs or frameworks on top of TensorFlow and just want a thin layer to access the TensorFlow runtime from the JVM\n- [tensorflow-framework](https://github.com/tensorflow/java/tree/master/tensorflow-framework)\n\n - Primary API for building and training neural networks with TensorFlow\n - Intended audience: neural network developers\n- [ndarray](https://github.com/tensorflow/java-ndarray)\n\n - Generic utility library for n-dimensional data I/O operations\n - Used by TensorFlow but does not depend on TensorFlow\n - Intended audience: any developer who needs a Java n-dimensional array implementation, whether or not they use it with TensorFlow\n\nCommunication\n-------------\n\nThis repository is maintained by TensorFlow JVM Special Interest Group (SIG). You can easily join the group\nby subscribing to the [jvm@tensorflow.org](https://groups.google.com/a/tensorflow.org/forum/#!forum/jvm)\nmailing list, or you can simply send pull requests and raise issues to this repository.\nThere is also a [sig-jvm Gitter channel](https://gitter.im/tensorflow/sig-jvm)."]]