tensorflow/tensorflow
TensorFlow
TensorFlow is an end-to-end open source platform for machine learning. The repository at github.com/tensorflow/tensorflow contains the core runtime, kernel library, language frontends (Python, C++, Java, Go), the XLA/MLIR compiler stack, the TensorFlow Lite mobile/embedded runtime, and the bundled (legacy) Keras frontend.
What it does
TensorFlow lets users define computations as dataflow graphs of operations over multidimensional tensors, then executes those graphs on CPUs, GPUs, TPUs, and other accelerators. Users typically write Python (the dominant frontend), but the same graph can be saved and executed from C++, Java, Go, JavaScript-via-tfjs-converter, or run on mobile devices via TensorFlow Lite. The platform covers training (large-scale, distributed, possibly on TPU pods), inference (eager, graph, ahead-of-time-compiled, or quantized for mobile), and the surrounding tooling (TensorBoard logging via tf.summary, SavedModel serialization, tf.data input pipelines, tf.distribute strategies).
Repository scope
This repo contains:
- Core runtime (
tensorflow/core/) — C++ implementation of graphs, executors, devices, eager runtime, distributed master/worker, protobufs, kernels. - Compiler stack (
tensorflow/compiler/) — XLA bridge (tf2xla), JIT/AOT compilation (jit,aot), MLIR-based passes, and TensorRT integration. - Language frontends (
tensorflow/python/,tensorflow/cc/,tensorflow/c/,tensorflow/java/,tensorflow/go/,tensorflow/js/). - TensorFlow Lite (
tensorflow/lite/) — interpreter, kernels, delegates, converter, micro runtime, iOS/Android/Swift/ObjC bindings. - Tooling (
tensorflow/tools/,ci/,configure.py) — pip packaging, docs generation, CI scripts, the project's./configurestep, build defs. - Third-party vendor sources (
third_party/) — Bazel rules and patches for Eigen, gRPC, protobuf, ICU, MKL, etc.
How users interact with it
graph LR
User[User Python script]
PyAPI[tf.* Python API]
CppRuntime[Core C++ runtime]
Kernels[Op kernels - CPU/GPU/TPU]
XLA[XLA / MLIR compiler]
SavedModel[SavedModel files]
Lite[TF Lite interpreter]
User --> PyAPI
PyAPI -- pybind11 / SWIG --> CppRuntime
CppRuntime --> Kernels
CppRuntime -- optional --> XLA
XLA --> Kernels
PyAPI -- export --> SavedModel
SavedModel --> CppRuntime
SavedModel -- convert --> Lite- Training a model: import
tensorflow as tf, build atf.keras.Modelortf.function-decorated function, callmodel.fit(...)or run training loop withtf.distribute.Strategy. - Serving a model: export with
tf.saved_model.save(...)and load from C++ (SavedModelBundle), TF Serving, or convert viaTFLiteConverterfor mobile. - Embedded inference: convert to a
.tfliteflatbuffer and run onInterpreter(C++/Java/Swift/Obj-C/Python).
Where to start
- New contributor → how-to-contribute
- Want to build TF from source → getting-started
- Want the high-level component map → architecture
- Need term definitions (
Op,Kernel,Device,Rendezvous,Resource) → glossary - Want a feel for the codebase → by-the-numbers, lore, fun-facts
Quick links inside this wiki
- Lens pages: apps, systems, compilers, features
- Reference: configuration, data models, dependencies
- Ownership: maintainers
Licensing
Apache License 2.0 (LICENSE). The project is governed by Google with public contributions accepted via PR. The PR workflow is unusual: contributions are mirrored into Google's internal monorepo via a tool called Copybara, then re-exported. See development-workflow.
Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.