transformers.js: Error: Can't create a session

System Info

os: mac-arm node: v18.18.2 electron: “28.0.0”, electron-vite: “^1.0.27”,

Environment/Platform

  • Website/web-app
  • Browser extension
  • Server-side (e.g., Node.js, Deno, Bun)
  • Desktop app (e.g., Electron)
  • Other (e.g., VSCode extension)

Description

Hello! I want to use transformers.js in an Electron application, but I’ve encountered some issues. Can you please take a look?

An error occurred when importing ONNX file in the main process of Electron.

Reproduction

when i want to load the model:

export async function embedding(text: string) {
  const { AutoTokenizer, CLIPTextModelWithProjection, env } = await import('@xenova/transformers')
  env.localModelPath = getResourcesPath('models')
  env.backends.onnx.wasm.numThreads = 1
  env.cacheDir = getResourcesPath('cache')
  let tokenizer = await AutoTokenizer.from_pretrained('Xenova/bert-base-chinese')
  const text_model = await CLIPTextModelWithProjection.from_pretrained('Xenova/bert-base-chinese', {
    model_file_name: 'model'
  })
  // Run tokenization
  let text_inputs = tokenizer([text], { padding: true, truncation: true })
  // Compute embeddings
  const res = await text_model(text_inputs)
  console.log(res.logits.data)
}

there is the error:

Error: Can't create a session
    at e.createSessionFinalize (/Users/wangdejiang/Desktop/Gomoon/Gomoon/node_modules/onnxruntime-web/dist/ort-web.node.js:6:450535)
    at e.createSession (/Users/wangdejiang/Desktop/Gomoon/Gomoon/node_modules/onnxruntime-web/dist/ort-web.node.js:6:451133)
    at e.createSession (/Users/wangdejiang/Desktop/Gomoon/Gomoon/node_modules/onnxruntime-web/dist/ort-web.node.js:6:443359)
    at e.OnnxruntimeWebAssemblySessionHandler.loadModel (/Users/wangdejiang/Desktop/Gomoon/Gomoon/node_modules/onnxruntime-web/dist/ort-web.node.js:6:446253)
    at async Object.createSessionHandler (/Users/wangdejiang/Desktop/Gomoon/Gomoon/node_modules/onnxruntime-web/dist/ort-web.node.js:6:156051)
    at async m.create (/Users/wangdejiang/Desktop/Gomoon/Gomoon/node_modules/onnxruntime-common/dist/ort-common.node.js:6:11924)
    at async constructSession (file:///Users/wangdejiang/Desktop/Gomoon/Gomoon/node_modules/@xenova/transformers/src/models.js:143:16)
    at async Promise.all (index 1)
    at async BertModel.from_pretrained (file:///Users/wangdejiang/Desktop/Gomoon/Gomoon/node_modules/@xenova/transformers/src/models.js:785:20)
    at async AutoModel.from_pretrained (file:///Users/wangdejiang/Desktop/Gomoon/Gomoon/node_modules/@xenova/transformers/src/models.js:4993:20)

Node.js v18.18.2

About this issue

  • Original URL
  • State: closed
  • Created 6 months ago
  • Comments: 15 (6 by maintainers)

Most upvoted comments

Great! 🥳 Absolutely no worries 😃 Glad it’s sorted 🚀

I’ll try again after re-downloading the onnx file.