Skip to content

[Web] Upgrading from 1.20.1 to 1.21.* breaks Segment Anything models on WebGPU #23183

@xenova

Description

@xenova

Describe the issue

After upgrading to onnxruntime-web version 1.21.0-dev.20241205-d27fecd3d3 in this commit, Segment Anything models no longer work on WebGPU. WASM is correct (albeit slow). You can use https://huggingface.co/Xenova/slimsam-77-uniform for testing, as shown below.

Correct behaviour:
Image

Incorrect behaviour:
Image

To reproduce

  1. Check out the demo source code: https://github.com/huggingface/transformers.js-examples/blob/main/segment-anything-webgpu/index.js
  2. Update the import to https://cdn.jsdelivr.net/npm/@huggingface/transformers@3.1.1 and see that everything works correctly.
  3. Update the import to https://cdn.jsdelivr.net/npm/@huggingface/transformers@3.1.2 and see that the output is incorrect.

Urgency

Since Segment Anything is quite a popular Transformers.js model, this is pretty important.

ONNX Runtime Installation

Released Package

ONNX Runtime Version or Commit ID

1.21.0-dev.20241205-d27fecd3d3

Execution Provider

'webgpu' (WebGPU)

Metadata

Metadata

Assignees

No one assigned

    Labels

    .NETPull requests that update .net codeep:WebGPUort-web webgpu providermodel:transformerissues related to a transformer model: BERT, GPT2, Hugging Face, Longformer, T5, etc.platform:webissues related to ONNX Runtime web; typically submitted using template

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions