U2-Net-p background removal (rembg)

models.skillsafe.ai/u2netp@cd3a3d67/

Vetted WebGPU

Background removal model for onnxruntime-web (fp32). Runs on WASM or WebGPU — 4.4 MB downloaded once from models.skillsafe.ai, then cached for every SkillSafe app that uses it. Inference happens on your device; nothing you enter is uploaded to load it, and it never costs a credit. Weights from Hugging Face · tomjackson2023/rembg, pinned at cd3a3d6767a7 — also loadable straight from Hugging Face outside SkillSafe (how).

Share

Details

Catalogue idu2netp@cd3a3d67
Runtimeonnxruntime-web ≥ 1.17.0
DeviceWASM, WebGPU
Variantfp32
Download4.4 MB · 1 file
LicenceApache-2.0 · notice
Pinned atcd3a3d6767a7859efea31ef0f2f373582cf06d82
ApprovedSep 3, 2026
Statusactive — every file is a live vetted hash

Files

Each file is served at an immutable URL; the canonical form is the SHA-256 itself. Tokenizer and config JSON are not here by design — they ship in your app bundle.

PathFormatSizeSHA-256
u2netp.onnx onnx 4.4 MB 309c8469258d…f4ddd8

Signature

Graph inputs and outputs read from the ONNX bytes at vetting — the tensor names your session.run() call feeds and reads. Symbolic dimensions are shown by name.

Inputs

  • input.1 float32 [1, 3, 320, 320]

Outputs

  • 1959 float32 [1, 1, 320, 320]
  • 1960 float32 [1, 1, 320, 320]
  • 1961 float32 [Sigmoid1961_dim_0, Sigmoid1961_dim_1, Sigmoid1961_dim_2, Sigmoid1961_dim_3]
  • 1962 float32 [Sigmoid1962_dim_0, Sigmoid1962_dim_1, Sigmoid1962_dim_2, Sigmoid1962_dim_3]
  • 1963 float32 [Sigmoid1963_dim_0, Sigmoid1963_dim_1, Sigmoid1963_dim_2, Sigmoid1963_dim_3]
  • 1964 float32 [Sigmoid1964_dim_0, Sigmoid1964_dim_1, Sigmoid1964_dim_2, Sigmoid1964_dim_3]
  • 1965 float32 [Sigmoid1965_dim_0, Sigmoid1965_dim_1, Sigmoid1965_dim_2, Sigmoid1965_dim_3]
Use it in an app declaration · SDK loader · onnxruntime-web · URLs · Hugging Face — generated from this entry

Add to the body of POST /v1/apps/{slug}/releases (or a release session). An unknown or withdrawn model is refused with a 400 naming it; the app page then shows "downloads 4.4 MB · runs on your device" and /models.txt carries the attribution.

{
  "models": [
    {
      "id": "u2netp",
      "revision": "cd3a3d67"
    }
  ]
}

Evaluation

onnx.checker + onnxruntime CPU smoke run with zero-filled inputs at the declared shapes; per-file SHA-256 pinned to the source — imported as published upstream, then checked. Evaluated Sep 22, 2026.

Runs under onnxruntime

Zero-filled inputs at the declared shapes, CPU execution provider on the converter host; the check is that the graph loads, runs, and emits the declared output shapes.

  • u2netp.onnx: input.1[1,3,320,320] → 1959[1,1,320,320], 1960[1,1,320,320], 1961[1,1,320,320], 1962[1,1,320,320], 1963[1,1,320,320], 1964[1,1,320,320], 1965[1,1,320,320] 104.1 ms

Toolchain: python 3.12.13 · platform Darwin 25.6.0 arm64 · torch 2.10.0 · onnx 1.23.0 · onnxruntime 1.30.0. Recipe models/recipes/u2netp.yaml (207ffd0ebb54). Full manifest.json

Licence & attribution

Apache-2.0 · licence text · notice

U2-Net: Going Deeper with Nested U-Structure for Salient Object Detection (Qin et al.), lightweight u2netp weights as distributed by rembg; mirrored on Hugging Face by tomjackson2023. Licensed under the Apache License 2.0.

Apps that declare this model get this text in their generated /models.txt, so a licence that requires a notice always carries one.

Every file here was approved by exact SHA-256 after a structural audit of the graph, fetched from a content-pinned source, and is served credential-free at an immutable URL. The SDK re-verifies the hash on your device before it caches or returns anything. Missing a variant? Request it — or read how the registry works.