No description
Find a file
2026-05-28 08:14:30 -07:00
iTexSnip update logo 2025-03-28 15:22:33 -06:00
iTexSnip.xcodeproj update logo 2024-10-27 22:11:07 -06:00
.gitattributes track onnx model files 2025-03-28 14:00:13 -06:00
api.py added basic ratings endpoint 2024-10-23 10:49:35 -06:00
demo.gif add output demo 2024-10-27 22:56:25 -06:00
LICENSE Add MIT License to the project 2026-05-28 08:14:30 -07:00
README.md add download link for weights 2025-03-28 13:11:14 -06:00
requirements.txt added basic ratings endpoint 2024-10-23 10:49:35 -06:00

iTeXSnip

Image -> LaTeX

iTeXSnip App Icon

Demo GIF

Works with handwritten formulae as well!

TODO

V1

  • Rating API
  • Preferences
    • Model load preferences
    • Detailed view preferences
    • Rating API server
  • Complete Detailed Snippet View

V2

  • Math Solver
  • TeX Snippet Editor
  • Image Export
  • UI Overhaul
  • Optimizations

Misc

Quantization

You can download and replace the quantized files with non-quantized versions from here

Encoder Model

python -m onnxruntime.quantization.preprocess --input  iTexSnip/models/encoder_model.onnx --output  encoder-infer.onnx
import onnx
from onnxruntime.quantization import quantize_dynamic, QuantType
og = "encoder-infer.onnx"
quant = "encoder-quant.onnx"
quantized_model = quantize_dynamic(og, quant, nodes_to_exclude=['/embeddings/patch_embeddings/projection/Conv'])

It might be better if we quantize the encoder using static quantization.

Decoder Model

python -m onnxruntime.quantization.preprocess --input  iTexSnip/models/decoder_model.onnx --output  decoder-infer.onnx
import onnx
from onnxruntime.quantization import quantize_dynamic, QuantType
og = "decoder-infer.onnx"
quant = "decoder-quant.onnx"
quantized_model = quantize_dynamic(og, quant)