CoolFace
Modelpublic

cstr/h2ovl-800m-crispembed-GGUF

sourceHugging Faceapache-2.0updated 2mo agoView on Hugging Face
0likes66downloads
Model Card

h2ovl-mississippi-800m — CrispEmbed GGUF

Edge-sized H2OVL for CrispEmbed. Needs MSAC two-scale tiling and the h2ogpt2 prompt template (no BOS); the runtime handles both.

filesizeuse
h2ovl-800m-q4_k.gguf676 MBdefault — edge/WASM, transcribes
h2ovl-800m-q8_0.gguf1175 MBquality tier, vision tower at F16

Both transcribe a full scanned page (q4k 1749 chars, q80 1764). The registry ships q4_k deliberately: this is the small model, and the extra 499 MB does not change the decoded output.

Parity

Per-stage against a Python-blueprint reference (internvl2/h2ovl-mississippi-800m/ref.gguf in cstr/crispembed-regression-fixtures), CPU backend:

stagef16q8_0
visprojoutput0.9997010.999701
vispixelunshuffle0.9981990.998199
llmlayer01.0000000.995712
llmlayer21.0000000.494781
decoded pagetranscribestranscribes

The f16 LLM is exact. Read the q8_0 `llm_layer_2` figure with care: 0.494781 looks alarming and the model still transcribes the page correctly. The probe is a 5-token synthetic sequence, and on this checkpoint it does not track decoded quality — the value that matters is the sign. A comparable-magnitude but negative cosine (h2ovl-2b at q4_k, −0.27) does mean the output is wrong. The decoded roundtrip is the acceptance gate here, not the cosine.

Attribution

Upstream © H2O.ai, Apache-2.0 — see h2oai/h2ovl-mississippi-800m; vision tower InternViT-300M is MIT. Conversion and quantization do not relicense it. Per CrispEmbed POLICY.md, OCR output is a probabilistic reconstruction, not a faithful copy.