Depth Anything V2 Small (monocular depth)

models.skillsafe.ai/depth-anything-v2-small-fp16@4472b736/

Vetted New WebGPU

Depth estimation model for transformers.js (fp16). Runs on WebGPU or WASM — 47.3 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 · skillsafe-ai/depth-anything-v2-small, pinned at 8dd3386bcab8 — also loadable straight from Hugging Face outside SkillSafe (how).

Share

Details

Catalogue iddepth-anything-v2-small-fp16@4472b736
Runtimetransformers.js ≥ 3.0.0
DeviceWebGPU, WASM
Variantfp16
Download47.3 MB · 1 file
LicenceApache-2.0 · notice
Pinned at8dd3386bcab83bcd8f8470d5f2fe8bf222648ab9
ApprovedSep 22, 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
onnx/model_fp16.onnx onnx 47.3 MB 2df6223f206b…0f5b04

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

  • pixel_values float32 [batch_size, 3, height, width]

Outputs

  • predicted_depth float32 [floor(1.0*batch_size), 14*floor(height/14), 14*floor(width/14)]
Use it in an app declaration · SDK loader · transformers.js · 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 47.3 MB · runs on your device" and /models.txt carries the attribution.

{
  "models": [
    {
      "id": "depth-anything-v2-small-fp16",
      "revision": "4472b736"
    }
  ]
}

Evaluation

onnx.checker + onnxruntime CPU smoke run with zero-filled inputs at the declared shapes; per-file SHA-256 pinned to the source; ONNX output vs the PyTorch model from the same commit on real text (import.parity) — imported as published upstream, then checked. Evaluated Sep 22, 2026.

Parity against transformers DepthAnythingForDepthEstimation from depth-anything/Depth-Anything-V2-Small-hf@5426e4f0f365, fp32 · predicted_depth

fileprecisionmax absmean abscosine / PSNR
onnx/model.onnxfp328.1e-63.7e-61.000000
onnx/model_fp16.onnxfp160.0280.0120.999991
onnx/model_quantized.onnxquantised0.1700.0630.999765

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.

  • onnx/model.onnx: pixel_values[1,3,518,518] → predicted_depth[1,518,518] 121.6 ms
  • onnx/model_fp16.onnx: pixel_values[1,3,518,518] → predicted_depth[1,518,518] 157.7 ms
  • onnx/model_quantized.onnx: pixel_values[1,3,518,518] → predicted_depth[1,518,518] 106.7 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/depth-anything-v2-small.yaml (f243268eb921). Full manifest.json

Licence & attribution

Apache-2.0 · licence text · notice

Depth Anything V2 Small: Lihe Yang et al. (HKU / TikTok), Apache License 2.0. https://github.com/DepthAnything/Depth-Anything-V2 — ONNX export by onnx-community.

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.