一个十年标杆,与一个公允的问题

TensorFlow 是 Google 的端到端机器学习平台:一个 C++ 内核搭配 Python API,外加用于训练模型并将其部署到服务器、浏览器和手机的工具链。它是让深度学习变得寻常的项目之一。到了 2026 年,该问的已经不是它能做什么,而是它还该不该当你的默认选择。这取决于你要构建的是什么。

它给你什么

TensorFlow 与其说是一个库,更像一整个生态。围绕内核,有用于高层建模的 Keras、用于端侧推理的 TensorFlow Lite、面向浏览器的 TensorFlow.js、用于生产流水线的 TFX,以及用于可视化的 TensorBoard。就是这种广度,让大型组织纷纷以它为标准:一套技术栈,就能把模型从研究 Notebook 一路带到手机上。

核心组成

  • 一个 C++ 引擎(仓库的主要语言),配一流的 Python API。
  • Keras 作为定义和训练模型的默认高层接口。
  • 覆盖服务器、移动与嵌入式(TF Lite)以及 Web(TF.js)的部署目标。
  • 采用 Apache-2.0 许可,由 Google Brain 团队打造,于 2015 年开源。

安装

大多数用户从不碰 C++,他们安装的是 Python 包:

pip install tensorflow

GPU 构建、特定 CUDA 版本以及 Apple Silicon 的 wheel 包,按平台分别记录在 tensorflow.org 上。

一个最小模型

import tensorflow as tf

model = tf.keras.Sequential([
    tf.keras.layers.Dense(128, activation="relu"),
    tf.keras.layers.Dense(10),
])
model.compile(
    optimizer="adam",
    loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
)
model.fit(x_train, y_train, epochs=5)

何时合适,何时不合适

当你需要交付到生产环境、并部署到受限设备时,TensorFlow 很合适:TF Lite 和 TF.js 至今仍是让模型在手机或浏览器中运行的最成熟路径之一。当你的组织已经构建在它之上时,它也合适。但对以研究为先的工作,它就不那么合适了:这个领域的大部分人已转向 PyTorch(看中其即时执行、贴近 Python 的手感)或 JAX(看中其高性能数值计算)。今天选择 TensorFlow,更多是一项关于部署和生态的决定,研究层面的考量退居其次。

TensorFlow、PyTorch 与 JAX

TensorFlowPyTorchJAX
Star 数195,612100,61235,775
Fork 数75,31727,9643,613
未解决 Issue3,23918,3322,364
手感计算图加 Keras即时执行、贴近 Python函数式、类 NumPy
强项生产与端侧研究与社区速度与可组合性

数据取自 GitHub,截至 2026 年 6 月初。TensorFlow 在原始 Star 数上仍然领先,这一领先部分源于它自 2015 年以来的先发优势;对今天的选型而言,「手感」和「强项」这两行比总数更值得参考。

Star 增长史

TensorFlow 于 2015 年 11 月发布,从一开始就与众不同:它开局就在 1,200 Star 之上,约十天内突破 10,000,足见 Google 入局所吸引的关注之多。此后的十年是一段漫长而稳健的攀升,直到约 195,600(截至 2026-06),呈现出一个既有标杆的形态,没有骤然爆发。

相关项目

模型训练完成后,像 Ollama 这样的轻量运行时负责另一件事:在本地运行开源模型。若要在应用内做端侧推理,TensorFlow Lite 常与用 Flutter 构建的跨平台 UI 搭配使用。

常见问题

TensorFlow 免费吗? 是的。它采用 Apache-2.0 许可,可免费商用。

用它需要写 C++ 吗? 不需要。仓库内核是 C++,但你通过 Python API 和 Keras 来构建模型。

选 TensorFlow 还是 PyTorch? 对于研究和快速迭代,如今多数团队会选 PyTorch;对于生产和端侧部署,TensorFlow 的工具链仍是选择它的有力理由。