我正在尝试为我在React Native上构建的基于AI的应用程序添加离线支持,该应用程序类似于硅谷的Not Hotdog.我最近发现了Tenserflow.js,并试图用React native实现它,甚至将我的python模型输出到Tenserflow.js支持的模型,但当我尝试使用import * as tf from '@tensorflow/tfjs';
这种语法在其中一个React Native组件中导入Tenserflow.js 但是React Native会抛出错误,错误截图附有问题.
谢谢 !!!
在简短的回答是不作为陈述项目的描述.
WebGL加速,基于浏览器的 JavaScript库
您收到的错误表明它正在尝试使用window
哪些是浏览器中DOM API的一部分.React Native没有这样的API,因为它不是浏览器.您可以看到它们window
在Core API 中的多个位置使用.
该长的答案是也许,但超出范围的StackOverflow的答案,因为这将是类似于要求一个教程.详细说明,我可以看到两种可能使TensorFlow.js工作的方法:
Polyfill缺少的一切:
这可能是可能的,但它可能不会像你期望的那样工作,因为它利用了WebGL.我不熟悉TensorFlow.js,但我相信使用WebGL是因为它允许访问GPU加速,从而使工作负载在浏览器中可行.你需要做的,以类似的东西,它的工作以及在移动设备上.
杠杆a WebView
.但是,您可能会再次遇到WebGL /性能问题,如此类旧问题中所示.
由于您没有发布任何代码,因此我无法就此问题向您提供其他指导.一个建议是查看可能是本机模块,例如react-native-tensorflow以及人们围绕它进行的讨论.