我无法使用 Electron 运行tensorflow.js,请帮忙。
我拥有的:
1.Windows 10版本1903
2.Python 2.7
3. Node 12.13.1
4. npm 6.13.1
5.node-pre-gyp 0.14.0,全局安装
我做了什么:
1. 从 Electron 文档克隆 Electron 快速启动 ( https://github.com/electron/electron-quick-start )。
2.运行 npm insntall 和 npm start 以确保一切正常。
3.安装@tensorflow/tfjs-node:
npm install @tensorflow/tfjs-node
> @tensorflow/tfjs-node@1.4.0 install C:\Users\proxc\Desktop\electron-quick-start-master\node_modules\@tensorflow\tfjs-node
> node scripts/install.js
CPU-windows-1.4.0.zip
* Downloading libtensorflow
[==============================] 2299069/bps 100% 0.0s
[==============================] 1212292/bps 100% 0.0s
* Building TensorFlow Node.js bindings
+ @tensorflow/tfjs-node@1.4.0
added 74 packages from 48 contributors and audited 256 packages in 30.48s
2 packages are looking for funding
run `npm fund` for details
found 0 vulnerabilities
4.在preload.js中添加一行
const tf = require('@tensorflow/tfjs-node');
5.运行npm start:
npm start
> electron-quick-start@1.0.0 start C:\Users\proxc\Desktop\electron-quick-start-master
> electron .
node-pre-gyp info This Node instance does not support builds for N-API version 5
node-pre-gyp info This Node instance does not support builds for N-API version 5
在应用程序控制台中:
Platform browser has already been set. Overwriting the platform with [object Object].
Environment.setPlatform @ C:\Users\proxc\Desktop\electron-quick-start-master\node_modules\@tensorflow\tfjs-core\dist\environment.js:38
init.ts:204 Unable to load preload script: C:\Users\proxc\Desktop\electron-quick-start-master\preload.js
(anonymous) @ init.ts:204
init.ts:205 Error: Cannot find module 'C:\Users\proxc\Desktop\electron-quick-start-master\node_modules\@tensorflow\tfjs-node\lib\napi-v4\tfjs_binding.node'
Require stack:
- C:\Users\proxc\Desktop\electron-quick-start-master\node_modules\@tensorflow\tfjs-node\dist\index.js
- C:\Users\proxc\Desktop\electron-quick-start-master\preload.js
at Module._resolveFilename (internal/modules/cjs/loader.js:717)
at Function../lib/common/reset-search-paths.ts.Module._resolveFilename (reset-search-paths.ts:40)
at Module._load (internal/modules/cjs/loader.js:622)
at Module._load (electron/js2c/asar.js:717)
at Function.Module._load (electron/js2c/asar.js:717)
at Module.require (internal/modules/cjs/loader.js:775)
at require (internal/modules/cjs/helpers.js:68)
at Object.<anonymous> (C:\Users\proxc\Desktop\electron-quick-start-master\node_modules\@tensorflow\tfjs-node\dist\index.js:44)
at Object.<anonymous> (C:\Users\proxc\Desktop\electron-quick-start-master\node_modules\@tensorflow\tfjs-node\dist\index.js:66)
at Module._compile (internal/modules/cjs/loader.js:880)
我尝试过的:
1. Node 版本13.3.0
2. npm重建@tensorflow/tfjs-node --build-from-source
3.删除node_modules并再次运行脚本
4.删除项目并重来
可能很有趣:
1. node_modules\@tensorflow\tfjs-node\lib
不包含napi-4
,但包含napi-5
最佳答案
在 Windows 上构建 tfjs-node
似乎存在已知问题 here
解决方案是使用 Node 10.16.3 并运行命令:
npm rebuild @tensorflow/tfjs-node --build-from-source
关于node.js - 如何使用 Electron 运行tensorflow.js?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59273124/