Error: No backend found in registry.

751 阅读1分钟

技术栈

vue3 + ts + vite + tensorflow.js

依赖

 "dependencies": {
    "@tensorflow-models/speech-commands": "^0.5.4",
    "@tensorflow/tfjs": "^3.14.0",
    "@tensorflow/tfjs-vis": "^1.5.1",
     ...
  },

问题描述

尝试使用tensorflow/tfjs-models库中speech-commands模型跑实例代码时,出现以下错误:

QQ截图20220317101202.png

解决

  • 引入@tensorflow/tfjs
import * as tf from '@tensorflow/tfjs';
import *  as speechCommands from '@tensorflow-models/speech-commands'

// 此句必须要 必须用到tf 未使用vite会做treeShaking处理 等于没导入 
console.log('getBackend', tf.getBackend());

const recognizer = speechCommands.create('BROWSER_FFT')
await recognizer.ensureModelLoaded()
console.log('wordLabels',recognizer.wordLabels());
...
  • 报错消失,控制台有对应输出

QQ截图20220317101958.png

参考

tensorflow - BodyPix - Error: No backend found in registry - Stack Overflow