赞
踩
python 环境
包 | 版本 |
---|---|
tensorflow | 2.6.0 |
tensorflow-js | 3.18.0 |
uniapp(vue)
完整引入包
{
"dependencies": {
"@tensorflow/tfjs-core": "3.5.0",
"@tensorflow/tfjs-converter":"3.5.0",
"@tensorflow/tfjs-backend-webgl":"3.5.0",
"@tensorflow/tfjs-backend-cpu":"3.5.0",
"fetch-wechat": "0.0.3"
}
}
在package.json下配置
{
"dependencies": {
"@tensorflow/tfjs-core": "3.5.0",
"@tensorflow/tfjs-converter":"3.5.0",
}
}
PS: 许多文章都说只需要引入tensorflow.js 子包,但是子包所蕴涵的功能并不全面。如果你只是一个新手,最好是直接加载@tensorflow/tfjs。后续慢慢了解自己需要用到那几个模块再进行删减.
具体各个包的功能如下
包 | 功能说明 |
---|---|
tfjs-core | 基础包(数据基本结构) |
tfjs-converter | 模型导入 |
tfjs-layers | 自己构建模型 |
tfjs-data | 数据流 |
tfjs-backend-webgl | 作为前端使用时需要导入 |
tfjs-backend-cpu | 作为前端使用时需要导入 |
后续在目标项目的路径下打开命令行, 输入指令
npm install
当然,你有更好的方法也可以指明或留言
单纯只是在web环境运行你的配置只需要
{
"@tensorflow/tfjs-backend-webgl":"3.5.0"
}
如果你的代码需要在微信小程序上运行则需要同时引入两个包
{
"@tensorflow/tfjs-backend-webgl":"3.5.0",
"@tensorflow/tfjs-backend-cpu":"3.5.0",
}
同时你所引入的这个包,需要在你对应的页面或者公共地方引入
require('@tensorflow/tfjs-backend-webgl');
require('@tensorflow/tfjs-backend-cpu')
如果你已经和引入fetchWetch , 并且在对应的页面已经引入。那么你估计是没有调用插件代码。
你需要在公共文件的onLaunch 内写下这段代码
var fetchWechat = require('fetch-wechat'); var tf = require('@tensorflow/tfjs-core'); var webgl = require('@tensorflow/tfjs-backend-webgl'); var plugin = requirePlugin('tfjsPlugin'); plugin.configPlugin({ // polyfill fetch function fetchFunc: fetchWechat.fetchFunc(), // inject tfjs runtime tf, // inject webgl backend webgl, // provide webgl canvas canvas: wx.createOffscreenCanvas() });
但是这时候一般都会有问题,由于requirePlugin ,似乎是只有在微信小程序才会永远的功能。如果我们在现在调用会直接报错。
面对这种情况,我们只有两种方法
// 获取平台基本信息 let systemInfo = uni.getSystemInfoSync() // 获取当前的平台 let uniPlatform = systemInfo.uniPlatform if (uniPlatform == "mp-weixin") { var fetchWechat = require('fetch-wechat'); var tf = require('@tensorflow/tfjs-core'); var webgl = require('@tensorflow/tfjs-backend-webgl'); var plugin = requirePlugin('tfjsPlugin'); plugin.configPlugin({ // polyfill fetch function fetchFunc: fetchWechat.fetchFunc(), // inject tfjs runtime tf, // inject webgl backend webgl, // provide webgl canvas canvas: wx.createOffscreenCanvas() }); } },
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。