无法在 nodejs 中导入 @tensorflow/tfjs-node
Cannot import @tensorflow/tfjs-node in nodejs
无法将 @tensorflow/tfjs-node 导入我的程序。
我试图按如下方式导入它:
const tf = require('@tensorflow/tfjs-node')
并收到错误如下:
internal/modules/cjs/loader.js:638
throw err;
^
Error: Cannot find module '/home/nama/working/Canvas-WEB/node_modules/@tensorflow/tfjs-node/lib/napi-v4/tfjs_binding.node'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:636:15)
at Function.Module._load (internal/modules/cjs/loader.js:562:25)
at Module.require (internal/modules/cjs/loader.js:692:17)
at require (internal/modules/cjs/helpers.js:25:18)
at Object.<anonymous> (/home/nama/working/Canvas-WEB/node_modules/@tensorflow/tfjs-node/dist/index.js:44:16)
at Module._compile (internal/modules/cjs/loader.js:778:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)
但是当我尝试导入@tensorflow/tfjs as
const tf = require('@tensorflow/tfjs')
没有遇到错误。
我使用 npm as
安装了@tensorflow/tfjs-node
sudo npm install @tensorflow/tfjs-node
然后得到一个输出(如下):
@tensorflow/tfjs-node@1.2.7 install /home/nama/working/Canvas-WEB/node_modules/@tensorflow/tfjs-node
node scripts/install.js
CPU-linux-1.2.7.tar.gz
(node:29606) UnhandledPromiseRejectionWarning: Error: EACCES: permission denied, mkdir '/home/nama/working/Canvas-WEB/node_modules/@tens
orflow/tfjs-node/deps'
(node:29606) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async
function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:29606) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not h
andled will terminate the Node.js process with a non-zero exit code.
npm WARN canvas-web@1.0.0 No repository field.
+ @tensorflow/tfjs-node@1.2.7
updated 1 package and audited 276 packages in 12.428s
found 0 vulnerabilities```
这里有两个问题。
以 root 身份安装包
您想以 root 身份安装依赖项,但默认情况下 npm 不会 运行 以 root 身份安装。传递the following arguments启用root权限:
sudo npm install @tensorflow/tfjs-node --unsafe-perm=true --allow-root
您还应该重新考虑使用另一个(不是 root)来 运行 您的脚本。
Tensorflow.js 需要
tensorflow/tfjs-node
的要求不会像您那样工作,包 @tensorflow/tfjs-node
不会导出任何东西,只需要使用本机 C++ 绑定。
这是应该如何完成的(引自tutorial):
const tf = require('@tensorflow/tfjs');
require('@tensorflow/tfjs-node');
我遇到了同样的问题,并通过 运行 下面 node_modules/@tensorflow/tfjs-node
的命令解决了这个问题
$ cd node_modules/@tensorflow/tfjs-node/
$ npm install
> @tensorflow/tfjs-node@1.2.6 install /Users/tomoima525/workspace/javascript/tensorflow/baseball/node_modules/@tensorflow/tfjs-node
> node scripts/install.js
CPU-darwin-1.2.7.tar.gz
* Building TensorFlow Node.js bindings
您也可以尝试使用 1.2.6 的 tfjs-node,我可以使用它。
https://github.com/tensorflow/tfjs-node#mac-os-x-requires-xcode
无法将 @tensorflow/tfjs-node 导入我的程序。 我试图按如下方式导入它:
const tf = require('@tensorflow/tfjs-node')
并收到错误如下:
internal/modules/cjs/loader.js:638
throw err;
^
Error: Cannot find module '/home/nama/working/Canvas-WEB/node_modules/@tensorflow/tfjs-node/lib/napi-v4/tfjs_binding.node'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:636:15)
at Function.Module._load (internal/modules/cjs/loader.js:562:25)
at Module.require (internal/modules/cjs/loader.js:692:17)
at require (internal/modules/cjs/helpers.js:25:18)
at Object.<anonymous> (/home/nama/working/Canvas-WEB/node_modules/@tensorflow/tfjs-node/dist/index.js:44:16)
at Module._compile (internal/modules/cjs/loader.js:778:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)
但是当我尝试导入@tensorflow/tfjs as
const tf = require('@tensorflow/tfjs')
没有遇到错误。
我使用 npm as
安装了@tensorflow/tfjs-nodesudo npm install @tensorflow/tfjs-node
然后得到一个输出(如下):
@tensorflow/tfjs-node@1.2.7 install /home/nama/working/Canvas-WEB/node_modules/@tensorflow/tfjs-node
node scripts/install.js
CPU-linux-1.2.7.tar.gz
(node:29606) UnhandledPromiseRejectionWarning: Error: EACCES: permission denied, mkdir '/home/nama/working/Canvas-WEB/node_modules/@tens
orflow/tfjs-node/deps'
(node:29606) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async
function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:29606) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not h
andled will terminate the Node.js process with a non-zero exit code.
npm WARN canvas-web@1.0.0 No repository field.
+ @tensorflow/tfjs-node@1.2.7
updated 1 package and audited 276 packages in 12.428s
found 0 vulnerabilities```
这里有两个问题。
以 root 身份安装包
您想以 root 身份安装依赖项,但默认情况下 npm 不会 运行 以 root 身份安装。传递the following arguments启用root权限:
sudo npm install @tensorflow/tfjs-node --unsafe-perm=true --allow-root
您还应该重新考虑使用另一个(不是 root)来 运行 您的脚本。
Tensorflow.js 需要
tensorflow/tfjs-node
的要求不会像您那样工作,包 @tensorflow/tfjs-node
不会导出任何东西,只需要使用本机 C++ 绑定。
这是应该如何完成的(引自tutorial):
const tf = require('@tensorflow/tfjs');
require('@tensorflow/tfjs-node');
我遇到了同样的问题,并通过 运行 下面 node_modules/@tensorflow/tfjs-node
$ cd node_modules/@tensorflow/tfjs-node/
$ npm install
> @tensorflow/tfjs-node@1.2.6 install /Users/tomoima525/workspace/javascript/tensorflow/baseball/node_modules/@tensorflow/tfjs-node
> node scripts/install.js
CPU-darwin-1.2.7.tar.gz
* Building TensorFlow Node.js bindings
您也可以尝试使用 1.2.6 的 tfjs-node,我可以使用它。
https://github.com/tensorflow/tfjs-node#mac-os-x-requires-xcode