node.js之无法在 nodejs 中导入 @tensorflow/tfjs-node

符号 阅读:48 2025-05-04 20:05:19 评论:0

无法将 @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 导入为
const tf = require('@tensorflow/tfjs') 

没有遇到错误。

我使用 npm 安装了@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不会导出任何东西,只需要使用 native C++ 绑定(bind)。

这是应该如何完成的(引自 tutorial ):

const tf = require('@tensorflow/tfjs'); 
require('@tensorflow/tfjs-node'); 


标签:NodeJs
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号