在没有 CDN 的情况下在哪里下载 tensorflow.js 的特定版本

Where to download a specific version of tensorflow.js without a CDN

我正在发布一个 Firefox 扩展,其中包含缩小的 tensorflow.js 库的副本。在 Mozilla 的 Third Party Library Usage guidelines 中,声明如下:

You should download third-party libraries from their official site, not from a CDN or other location. This point is important.

因此,似乎不允许我使用我看到在每个 tf.js 项目中使用的 download URL,因为它通过 CDN 为图书馆提供服务。

我一直在浏览 Tensorflow.js repository at Github,试图找到一个 "releases" 目录或类似的目录来下载 tf.min.js 的特定版本,但我一直找不到类似的东西。

我在哪里可以找到官方的、稳定的直接下载 link 到给定版本的 tf.min.js,它不是由 CDN 提供的?

您不会在 GitHub 存储库中找到 tf.min.js 文件,因为 TensorFlow.js 是用 TypeScript 编写的。 JavaScript 文件只在构建时生成,不会提交到 repo。

official TensorFlow.js website 不提供直接下载,但提供除了使用 CDN 之外的第二种选择:您可以通过 npm 下载 TensorFlow.js 的任何给定版本。

npm 中的主要包是@tensorflow/tfjs。您可以使用 npm install @tensorflow/tfjs 以通常的方式安装在项目中,或者如果您只是想要包源的完整副本而不使用 node_modules 目录,您可以 运行 以下内容:

npm pack @tensorflow/tfjs

这会给你一个类似 tensorflow-tfjs-1.7.0.tgz 的 tarball 文件。您可以使用以下命令解压缩:

tar -xf tensorflow-tfjs-1.7.0.tgz

现在您会在 package/dist 中找到 tf.min.js。你还会发现一个非缩小的 tf.js.

碰巧,tf.min.js 文件与 CDN 上的文件完全相同(哈希值匹配)。但是,使用 npm 发布确实提供了一种从官方来源获取精确版本的可靠方法,因此这些说明可能会更好地满足审查过程。