Model reference · open weights

dinovol_v2_ps8_with_paris4_352500

Available as managed deployment Embeddings scrollprize Embeddings 1 variants 13k dl/mo

dinovol_v2_ps8_with_paris4_352500 is an open-weight embedding model from scrollprize. AxForge deploys and operates it for you on dedicated EU-owned hardware — with the licence handled where one is required.

Available as managed deployment — configured and operated for you on dedicated EU hardware, quoted per deployment.

What it is

Released byscrollprize
TypeEmbedding models
TaskEmbeddings
Runs withpytorch
Released2026-06-04
Popularity13k downloads / month
LicenceOpen weights

About

What dinovol_v2_ps8_with_paris4_352500 is

A 3D, DINOv2/DINOv3-style self-supervised representation model trained on volumetric micro-CT scans of carbonized Herculaneum scrolls. This repository publishes the EMA teacher backbone from the paris4 training run at training step 352500.

Training code: dinovol. This is a representation/feature-extraction model — there is no task-specific head; you take its dense patch embeddings and use them downstream.

Read the full model card

Model details

Backbone familyDINOv2/EVA ViT, 3D, with 3D RoPE (DINOv3-style)
model_typev2
Embedding dim864
Depth24 blocks
Attention heads16
MLPSwiGLU, mlp_ratio 8/3
Register tokens4
Patch size8 × 8 × 8
Global crop size (train)128 × 128 × 128
Input channels1 (grayscale CT)
Positional encodingRoPE mixed (base 100, normalize_coords=separate, rescale=2.0, shift=0.05, jitter=1.05); no absolute pos-emb
Backbone parameters215.9 M
Training step352500
W&B runmodel_v2__shift005_jitter105__r342500__paris4__20260416

Pretraining objective: DINO + iBOT + KoLeo, with late dense-feature refinement via Gram anchoring (DINOv3-style), trained with AMP.

Training data

Self-supervised on 11 open-data Herculaneum volumes (scale 0) from s3://vesuvius-challenge-open-data/:

PHerc0009B, PHerc0500P2, PHerc0814, PHerc1299, PHerc0343P, PHerc0332, PHerc0139, PHercMAN5, PHerc1451, PHercMANB, PHercParis4.

Files

FileSizeUse
dinovol_v2_ps8_paris4_step352500_teacher_backbone.pt~0.86 GBRecommended for inference. Slim file: {step, config, teacher backbone weights}. Loads directly with the repo's loader.
checkpoint_step_352500_paris4.pt~5.0 GBFull training checkpoint (student, EMA teacher, optimizer, scaler, loss buffers, Gram teacher, RNG state). Use to resume training or for full reproducibility.
config.jsonThe model config block, for quick inspection.

Both .pt files embed the full training config, so the architecture is rebuilt automatically — no separate config needed at load time.

Usage

Clone the training repo and use its loader (the config travels inside the weights):

import torch
from huggingface_hub import hf_hub_download
from dinovol_2.eval import embedding_utils as eu

path = hf_hub_download(
    "scrollprize/dinovol_v2_ps8_with_paris4_352500",
    "dinovol_v2_ps8_paris4_step352500_teacher_backbone.pt",
)

loaded = eu.load_backbone_from_checkpoint(path, device="cuda")
backbone = loaded.backbone.eval()

# dense patch embeddings for a 1-channel volume, dims multiples of patch_size (8)
vol = torch.randn(1, 1, 128, 128, 128, device="cuda")
with torch.no_grad():
    out = backbone.forward_features(vol, masks=None, view_kind="global")
patch_tokens = out["x_norm_patchtokens"]   # (B, num_patches, 864)

For a normalized, windowed embedding grid over a real OME-Zarr volume, use eu.compute_patch_embedding_grid(...), which applies the checkpoint's normalization scheme and tiles the volume. The repo also ships a napari inspector at dinovol_2/eval/napari_visualizer.py.

License

MIT. See LICENSE.

Caveats

  • Trained on single-channel Herculaneum micro-CT; behavior on other modalities is untested.
  • Pretraining only — no finetuning / segmentation head is included.

From the published model card. Full card on the HuggingFace links in the sidebar.

How it works

How embedding models work

Your textsentence / documentEncodermaps meaningVectorlist of numbersAn embedding model turns text into a vector, so similar meanings sit close together — the basis of search and RAG.

Using it via the API

Call it like any OpenAI endpoint

Once AxForge deploys dinovol-v2-ps8-with-paris4-352500 for you, it answers on the OpenAI-compatible API — the same base URL and keys as every other model. (dinovol-v2-ps8-with-paris4-352500 below is illustrative; you get the exact model name on deployment.)

$ curl -sS https://api.axforge.ai/v1/embeddings \
  -H "Authorization: Bearer $AXFORGE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"dinovol-v2-ps8-with-paris4-352500","input":"text to embed"}'

Create an account — your API key is available in the console. 3M free tokens every 30 days with every new account.

© 2026 AxForge · EU-hosted AI infrastructure Pricing Docs Trust Privacy Terms