edgetam_decoder_xnnpack_fp16.pte
(12.6 MB) — the same decoder at half the size,
corr 1.000000 against fp32 eager. It takes and returns fp32 tensors, so pairing it
with the fp32 encoder needs no app changes.
The encoder ships in fp32 only, and that is not an omission. Its backbone is RepViT,
which is convolutional, and XNNPACK serializes convolution weights as fp32 whatever
dtype the graph carries — fp16 came out at 19.8 MB (100.5%) and dynamic int8 at
19.7 MB, so neither buys anything. At 19.7 MB the fp32 encoder is already smaller
than SAM 2.1 hiera-tiny's
fp16
encoder (55.6 MB).
EdgeTAM is Meta's on-device SAM 2 (CVPR 2025). Its encoder is
5.5× smaller than
SAM 2.1 hiera-tiny's
(19.7 MB vs 109.2 MB) for the same output contract, so an
app written against
SAM2.1-hiera-tiny-ExecuTorch
swaps the two files and changes nothing else.
Postprocess
: take argmax(iou) of the 3 mask logits, threshold at > 0, upsample
4× (256→1024) back to image space. The prompt encoder is inside the decoder — pass
raw click coordinates, no separate point-encoding code needed.
Every output of both graphs matches torch fp32 eager at corr 1.000000, and the two
wrappers compose back to
EdgeTamModel.forward
exactly (max_abs_diff 0.000e+00).
graph
output
shape
max_abs_diff
corr
encoder
image_embed
[1, 256, 64, 64]
0.000e+00
1.000000
encoder
feat_s0
[1, 32, 256, 256]
0.000e+00
1.000000
encoder
feat_s1
[1, 64, 128, 128]
0.000e+00
1.000000
decoder
mask logits
[1, 1, 3, 256, 256]
0.000e+00
1.000000
decoder
iou
[1, 1, 3]
0.000e+00
1.000000
Median over 10 runs, Mac arm64 single process — a relative reference, not a device
number: encoder 32.3 ms (torch eager 103.5 ms), decoder 23.7 ms (eager 13.9 ms).
XNNPACK delegate coverage: encoder 99.8% (one
upsample_nearest2d
on the portable
kernels), decoder 66.5% (the prompt encoder's
expand
/
where
bookkeeping stays on
portable; every convolution and matmul is delegated).
Two details matter for this split, both shared with the SAM 2.1 conversion. Encoder
outputs are forced
.contiguous()
— transformers hands back channels_last tensors,
and that layout at a
.pte
boundary makes the delegate's runtime shape propagation
read physical strides as logical dims. Identity
repeat_interleave(1, dim)
calls in
the decoder are dropped, since their lowered form mis-sizes on a single-point export.
The GPU-specific rewrites in the LiteRT build of this model (splitting the
squeeze-excite mean, replacing ConvTranspose2d) are ML Drift workarounds and are not
needed here — XNNPACK runs the stock graph.
Runs of mlboydaisuke EdgeTAM-ExecuTorch on huggingface.co
189
Total runs
4
24-hour runs
8
3-day runs
60
7-day runs
-149
30-day runs
More Information About EdgeTAM-ExecuTorch huggingface.co Model
EdgeTAM-ExecuTorch huggingface.co is an AI model on huggingface.co that provides EdgeTAM-ExecuTorch's model effect (), which can be used instantly with this mlboydaisuke EdgeTAM-ExecuTorch model. huggingface.co supports a free trial of the EdgeTAM-ExecuTorch model, and also provides paid use of the EdgeTAM-ExecuTorch. Support call EdgeTAM-ExecuTorch model through api, including Node.js, Python, http.
EdgeTAM-ExecuTorch huggingface.co is an online trial and call api platform, which integrates EdgeTAM-ExecuTorch's modeling effects, including api services, and provides a free online trial of EdgeTAM-ExecuTorch, you can try EdgeTAM-ExecuTorch online for free by clicking the link below.
mlboydaisuke EdgeTAM-ExecuTorch online free url in huggingface.co:
EdgeTAM-ExecuTorch is an open source model from GitHub that offers a free installation service, and any user can find EdgeTAM-ExecuTorch on GitHub to install. At the same time, huggingface.co provides the effect of EdgeTAM-ExecuTorch install, users can directly use EdgeTAM-ExecuTorch installed effect in huggingface.co for debugging and trial. It also supports api for free installation.