Skip to content
ModelListedExternal
Browse files

Texo Distill GGUF

GGUF-quantized versions of Texo's distilled PPFormulaNet-S model for on-device LaTeX OCR.

KindModelBase modelalephpi/FormulaNetVersionRevision c28c648Bgrade

Model source

Kind
Model
File size
12.5–39.0 MB
Base model
alephpi/FormulaNet
Version
vRevision c28c648
Updated
Oct 30, 2026
Downloads
137
Source
Hugging Face

Source description

Texo-Distill GGUF — Printed Math OCR

GGUF-quantized versions of Texo's distilled PPFormulaNet-S model for on-device LaTeX OCR.

Model Description

PropertyValue
ArchitectureHGNetv2 (CNN encoder) + MBart (Transformer decoder)
Parameters20M
Input384x384 RGB image
OutputLaTeX token sequence
Vocab1264 tokens (BPE, math-specific)
EncoderHGNetv2: 4-stage CNN (Conv-BN-ReLU), output 2048-dim
DecoderMBart: 2 layers, 16 heads, d_model=384, FFN=1536
Training dataUniMER-1M (CC-BY-4.0)
Distilled fromPaddleOCR PP-FormulaNet-S (Apache-2.0)

Performance (UniMER-Test)

MetricSPECPESCEHWE
BLEU0.90140.89090.70340.8606
Edit distance0.07800.10420.19410.0995

Available Variants

FileQuantSizeQuality
texo-distill-f16.ggufFP1639 MBFull precision
texo-distill-q8_0.ggufQ8_022 MBIdentical to FP16
texo-distill-q4_k.ggufQ4_K13 MBSlightly degraded

Recommended: texo-distill-q8_0.gguf (22 MB) — same quality as full precision at 3.6x compression.

Usage with CrispEmbed

# CLI
crispembed -m texo-distill-q8_0.gguf --ocr formula.png

# Auto-detection: the GGUF metadata identifies this as "ppformulanet" architecture
# Works with any CrispEmbed OCR endpoint (CLI, FFI, Flutter)

Image Preprocessing

The model expects UniMERNet-style preprocessing:

  1. Convert to grayscale, replicate to 3 channels
  2. Resize maintaining aspect ratio to fit 384x384
  3. Pad with black (0) to fill 384x384
  4. Normalize: mean=0.7931, std=0.1738

License

AGPL-3.0 — inherited from the Texo training code and distilled weights. The original PPFormulaNet-S backbone weights are Apache-2.0 (PaddleOCR), and the training data UniMER-1M is CC-BY-4.0.

Users must accept AGPL-3.0 terms before downloading.

Credits

  • Texo by Sicheng Mao — distillation training, architecture design
  • PaddleOCR PP-FormulaNet-S — backbone architecture and pretrained weights (Apache-2.0)
  • UniMERNet — training dataset and tokenizer (Apache-2.0 / CC-BY-4.0)
  • CrispEmbed — GGUF conversion and C++ inference engine

Conversion

Converted using convert-ppformulanet-to-gguf.py from CrispEmbed. BatchNorm layers folded into convolutions. Quantized with crispembed-quantize.

Sources

1 source
Hugging FacePrimaryVersion c28c64819b4ddf621d0c77c8c31c0fafb0c28b7a
huggingface.co/cstr/texo-distill-gguf/tree/c28c64819b4ddf621d0c77c8c31c0fafb0c28b7a

Verified Oct 30

Download files

Repository files

File inventory only; completeness is unverified.

Model artifacts

3 artifacts

texo-distill-f16.gguf

gguf · 39.0 MB · SHA-256 a00ca4a0c2ec…63fe · Hugging Face

Download file

texo-distill-q4_k.gguf

gguf · 12.5 MB · SHA-256 bd2a4cf74b5d…0849 · Hugging Face

Download file

texo-distill-q8_0.gguf

gguf · 21.7 MB · SHA-256 546cd4acad17…83f9 · Hugging Face

Download file

Source excerpts

3 excerpts

--- license: agpl-3.0 library_name: gguf pipeline_tag: image-to-text tags: - latex-ocr - math - formula-recognition - gguf - crispembed - ppformulanet - texo base_model: alephpi/FormulaNet --- # Texo-Distill GGUF — Printed Math OCR GGUF-quantized versions of [Texo](https://github.com/alephpi/Texo)'s distilled PPFormulaNet-S model for on-device LaTeX OCR. ## Model Description | Property | Value | |---|---| | Architecture | HGNetv2 (CNN encoder) + MBart (Transformer decoder) | | Parameters | 20M | | Input | 384x384 RGB image | | Output | LaTeX token sequence | | Vocab | 1264 tokens (BPE, math-specific) | | Encoder | HGNetv2: 4-stage CNN (Conv-BN-ReLU), output 2048-dim | | Decoder | MBart: 2 layers, 16 heads, d_model=384, FFN=1536 | | Training data | UniMER-1M (CC-BY-4.0) | | Distilled from | PaddleOCR PP-FormulaNet-S (Apache-2.0) | ## Performance (UniMER-Test) | Metric | SPE | CPE | SCE | HWE | |---|---|---|---|---| | BLEU | 0.9014 | 0.8909 | 0.7034 | 0.8606 | | Edit distance | 0.0780 | 0.1042 | 0.1941 | 0.0995 | ## Available Variants | File | Quant | Size | Quality | |---|---|---|---| | `texo-distill-f16.gguf` | FP16 | 39 MB | Full precision | | `texo-distill-q8_0.gguf` | Q8_0 | 22 MB | Identical to FP16 | | `texo-distill-q4_k.gguf` | Q4_K | 13 MB | Slightly degraded | **Recommended: `texo-distill-q8_0.gguf`** (22 MB) — same quality as full precision at 3.6x compression. ## Usage with CrispEmbed ```bash # CLI crispembed -m texo-distill-q8_0.gguf --ocr formula.png # Auto-detection: the GGUF metadata identifies this as "ppformulanet" architecture # Works with any CrispEmbed OCR endpoint (CLI, FFI, Flutter) ``` ## Image Preprocessing The model expects UniMERNet-style preprocessing: 1. Convert to grayscale, replicate to 3 channels 2. Resize maintaining aspect ratio to fit 384x384 3. Pad with black (0) to fill 384x384 4. Normalize: mean=0.7931, std=0.1738 ## License **AGPL-3.0** — inherited from the [Texo](https://github.com/alephpi/Texo) training code and distilled weights. The original PPFormulaNet-S backbone weights are Apache-2.0 (PaddleOCR), and the training data UniMER-1M is CC-BY-4.0. Users must accept AGPL-3.0 terms before downloading. ## Credits - [Texo](https://github.com/alephpi/Texo) by Sicheng Mao — distillation training, architecture design - [PaddleOCR PP-FormulaNet-S](https://github.com/PaddlePaddle/PaddleOCR) — backbon...

Source context: 137 downloads · 0 likes · Pipeline image-to-text · Library gguf · Repo cstr/texo-distill-gguf

Source context: 267 downloads · 0 likes · Pipeline image-to-text · Library gguf · Repo cstr/texo-distill-gguf