From: speridlabs <huggingface.co/speridlabs>Newsgroups: alt.freeweights.textSubject:

idol

Date: 2026-11-15Commit: 2731c22Signed: 2DC28CC7B26A283B ✓

Image to 3d model. Safetensors weights, 3.13 GB in all. Published by speridlabs under Apache-2.0.

text3.13GBidolsafetensorspermissive
FactsParamsnot statedSize3.13 GBFormatssafetensorsTaskimage to 3dLicenseApache-2.0From sourcepermissive
$ fw get speridlabs/idol
# manifest sha256 237c84ce4cfd… · 3.13 GB · 16 files
$ fw verify ./idol speridlabs/idol
From sourceHosted (signed)speridlabs/idolLast check: 2026-11-15 02:35 UTC

Get help: custom fine-tune or private deploy. We review your setup before we quote.

Works with

Runs with

Ranked by fit to this model (safetensors), then by GitHub stars.

Overview

Size
3.13 GB
Weights
3.08 GB (safetensors)
Parameters
not stated
Formats
safetensors
Task
image to 3d
License
Apache-2.0 (permissive)
Files
16, each with a sha256
Publisher
speridlabs
Added
2026-11-15
Section
alt.freeweights.text
Lineage

Original release from the publisher.

Where these bytes come from
Publisher at the pinned commit→You

Sources are tried in order. A file counts only when its size and sha256 match the manifest. Sources are checked when you ask for them, not on a timer.

Sources
BadgeHostLast checkResult
From sourcehuggingface.co2026-11-15 02:35 UTCpassed

Model card

From the publisher at commit 2731c22. Shown as plain text with links; images open at the publisher.

Idol#

A single image to a 3D Gaussian splat. One picture of an object in, up to a million 3D Gaussians out, including the sides the picture never showed.

Project Page Code Demo

Idol turns one picture of an object into a 3D Gaussian splat. Give it a render, a generated image or a photo: it removes the background, frames the object and generates up to 1,048,576 Gaussians, written as a standard 3DGS .ply. It runs on consumer GPUs, using 7.2 GB of VRAM and can run in under 2 seconds.

Examples#

Idol turns one picture of an object into a 3D Gaussian splat. Give it a render, a generated image or a photo: it removes the background, frames the object and generates up to 1,048,576 Gaussians, including the sides the picture never showed. It runs on consumer GPUs, using 7.2 GB of VRAM and can run in under 2 seconds.

| Image: image | Image: image

| Image: image | Image: image

| Image: image | Image: image

| Image: image | Image: image

Get started#

1. Get access to the image encoders. Idol reads its input through two gated models on Hugging Face. Accept their terms with your Hugging Face account, then log in once with hf auth login (or set HF_TOKEN):

2. Install the code

git clone https://github.com/speridlabs/idol-sdk.git
cd idol-sdk
pip install -e .          # Python 3.10+, PyTorch 2.5+, an NVIDIA GPU with CUDA

There is no separate download step: on the first run, Idol's weights (about 3 GB, from this repository) and the two image encoders download automatically into the Hugging Face cache. If the encoders are not accessible yet, Idol stops before downloading anything and says what is missing.

3. Generate a 3D object

python -m idol.sample --image photo.jpg --mode real
python -m idol.sample --image renders/ --mode synthetic --out outputs

For each image this writes <name>.ply (open it in any Gaussian splat viewer), <name>_input.png (the image the model saw, after background removal and cropping) and <name>_camera.json (the predicted camera of the input).

Pick the mode for your input. It sets how much room the crop leaves around the object:

--modeforcrop
synthetic (default)renders and generated images of a single objectobject fills 1/1.2 of the frame
realphotographsobject fills 1/1.7 of the frame

From Python:

from idol import IdolPipeline

pipeline = IdolPipeline.from_pretrained("speridlabs/idol")
output = pipeline("photo.jpg", mode="real", seed=42, num_gaussians=1_048_576)
output.gaussian.save_ply("photo.ply")

Flags#

FlagDefaultWhat it does
--seed42Fix it to get the same object again.
--steps50Sampling steps. Fewer are faster but lose some detail.
--cfg_strength3.0Classifier-free guidance: how strictly the object follows the image.
--rescale_t3.0Time shift: higher spends more steps on the overall shape, lower on fine detail.
--num_gaussians26214432,768 to 1,048,576, a multiple of 32.
--dinov3_dtypebf16fp32 runs the DINOv3 encoder in full precision (1.7 GB more memory).
--weightssperidlabs/idolA Hugging Face repo or a local folder.
--no_optimizeoptimizedTurn off the faster sampling.

Faster sampling is on by default on GPU (~1.7x, same output quality): the denoiser is compiled with torch.compile, the guided and unguided passes run as one batch, and attention uses cuDNN with TF32 matmuls while sampling. The first image in a process is slower while it compiles.

More details about the model#

ComponentParametersPrecision on GPUWeights in VRAM
DiT (denoiser)370.6MFP16 transformer blocks; FP32 embeddings and norms~0.8–1.0 GB
Octree decoder50.8MFP16 transformer blocks; FP32 embeddings and norms~0.1–0.2 GB
Gaussian decoder237.3MFP16 transformer blocks; FP32 embeddings and norms~0.5–0.9 GB
BiRefNet (background removal)220.7MFP16~0.44 GB
DINOv3 ViT-H+/16840.6Mbf16~1.68 GB
FLUX.2 VAE84.1Mbf16 (FP32 checkpoint, cast on load)~0.17 GB
Full request~1.80Bmostly FP16 / bf16, some FP32~3.7–4.4 GB of weights, 7.2 GB peak

Benchmark#

Idol, TripoSplat, TRELLIS and LGM, scored at the input view (PSNR, SSIM, LPIPS, IoU) and at seven new views (DINOv2, CLIP, sharpness distance). Mean scores, 1 × H100 per model. Bold is the best in each column.

ModelSettingPSNR ↑SSIM ↑LPIPS ↓IoU ↑DINOv2 ↑CLIP ↑Sharpness distance ↓Request time ↓
Idol50 steps, 262,144 Gaussians12.250.7260.2130.8620.7810.8850.816.8 s
TripoSplat50 steps, 262,144 Gaussians11.760.7120.2250.8600.7430.8681.039.9 s
TRELLISPaper setting, 50 + 50 steps11.890.7160.2350.8450.7540.8680.977.1 s
LGMDefault, 65,536 Gaussians12.46\*0.7220.2370.8340.5750.7841.221.1 s

\* LGM has the highest PSNR despite visibly blurry results, because PSNR averages squared pixel error.

Across GPUs#

One image to 262,144 Gaussians in 3.4 s. Request time at 50 steps: median over 8 images, with the same code and settings on every GPU, one GPU per machine.

GPUVRAMRequest time
B300269 GB3.4 s
B200179 GB3.6 s
H200140 GB6.6 s
H10080 GB6.7 s
RTX 509032 GB14.1 s
A10080 GB16.3 s
L40S45 GB16.6 s
RTX 409024 GB19.1 s
RTX 308010 GB46.2 s
L422 GB54.6 s

Made with ❤️ by speridlabs.com

Files

16 files · 3.13 GBWeights 3.08 GB (safetensors). Sizes and sha256 from the signed manifest.
Hide all 16 files with their sha256
FileSizesha256
.gitattributes2.08 KB40d47e16502780b3454cb061ac6f42f9b6f6aec8c6edbcd6a9d07d51326566b6
README.md7.27 KBa19708af986ed793bd8ac054fc1b1f8f9938b9002f5ece82baa11cd68c6b2f7a
assets/gallery/armchair.webp1.10 MB8c30a0cbed2931aebb7ba5fe9082ccc87a01ab7c24ddf48faceb650921b5b29f
assets/gallery/avocado.webp758 KBb7dd1f8863bbca337bd71635ca8f5499cade479aa71faec5a136f13798a9d0ee
assets/gallery/axolotl.webp886 KB907d771e241396b47d364f3dd9382dc30d1ed4bb569618f148dac40d67c07fea
assets/gallery/castle.webp3.44 MBcfe489be3a09ff5000e238c609d191f065487fe8ef658e1a84b24689fe78b768
assets/gallery/grandma.webp2.70 MB9bcdc56b7456abd50ea64c88282cb818452f552c290bca6896d7c1fe8f5e2e25
assets/gallery/grapes.webp2.52 MBb607b625f3c1f2a9a59dc01e3c8530dc134aad096d8cd5baf02d6d1ad4c5ebf6
assets/gallery/lamp.webp1.49 MB184bb44d9abd5590b6b804877e6c32278387d40339150d96eca8a55c782f36d0
assets/gallery/lollipop.webp1.83 MB43c756f3fe6eb340381f9250f9aa720c6751085095dc7a7912dac79f9456299d
assets/reel.mp434.7 MBf2d3c0f0c85fea617919e74bc8c3ed2212f93ca573d56196f8d458346a297bb5
birefnet.safetensors444 MB44bbc97b041f879975d0d6d538b8e66a25eb04d1f49aab40697544cdd97eaa8e
config.json1.33 KBddd89dcc6dcf4a5ac8d951b8c59afa1eceafe377615c5912c59f4e1f5ae35b32
decoder.safetensors203 MB9da4d7676bfcadb1c3fdfbff796e6257dadf82d26ec05be7717c79b2b13a1c4e
decoder_gs.safetensors949 MB3087eb8ee5763206a53e4078acf2a1bf382dab5147d407ec13a2cf39c04cc544
denoiser.safetensors1.48 GBded2cacf671bf3978ebc62729087abdbd318ef4752e6805b4c9fc8ffa51fe716
VersionsEach time the pinned upstream commit or file list changed in this repo. Newest first.
Upstream commitDateContents
2731c2291f pinned now2026-11-15 02:35 UTC16 files · 3.13 GB

Use it

$ fw get speridlabs/idol
# manifest sha256 237c84ce4cfd… · 3.13 GB · 16 files
$ fw verify ./idol speridlabs/idol
fw.pyChecks the signature and every sha256, tries each source in order, resumes.
$ python3 fw.py get https://freeweights.allternit.com/manifests/speridlabs/idol.json --dir ./idol $ python3 fw.py verify ./idol ./speridlabs__idol.json
hfThe Hugging Face CLI with one setting. Same repo id.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download speridlabs/idol --revision 2731c2291fc65a797c5cb627a5e5526fc1490902 --local-dir ./idol

License

Name
Apache License 2.0
Id
Apache-2.0
Class
Permissive
Redistribution
yes
Listing
Hosted (signed)
Decided
License as declared by the publisher. No person read it. 2026-11-15
Text in
README.md
Text sha256
a19708af986ed793bd8ac054fc1b1f8f9938b9002f5ece82baa11cd68c6b2f7a
Terms gate
No extra terms beyond the license.

Read the license text

Licenses are checked against the license table. A custom license passes only after a person reads it.

Provenance

From: speridlabs <huggingface.co/speridlabs>Newsgroups: alt.freeweights.textSubject: idolDate: 2026-11-15Commit: 2731c22Signed: 2DC28CC7B26A283B ✓
Upstream
speridlabs/idol
Pinned commit
2731c2291fc65a797c5cb627a5e5526fc1490902
Manifest
idol.json · .minisig
Manifest sha256
237c84ce4cfd7bdf9b860e84744ac573c091c5d1e23a73b898c17548cbced838
Signature
minisign, Ed25519, key 2DC28CC7B26A283B
Created
2026-11-15 02:35 UTC
Generator
freeweights-manifest/0.1.0
Takedowns
None.

How to verify

$ curl -O https://freeweights.allternit.com/manifests/speridlabs/idol.json $ curl -O https://freeweights.allternit.com/manifests/speridlabs/idol.json.minisig $ minisign -Vm idol.json -P RWQ7KGqyx4zCLXtUFOqvfv8L3g+8fpKJ1FsuxPyOYMF+4KufbUxKq1Oq $ shasum -a 256 <file> # compare with the Files tab

A manifest whose signature fails must be rejected. A file whose size or sha256 does not match must be discarded. Verify a download

Model tree

1 model in the catalog name this one as their parent.

Fine-tunes
1
Fine-tunes 1
Get it
Download
$ HF_ENDPOINT=https://freeweights.allternit.com hf download speridlabs/idol
Open in Freeweights Studio

Pull, verify and run it in the Allternit app on Desktop, web or phone.

Signed manifest
minisign, key 2DC28CC7B26A283B. idol.json. Provenance. Takedown history: none.
From: laion <huggingface.co/laion>Subject: a2-rl-e2egit_large-50-32B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_exp_rpt_e2egit-large-15-8B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_exp_rpt_e2egit-v2-10-8B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_exp_rpt_pymethods2test-large-80-8B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_exp_rpt_unitsyn-python-large-10-8B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_mix_h2_language_proportional-65-8B