Я пытаюсь создать компонент Vue, который использует TensorFlow.js для выполнения некоторого предварительно обученного прогнозирования модели. Этот компонент требуется для запуска в одностраничном и Android-приложении Cordova, повторно используя один и тот же исходный код в квазарепроект
компонент работает нормально в режиме SPA, вставлен в Cordova, страница не загружается, консоль разработчика инструментов показывает ошибку:
TypeError: Cannot redefine property: name message: "Cannot redefine property: name"stack: "TypeError: Cannot redefine property: name↵ at Function.defineProperty (native)↵ at Cn (webpack-internal:///../node_modules/@tensorflow/tfjs-core/dist/tf-core.esm.js:290:71123)↵ at Object.eval (webpack-internal:///../node_modules/@tensorflow/tfjs-core/dist/tf-core.esm.js:290:75521)↵ at Object.eval (webpack-internal:///../node_modules/@tensorflow/tfjs-core/dist/tf-core.esm.js:293:30)↵ at Object.push.../node_modules/@tensorflow/tfjs-core/dist/tf-core.esm.js (http://192.168.43.121:8081/1.js:23:1)↵ at __webpack_require__ (http://192.168.43.121:8081/app.js:770:30)↵ at fn (http://192.168.43.121:8081/app.js:130:20)↵ at Object.eval (webpack-internal:///../node_modules/@tensorflow/tfjs/dist/tf.esm.js:3:79)↵ at Object.push.../node_modules/@tensorflow/tfjs/dist/tf.esm.js (http://192.168.43.121:8081/1.js:59:1)↵ at __webpack_require__ (http://192.168.43.121:8081/app.js:770:30)"get stack: function () { [native code] }arguments: null caller: null length: 0name: ""prototype: StackTraceGetter__proto__: function Empty() {}<function scope>set stack: function () { [native code] }__proto__: Errorwebpack-internal:///../node_modules/vue-router/dist/vue-router.esm.js:2036 abort
компонент:
<template>
<div class="tensor-flow">
</div>
</template>
<script>
import * as tf from '@tensorflow/tfjs'
export default {
name: 'tensor-flow',
props: {
modelUrl: {
type: String,
default: 'model.json'
}
},
data () {
return {
model: {}
}
},
methods: {
async loadModel () {
this.model = await tf.loadLayersModel(this.modelUrl)
},
predict (input) {
return this.model.predict(input)
}
}
}
</script>
Я установил TensorFlow.js от yarn:
yarn add @tensorflow/tfjs
Я также попытался добавить скрипт в файл шаблона index.html
<script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs@1.3.0/dist/tf.min.js"></script>
, но возникает та же ошибка! в чем проблема?