alt.freeweights.granite / granite-docling-258M-ONNX
From: onnx-community <huggingface.co/onnx-community>Newsgroups: alt.freeweights.graniteSubject:

granite-docling-258M-ONNX

Date: 2026-11-15Commit: e860258Signed: 2DC28CC7B26A283B ✓

Image text to text model. Onnx weights, 3.25 GB in all. Published by onnx-community under Apache-2.0.

granite3.25GBgranite-docling-258M-ONNXonnxpermissive
FactsParamsnot statedSize3.25 GBFormatsonnxTaskimage text to textLicenseApache-2.0From sourcepermissive
$ fw get onnx-community/granite-docling-258M-ONNX
# manifest sha256 be0d953610df… · 3.25 GB · 53 files
$ fw verify ./granite-docling-258M-ONNX onnx-community/granite-docling-258M-ONNX
From sourceHosted (signed)onnx-community/granite-docling-258M-ONNXLast check: 2026-11-15 05:01 UTC

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

Quantized of granite-docling-258M.

Works with

Runs with

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

Convert with

Overview

Size
3.25 GB
Weights
55.1 MB (smallest of 20 ONNX variants)
Parameters
not stated
Formats
onnx
Task
image text to text
License
Apache-2.0 (permissive)
Files
53, each with a sha256
Publisher
onnx-community
Added
2026-11-15
Section
alt.freeweights.granite
Lineage

Original release from the publisher.

Base model: ibm-granite/granite-docling-258M

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 05:01 UTCpassed

Model card

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

Usage#

Transformers.js#
import {
  AutoProcessor,
  AutoModelForVision2Seq,
  load_image,
  TextStreamer,
} from "@huggingface/transformers";

// Initialize processor and model
const model_id = "onnx-community/granite-docling-258M-ONNX";
const processor = await AutoProcessor.from_pretrained(model_id);
const model = await AutoModelForVision2Seq.from_pretrained(model_id, {
  dtype: "fp32",
  // device: "webgpu",
});

// Load images
const image1 = await load_image("https://huggingface.co/ibm-granite/granite-docling-258M/resolve/main/assets/new_arxiv.png");

// Create input messages
const messages = [
  {
    role: "user",
    content: [
      { type: "image" },
      { type: "text", text: "Convert this page to docling." },
    ],
  },
];

// Prepare inputs
const text = processor.apply_chat_template(messages, { add_generation_prompt: true });
const inputs = await processor(text, [image1], {
  // Set `do_image_splitting: true` to split images into multiple patches.
  // NOTE: This uses more memory, but can provide more accurate results.
  do_image_splitting: true,
});

// Generate outputs
const generated_ids = await model.generate({
  ...inputs,
  max_new_tokens: 4096,
  streamer: new TextStreamer(processor.tokenizer, {
    skip_prompt: true,
    skip_special_tokens: false,
  }),
});
const generated_texts = processor.batch_decode(
  generated_ids.slice(null, [inputs.input_ids.dims.at(-1), null]),
  { skip_special_tokens: true },
);
console.log(generated_texts[0]);
ONNXRuntime#
from transformers import AutoConfig, AutoProcessor
from transformers.image_utils import load_image
from huggingface_hub import hf_hub_download
import onnxruntime
import numpy as np


# 1. Load models
## Load config and processor
model_id = "onnx-community/granite-docling-258M-ONNX"
config = AutoConfig.from_pretrained(model_id)
processor = AutoProcessor.from_pretrained(model_id)

## Download models from the Hugging Face Hub
vision_model_path = hf_hub_download(model_id, subfolder="onnx", filename="vision_encoder.onnx")         # graph
hf_hub_download(model_id, subfolder="onnx", filename="vision_encoder.onnx_data")                        # weights
embed_model_path = hf_hub_download(model_id, subfolder="onnx", filename="embed_tokens.onnx")            # graph
hf_hub_download(model_id, subfolder="onnx", filename="embed_tokens.onnx_data")                          # weights
decoder_model_path = hf_hub_download(model_id, subfolder="onnx", filename="decoder_model_merged.onnx")  # graph
hf_hub_download(model_id, subfolder="onnx", filename="decoder_model_merged.onnx_data")                  # weights

## Load sessions
vision_session = onnxruntime.InferenceSession(vision_model_path)
embed_session = onnxruntime.InferenceSession(embed_model_path)
decoder_session = onnxruntime.InferenceSession(decoder_model_path)

## Set config values
num_key_value_heads = config.text_config.num_key_value_heads
head_dim = config.text_config.head_dim
num_hidden_layers = config.text_config.num_hidden_layers
eos_token_id = config.text_config.eos_token_id
image_token_id = config.image_token_id


# 2. Prepare inputs
## Create input messages
messages = [
    {
        "role": "user",
        "content": [
            {"type": "image"},
            {"type": "text", "text": "Convert this page to docling."}
        ]
    },
]

## Load image and apply processor
image = load_image("https://huggingface.co/ibm-granite/granite-docling-258M/resolve/main/assets/new_arxiv.png")
prompt = processor.apply_chat_template(messages, add_generation_prompt=True)
inputs = processor(text=prompt, images=[image], return_tensors="np")

## Prepare decoder inputs
batch_size = inputs['input_ids'].shape[0]
past_key_values = {
    f'past_key_values.{layer}.{kv}': np.zeros([batch_size, num_key_value_heads, 0, head_dim], dtype=np.float32)
    for layer in range(num_hidden_layers)
    for kv in ('key', 'value')
}
image_features = None
input_ids = inputs['input_ids']
attention_mask = inputs['attention_mask']


# 3. Generation loop
max_new_tokens = 4096
generated_tokens = np.array([[]], dtype=np.int64)
for i in range(max_new_tokens):
  inputs_embeds = embed_session.run(None, {'input_ids': input_ids})[0]

  if image_features is None:
    ## Only compute vision features if not already computed
    image_features = vision_session.run(None, dict(
        pixel_values=inputs['pixel_values'],
        pixel_attention_mask=inputs['pixel_attention_mask'].astype(np.bool_)
    ))[0]

    ## Merge text and vision embeddings
    inputs_embeds[inputs['input_ids'] == image_token_id] = image_features.reshape(-1, image_features.shape[-1])

  logits, *present_key_values = decoder_session.run(None, dict(
      inputs_embeds=inputs_embeds,
      attention_mask=attention_mask,
      **past_key_values,
  ))

  ## Update values for next generation loop
  input_ids = logits[:, -1].argmax(-1, keepdims=True)
  attention_mask = np.concatenate([attention_mask, np.ones((batch_size, 1), dtype=attention_mask.dtype)], axis=-1)
  for j, key in enumerate(past_key_values):
    past_key_values[key] = present_key_values[j]

  generated_tokens = np.concatenate([generated_tokens, input_ids], axis=-1)
  if (input_ids == eos_token_id).all():
    break

  ## (Optional) Streaming
  print(processor.decode(input_ids[0]), end='')
print()


# 4. Do something with the final output
print(processor.batch_decode(generated_tokens, skip_special_tokens=False)[0])

See example output

<doctag><page_header><loc_115><loc_27><loc_385><loc_34>Energy Budget of WASP-121 b from JWST/NIRISS Phase Curve</page_header>
<page_header><loc_454><loc_28><loc_459><loc_34>9</page_header>
<text><loc_41><loc_42><loc_239><loc_88>while the kernel weights are structured as ( N$_{slice}$ , N$_{time}$ ). This precomputation significantly accelerates our calculations, which is essential since the longitudinal slices are at least partially degenerate with one another. Consequently, the fits require more steps and walkers to ensure proper convergence.</text>
<text><loc_41><loc_89><loc_239><loc_206>To address this, we follow a similar approach to our sinusoidal fits using emcee , but we increase the total number of steps to 100,000 and use 100 walkers. Na¨ıvely, the fit would include 2 N$_{slice}$ + 1 parameters: N$_{slice}$ for the albedo values, N$_{slice}$ for the emission parameters, and one additional scatter parameter, σ . However, since night-side slices do not contribute to the reflected light component, we exclude these albedo values from the fit. In any case, our choice of 100 walkers ensures a sufficient number of walkers per free parameter. Following Coulombe et al. (2025) we set an upper prior limit of 3 / 2 on all albedo slices as a fully Lambertian sphere ( A$_{i}$ = 1 ) corresponds to a geometric albedo of A$_{g}$ = 2 / 3. For thermal emission we impose a uniform prior between 0 and 500 ppm for each slice.</text>
<text><loc_41><loc_207><loc_239><loc_269>We choose to fit our detrended lightcurves considering 4, 6 and 8 longitudinal slices ( N$_{slice}$ = 4 , 6 , 8). However, we show the results of the simplest 4 slice model. As in our previous fits, we conduct an initial run with 25,000 steps (25% of the total run) and use the maximumprobability parameters from this preliminary fit as the starting positions for the final 75,000-step run. We then discard the first 60% of the final run as burn-in.</text>
<section_header_level_1><loc_73><loc_276><loc_207><loc_283>2.5. Planetary Effective Temperature</section_header_level_1>
<text><loc_41><loc_286><loc_239><loc_348>Phase curves are the only way to probe thermal emission from the day and nightside of an exoplanet and hence determine its global energy budget (Partier & Crossfield 2018). The wavelength range of NIRISS/SOSS covers a large portion of the emitted flux of WASP-121 b ( ∼ 50-83%; see Figure 2), enabling a precise and robust constraint of the planet's energy budget.</text>
<text><loc_41><loc_349><loc_239><loc_364>We convert the fitted F$_{p}$ / F$_{∗}$ emission spectra to brightness temperature by wavelength,</text>
<formula><loc_60><loc_368><loc_238><loc_387>T _ { b r i g h t } = \frac { h c } { k \lambda } \cdot \left [ \ln \left ( \frac { 2 b c ^ { 2 } } { \lambda ^ { 5 } B _ { \lambda , p l a n e t } } + 1 \right ) \right ] ^ { - 1 } ,</formula>
<text><loc_41><loc_391><loc_178><loc_398>where the planet's thermal emission is</text>
<formula><loc_84><loc_403><loc_238><loc_419>B _ { \lambda , \text {planet} } = \frac { F _ { p } / F _ { * } } { ( R _ { p } / R _ { * } ) ^ { 2 } } \cdot B _ { \lambda , \text {star} } \, .</formula>
<text><loc_41><loc_425><loc_239><loc_455>There are many ways of converting brightness temperatures to effective temperature, including the ErrorWeighted Mean (EWM), Power-Weighted mean (PWM) and with a Gaussian Process (Schwartz & Cowan 2015;</text>
<chart><loc_273><loc_49><loc_454><loc_134><line_chart><caption><loc_261><loc_141><loc_459><loc_264>Figure 2. Estimated captured flux of the planet assuming the planet radiates as a blackbody. The captured flux is calculated as the ratio of the integrated blackbody emission within the instrument's band pass to the total emission over all wavelengths, i.e., γ = ∫ λ$_{max}$ λ$_{min}$ B ( λ, T ) dλ/ ∫ ∞ 0 B ( λ, T ) dλ . The captured flux fraction is shown for NIRISS SOSS [0.6-2.85 µ m] (red line); Hubble WFC3 [1.12-1.64 µ m] (dashed green line); NIRSpec G395H [2.7-5.15 µ m] (dash dotted blue line). The red-shaded region shows the temperature range on WASP-121 b based on our T$_{eff}$ estimates. Red dashed lines indicate the boundaries of the planet's temperature range within the NIRISS SOSS captured flux fraction. From this we estimate that these observations capture between 55% and 82% of the planet's bolometric flux, depending on orbital phase. Using the minimum temperature from the NAMELESS fit, this estimate decreases to 50%. In either case, the wavelength coverage of NIRISS exceeds that of any other instrument.</caption></chart>
<text><loc_261><loc_273><loc_459><loc_359>Pass et al. 2019). In this work, we elect to compute our effective temperature estimates with a novel method that is essentially a combination of the PWM and EWM. We create the effective temperature by using a simple Monte Carlo process. First, we perturb our F$_{p}$ / F$_{s}$ emission spectra at each point in the orbit by a Gaussian based on the measurement uncertainty. Our new emission spectrum is then used to create an estimate of the brightness temperature spectrum. This process is repeated at each orbital phase. We then estimate the effective temperature, T$_{eff}$ for a given orbital phase as</text>
<formula><loc_317><loc_362><loc_459><loc_382>T _ { \text {eff} } = \frac { \sum _ { i = 1 } ^ { N } w _ { i } T _ { \text {bright} , i } } { \sum _ { i = 1 } ^ { N } w _ { i } } ,</formula>
<text><loc_261><loc_384><loc_459><loc_414>where w$_{i}$ is the weight for the i -th wavelength given by the fraction of the planet's bolometric flux that falls within that wavelength bin scaled by the inverse variance of the measurement,</text>
<formula><loc_305><loc_417><loc_459><loc_437>w _ { i } = \frac { \int _ { \lambda _ { i } } ^ { \lambda _ { i } + 1 } B ( \lambda _ { i } , T _ { \text {est} } ) \, d \lambda } { \int _ { 0 } ^ { \infty } B ( \lambda _ { i } , T _ { \text {est} } ) \, d \lambda } \cdot \frac { 1 } { \sigma _ { i } ^ { 2 } } ,</formula>
<text><loc_261><loc_440><loc_459><loc_454>with T$_{est}$ representing an estimated effective temperature at the orbital phase of interest. When computing</text>
</doctag><|end_of_text|>

Files

53 files · 3.25 GBWeights 55.1 MB (smallest of 20 ONNX variants). Sizes and sha256 from the signed manifest.
Show all 53 files with their sha256
FileSizesha256
.gitattributes2.95 KB251596822cea653269f914c2ebf8692dc22f2935fdfd2f2b37a85d4e0f0f29e0
README.md11.8 KB3e247eb6336547b855cd42ea8ba4b31232f18a40a6dca6d1170d8c00cbf77364
added_tokens.json35 B882e49757a3bea90e00df1d2dc8c18b2b526ff77380db20439feeb1f053a63cd
chat_template.jinja588 Ba4b0bf4348b014acca131da664d05b61e39d5dc8af980f1913846a57ccc6d289
config.json1.82 KB74ea7ab2bb6f22521171c747abbc1562b4c7d28a98a3b6708f36db2ac31caef2
generation_config.json174 Bbf47a1f276dec7f6fa0a926e7aeeb5dc22087359d46777410b0bb24282bb4325
merges.txt917 KBb6fe424e334903f7fb84d3a106d9730455f4744b9fe3c21ee136d97a00e72502
onnx/decoder_model_merged.onnx203 KB38773bc6f81b1436e83531f7050ede3b348ad4ca5c15b2ba1eb29a3563136c86
onnx/decoder_model_merged.onnx_data658 MBa4880a20e87b0f431d85388b9a2562980399bbee4c7752b58d55c31b2f53d31c
onnx/decoder_model_merged_fp16.onnx205 KB3836da836d419efc82a8c833eb2ec7e961b7162ebad88f8ed637d3e359a829cf
onnx/decoder_model_merged_fp16.onnx_data329 MB25882fe58b828ecc96c3557534d255a22397f0ae71981586d822ab6a46a7a242
onnx/decoder_model_merged_q4.onnx282 KB4ca90fd8908efecac1d3216aa948ac5e240a58bcf5d46381c7eb4f2322cfa58d
onnx/decoder_model_merged_q4.onnx_data105 MB0caa784708a67cd181c188bfc4e7290d7a968533127a8b176ae65275f93d4240
onnx/decoder_model_merged_q4f16.onnx284 KB1293c530ba2015f4297a74f895302c9a9f4989ac615f7ae3e6a87155cb46256e
onnx/decoder_model_merged_q4f16.onnx_data93.4 MB554a113dee5d0874ab27264da4bef6f0c1b30cb54eeb6de49069ebdf621d7d34
onnx/decoder_model_merged_quantized.onnx1.76 MB81560c7e40adbbb9c934c8677885b94ab39e70201a8479743fc968dcfae25d63
onnx/decoder_model_merged_quantized.onnx_data166 MB29ad09d8d5808e3c3182e77797b6396d842192d56c5c51131e92b29132e640dc
onnx/embed_tokens.onnx434 B5af180e9c14c139924a7f897df8551d6aa24d603168c5055a362c82f6bf71c9f
onnx/embed_tokens.onnx_data231 MBf744cb8c703d491791f13dc1167aa646308adb98a55ffee6634de4dd76c6a7f0
onnx/embed_tokens_fp16.onnx637 B17b2673dcc730601d4ed24d6f751ce13cd74d7c190a6a399c3d7301af9e894ed
onnx/embed_tokens_fp16.onnx_data116 MB7c75bc6a50053828de4d49f7646001cbd71605520352396affb089e4e68f1f05
onnx/embed_tokens_int8.onnx762 Bd99092229bfe6929f9b03af27f4dc00251b5fde653c6fcf0491264b60beb3134
onnx/embed_tokens_int8.onnx_data57.8 MBf384533f15a3caf44f8fc541984776e6d06c24c2251752e13c8aa7b34907b810
onnx/embed_tokens_q4.onnx437 B200949da0df69d6534e0df55cf3538895b44e2ba13b1634690148617b3a764cc
onnx/embed_tokens_q4.onnx_data231 MBf744cb8c703d491791f13dc1167aa646308adb98a55ffee6634de4dd76c6a7f0
onnx/embed_tokens_q4f16.onnx485 B3ee519b5edfb748cd9994702581d91d1e6002d734c754c29c274fe610cfa274c
onnx/embed_tokens_q4f16.onnx_data116 MB194eb237967b6c4c8805e65ca6948b532a5f2db3c72ce83f64c81d56052b0485
onnx/embed_tokens_quantized.onnx767 Bb9832aee6f125d71ff52fd4a31d305ecd44d721a746a18856663514600ac5d74
onnx/embed_tokens_quantized.onnx_data57.8 MBf384533f15a3caf44f8fc541984776e6d06c24c2251752e13c8aa7b34907b810
onnx/embed_tokens_uint8.onnx763 Bbfebfb6a4f95947be6a4550951624882f56ffffac9a4387f87978cb81a3da5f6
onnx/embed_tokens_uint8.onnx_data57.8 MBf384533f15a3caf44f8fc541984776e6d06c24c2251752e13c8aa7b34907b810
onnx/vision_encoder.onnx297 KB6e36ea30b1d36caf50ef040c98529796477be614e2b6b89a70afefb5b4a5d394
onnx/vision_encoder.onnx_data374 MBf7ffa6adbcd3ba15c3419b65497a096dd6e2bd4e7a6dc739a196e603a6400318
onnx/vision_encoder_bnb4.onnx315 KB122544ada267e170359523ff55cf03574222da2955c3463558142c70a01191a9
onnx/vision_encoder_bnb4.onnx_data57.8 MBcd4269fc279cdb2e8a0d78cb349578561b6cf1017d7ac9b428a05b8e99d30d29
onnx/vision_encoder_fp16.onnx299 KB555c5a49395b2dedfaa3e460641adba5256818e9d55d5c171140334ebb2e56ca
onnx/vision_encoder_fp16.onnx_data187 MB54a66891f1c3093b29357c2ec206e08f658c5fe86acf39449831527ecd254f3f
onnx/vision_encoder_int8.onnx395 KB4ffd6652e0a091ccb814d1d34b82b893533e2e86bc815f1b942dd7eb0b5dcd84
onnx/vision_encoder_int8.onnx_data93.9 MB384410caa9c5dc513059105b91eda0b4543ed1e6ee15c3cc0aba0ca2ac6c23a4
onnx/vision_encoder_q4.onnx314 KBf3ad36f51326cd9b4a2abf66643691f2d1e6339a8d1425401de151c329907b4b
onnx/vision_encoder_q4.onnx_data63.5 MB610782e8b0c3d01b6d69191d2b55a5f7c5d108c89eba746206f2988f2df1063d
onnx/vision_encoder_q4f16.onnx316 KB422362254ffb41f59d4fe13785a26056b637fa024770bc99e7547f9d31a72c21
onnx/vision_encoder_q4f16.onnx_data54.8 MBd9d41942328cd341e7487bf91b9334247de88e4a7d2ff1bc402fb31cc2ca97c9
onnx/vision_encoder_quantized.onnx396 KBc4c146018c433b2192b903c0c4f14654736ef161d5fa0cd1359b37d325b0b3eb
onnx/vision_encoder_quantized.onnx_data93.9 MB27011946e5136b299c27a2a172f3d34350b7bd1b5ecf2c4e4188e1379b1b49f6
onnx/vision_encoder_uint8.onnx395 KB3396d939412fdfa60ef4fb6f4d95cd6463d3e082344964f23d65ffac56998ade
onnx/vision_encoder_uint8.onnx_data93.9 MB27011946e5136b299c27a2a172f3d34350b7bd1b5ecf2c4e4188e1379b1b49f6
preprocessor_config.json486 B6cb6e36d6fcb88ca1502c4a26750715dc3e7dedddc9a8f17b27d8d167d1457e7
processor_config.json68 Be7bff42da73ae9eec9042ef20e066e11f1ee20f025358ff79131e3c0fb549b46
special_tokens_map.json1.08 KB3e1c6950fd5624d1e6d60eea7110882c9743e37fa643364e17094466331e1cb5
tokenizer.json4.13 MB1cbe567c74f76ff6713446ed1cfb9bd50bbd164ae99e59e79d81b5efabe01113
tokenizer_config.json18.6 KBe584ead05a3639a2e026b77b39f94175f5fb5be63ad8a30f90fea8fa1bc852a5
vocab.json1.61 MBe2bad0ce74e6ddfece426ef99e18067f4a6c3d4e65bb6dd9cfd638450cca0142
VersionsEach time the pinned upstream commit or file list changed in this repo. Newest first.
Upstream commitDateContents
e8602580df pinned now2026-11-15 05:01 UTC53 files · 3.25 GB

Use it

$ fw get onnx-community/granite-docling-258M-ONNX
# manifest sha256 be0d953610df… · 3.25 GB · 53 files
$ fw verify ./granite-docling-258M-ONNX onnx-community/granite-docling-258M-ONNX
fw.pyChecks the signature and every sha256, tries each source in order, resumes.
$ python3 fw.py get https://freeweights.allternit.com/manifests/onnx-community/granite-docling-258M-ONNX.json --dir ./granite-docling-258M-ONNX $ python3 fw.py verify ./granite-docling-258M-ONNX ./onnx-community__granite-docling-258M-ONNX.json
hfThe Hugging Face CLI with one setting. Same repo id.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download onnx-community/granite-docling-258M-ONNX --revision e8602580df77443fc3421cf3bae0601da601e5c6 --local-dir ./granite-docling-258M-ONNX

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
3e247eb6336547b855cd42ea8ba4b31232f18a40a6dca6d1170d8c00cbf77364
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: onnx-community <huggingface.co/onnx-community>Newsgroups: alt.freeweights.graniteSubject: granite-docling-258M-ONNXDate: 2026-11-15Commit: e860258Signed: 2DC28CC7B26A283B ✓
Upstream
onnx-community/granite-docling-258M-ONNX
Pinned commit
e8602580df77443fc3421cf3bae0601da601e5c6
Manifest
granite-docling-258M-ONNX.json · .minisig
Manifest sha256
be0d953610df89ae2275428d4869139c93372a71b12cdfeb8fe421ed7f6899f3
Signature
minisign, Ed25519, key 2DC28CC7B26A283B
Created
2026-11-15 05:01 UTC
Generator
freeweights-manifest/0.1.0
Takedowns
None.

How to verify

$ curl -O https://freeweights.allternit.com/manifests/onnx-community/granite-docling-258M-ONNX.json $ curl -O https://freeweights.allternit.com/manifests/onnx-community/granite-docling-258M-ONNX.json.minisig $ minisign -Vm granite-docling-258M-ONNX.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

Parent

ibm-granite/granite-docling-258M · this model is a quantization of it

No model in the catalog names this one as its parent.

Get it
Download
$ HF_ENDPOINT=https://freeweights.allternit.com hf download onnx-community/granite-docling-258M-ONNX
Open in Freeweights Studio

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

Signed manifest
minisign, key 2DC28CC7B26A283B. granite-docling-258M-ONNX.json. Provenance. Takedown history: none.
From: ibm-granite <huggingface.co/ibm-granite>Subject: GneissWeb.7B_ablation_model_on_350B_FineWeb.Edu.seed1
From: ibm-granite <huggingface.co/ibm-granite>Subject: GneissWeb.7B_ablation_model_on_350B_FineWeb.Edu.seed2
From: ibm-granite <huggingface.co/ibm-granite>Subject: GneissWeb.7B_ablation_model_on_350B_FineWeb.Edu.seed3
From: ibm-granite <huggingface.co/ibm-granite>Subject: GneissWeb.7B_ablation_model_on_350B_FineWeb.seed1
From: ibm-granite <huggingface.co/ibm-granite>Subject: GneissWeb.7B_ablation_model_on_350B_FineWeb.seed2
From: ibm-granite <huggingface.co/ibm-granite>Subject: GneissWeb.7B_ablation_model_on_350B_FineWeb.seed3