我正在用vanilla JS将tensorFlow模型加载到多个web-worker中
我曾尝试使用tf.loadLayersModel("indexeddb://model_name")
,但它给出了“ReferenceError:window is not defined”错误。我知道web-worker没有访问window对象的权限,所以这并不奇怪。我尝试用self覆盖window对象,但它仍然抛出错误。
我的理解是web-worker可以访问 IndexedDB ,git hub https://github.com/tensorflow/tfjs/issues/2643和https://github.com/tensorflow/tfjs/issues/3402上的一些帖子让我相信tensorflow确实支持web-worker内部的 IndexedDB (至少在保存时)。有办法做到这一点吗?
如果没有,是否有一种好的方法将模型编码到ArrayBuffer或SharedArrayBuffer中,以便有效地将数据上传到webworker上下文中?
1条答案
按热度按时间mwg9r5ms1#
我可以确认它适用于图模型-从indexdb加载到web worker是好的。我建议在tfjs git repo中打开一个问题,如果它适用于层模型失败的话。