← Open Source
potamides

DeTikZify

Synthesizing Graphics Programs for Scientific Figures and Sketches with TikZ.

ModelsDomain-specific modelsPython
Open on GitHub
Momentum
+0stars in 24 hours0.0%
1.82k
Stars
97
Forks
+0
This week
2
Contributors
Created 2023-11-27 · Updated 2026-10-14 · #9415 today
Top developers

potamides/DeTikZify is ranked 9,415 with 1,824 stars.

Same-category comparison

potamides/DeTikZify is ranked 9,415 among these 8 peers; zjy-ucas/ChineseNER is ranked 9,419.

Same-category comparison
NameRankMetrics
AlibabaResearch/AdvancedLiterateMachinery9,399
Language:
C++
Stars:
1,833
Forks:
195
Description:
A collection of original, innovative ideas and algorithms towards Advanced Literate Machinery. This project is maintained by the OCR Team in the Language Technology Lab, Tongyi Lab, Alibaba Group.
Kyubyong/tacotron9,401
Language:
Python
Stars:
1,833
Forks:
427
Description:
A TensorFlow Implementation of Tacotron: A Fully End-to-End Text-To-Speech Synthesis Model.
NVIDIA/semantic-segmentation9,402
Language:
Python
Stars:
1,832
Forks:
388
Description:
Nvidia Semantic Segmentation monorepo.
NVlabs/stylegan2-ada9,407
Language:
Python
Stars:
1,828
Forks:
481
Description:
StyleGAN2 with adaptive discriminator augmentation (ADA) - Official TensorFlow implementation.
zjy-ucas/ChineseNER9,419
Language:
Python
Stars:
1,823
Forks:
565
Description:
A neural network model for Chinese named entity recognition.
shunsukesaito/PIFu9,423
Language:
Python
Stars:
1,821
Forks:
346
Description:
This repository contains the code for the paper "PIFu: Pixel-Aligned Implicit Function for High-Resolution Clothed Human Digitization".
acids-ircam/RAVE9,433
Language:
Python
Stars:
1,816
Forks:
223
Description:
Official implementation of the RAVE model: a Realtime Audio Variational autoEncoder.
thu-ml/RoboticsDiffusionTransformer9,438
Language:
Python
Stars:
1,813
Forks:
169
Description:
RDT-1B: a Diffusion Foundation Model for Bimanual Manipulation.
Key parameters and specifications
Key parameters and specifications
ParameterValue
LanguagePython
CategoryModels
SubcategoryDomain-specific models
Stars1,824
Forks97
Contributors2
Created date2023-11-27
Updated date2026-10-14
Stars in 1 day0
Stars in 7 days0
Rank9,415
Previous rank9,456
Rank change41
7-day stars rank12,293
Previous 7-day stars rank7,939
7-day stars rank change-4,354
Total stars rank6,861
Previous total stars rank6,853
Total stars rank change-8
CountryGermany
README summary

DeTi*k*Zify Synthesizing Graphics Programs for Scientific Figures and Sketches with Ti*k*Z Creating high-quality scientific figures can be time-consuming and challenging, even though sketching ideas on paper is relatively easy. Furthermore, recreating existing figures that are not stored in formats preserving semantic information is equally complex. To tackle this problem, we introduce DeTi*k*Zify, a novel multimodal language model that automatically synthesizes scientific figures as semantics-preserving Ti*k*Z graphics programs based on

sketches and existing figures. We also introduce an MCTS-based inference algorithm that enables DeTi*k*Zify to iteratively refine its outputs without the need for additional training. News **2025-06-30**: We release DeTi*k*Zify v2. 5 (8b), our latest model, which builds on DeTi*k*Zify v2 using reinforment learning from self-feedback (RLSF). We make it the new default model in our Hugging Face Space. Check out the model card for more information. **2025-06-26

**: Ti*k*Zero was accepted as a highlight paper at ICCV 2025! **2025-03-17**: We release Ti*k*Zero adapters which plug directly into DeTi*k*Zify v2 (8b) and enable zero-shot text-conditioning, and Ti*k*Zero+ with additional end-to-end fine-tuning. For more information see our paper and usage examples below. **2024-12-05**: We release DeTi*k*Zify v2 (8b), our new DeTi*k*Zify model that surpasses all previous versions in our

evaluation. Check out the model card for more information. **2024-09-24**: DeTi*k*Zify was accepted at NeurIPS 2024 as a spotlight paper! TIP] If you encounter difficulties with installation or inference on your own hardware, consider visiting our Hugging Face Space (please note that restarting the space can take up to 30 minutes). Should you experience long queues, you have the option to duplicate it with a paid private GPU runtime or run it locally with Docker. Additionally

, you can try our demo on Google Colab. However, setting up the environment there might take some time, and the free tier only supports inference for the 1b models. The Python package of DeTi*k*Zify can be easily installed using pip: The extra is only required if you plan to use the DeTi*k*Zify v1 models. If you only plan to use DeTi*k*Zify v2 you can remove it. If your goal is to run the included

examples, it is easier to clone the repository and install it in editable mode like this: In addition, DeTi*k*Zify requires a full TeX Live 2023 installation, ghostscript, and poppler which you have to install through your package manager or via other means. TIP] For interactive use and general usage tips, we recommend checking out our web UI, which can be started directly from the command line (use for a list of all options): If all required dependencies are

installed, the full range of DeTi*k*Zify features such as compiling, rendering, and saving Ti*k*Z graphics, and

Frequently asked questions

How many stars and forks are recorded?

potamides/DeTikZify has 1,824 stars and 97 forks.

What is the repository rank?

potamides/DeTikZify is ranked 9,415.

What language and category are recorded?

potamides/DeTikZify has 1,824 stars, uses Python and belongs to Models.

Which repository is closest in rank?

potamides/DeTikZify is compared with zjy-ucas/ChineseNER, ranked 9,419 with 1,823 stars.

README

DeTikZify

Synthesizing Graphics Programs for Scientific Figures and Sketches with TikZ

Creating high-quality scientific figures can be time-consuming and challenging, even though sketching ideas on paper is relatively easy. Furthermore, recreating existing figures that are not stored in formats preserving semantic information is equally complex. To tackle this problem, we introduce DeTikZify, a novel multimodal language model that automatically synthesizes scientific figures as semantics-preserving TikZ graphics programs based on sketches and existing figures. We also introduce an MCTS-based inference algorithm that enables DeTikZify to iteratively refine its outputs without the need for additional training.

https://github.com/potamides/DeTikZify/assets/53401822/203d2853-0b5c-4a2b-9d09-3ccb65880cd3

News

Installation

[!TIP] If you encounter difficulties with installation or inference on your own hardware, consider visiting our Hugging Face Space (please note that restarting the space can take up to 30 minutes). Should you experience long queues, you have the option to duplicate it with a paid private GPU runtime or run it locally with Docker. Additionally, you can try our demo on Google Colab. However, setting up the environment there might take some time, and the free tier only supports inference for the 1b models.

The Python package of DeTikZify can be easily installed using pip:

pip install 'detikzify[legacy] @ git+https://github.com/potamides/DeTikZify'

The [legacy] extra is only required if you plan to use the DeTikZifyv1 models. If you only plan to use DeTikZifyv2 you can remove it. If your goal is to run the included examples, it is easier to clone the repository and install it in editable mode like this:

git clone https://github.com/potamides/DeTikZify
pip install -e DeTikZify[examples]

In addition, DeTikZify requires a full TeX Live 2023 installation, ghostscript, and poppler which you have to install through your package manager or via other means.

Usage

[!TIP] For interactive use and general usage tips, we recommend checking out our web UI, which can be started directly from the command line (use --help for a list of all options):

python -m detikzify.webui --light

If all required dependencies are installed, the full range of DeTikZify features such as compiling, rendering, and saving TikZ graphics, and MCTS-based inference can be accessed through its programming interface:

DeTikZify Example

from operator import itemgetter

from detikzify.model import load
from detikzify.infer import DetikzifyPipeline

image = "https://w.wiki/A7Cc"
pipeline = DetikzifyPipeline(*load(
    model_name_or_path="nllg/detikzify-v2.5-8b",
    device_map="auto",
    torch_dtype="bfloat16",
))

# generate a single TikZ program
fig = pipeline.sample(image=image)

# if it compiles, rasterize it and show it
if fig.is_rasterizable:
    fig.rasterize().show()

# run MCTS for 10 minutes and generate multiple TikZ programs
figs = set()
for score, fig in pipeline.simulate(image=image, timeout=600):
    figs.add((score, fig))

# save the best TikZ program
best = sorted(figs, key=itemgetter(0))[-1][1]
best.save("fig.tex")

Through TikZero adapters and TikZero+ it is also possible to synthesize graphics programs conditioned on text (cf. our paper for details). Note that this currently only supported through the programming interface:

TikZero+ Example

from detikzify.model import load
from detikzify.infer import DetikzifyPipeline

caption = "A multi-layer perceptron with two hidden layers."
pipeline = DetikzifyPipeline(*load(
    model_name_or_path="nllg/tikzero-plus-10b",
    device_map="auto",
    torch_dtype="bfloat16",
))

# generate a single TikZ program
fig = pipeline.sample(text=caption)

# if it compiles, rasterize it and show it
if fig.is_rasterizable:
    fig.rasterize().show()

TikZero Example

from detikzify.model import load, load_adapter
from detikzify.infer import DetikzifyPipeline

caption = "A multi-layer perceptron with two hidden layers."
pipeline = DetikzifyPipeline(
    *load_adapter(
        *load(
            model_name_or_path="nllg/detikzify-v2-8b",
            device_map="auto",
            torch_dtype="bfloat16",
        ),
        adapter_name_or_path="nllg/tikzero-adapter",
    )
)

# generate a single TikZ program
fig = pipeline.sample(text=caption)

# if it compiles, rasterize it and show it
if fig.is_rasterizable:
    fig.rasterize().show()

More involved examples, for example for evaluation and training, can be found in the examples folder.

Model Weights & Datasets

We upload all our DeTikZify models and datasets to the Hugging Face Hub (TikZero models are available here). However, please note that for the public release of the DaTikZv2 and DaTikZv3 datasets, we had to remove a considerable portion of TikZ drawings originating from arXiv, as the arXiv non-exclusive license does not permit redistribution. We do, however, release our dataset creation scripts and encourage anyone to recreate the full version of DaTikZ themselves.

Citation

If DeTikZify and TikZero have been beneficial for your research or applications, we kindly request you to acknowledge this by citing them as follows:

@inproceedings{belouadi2024detikzify,
    title={{DeTikZify}: Synthesizing Graphics Programs for Scientific Figures and Sketches with {TikZ}},
    author={Jonas Belouadi and Simone Paolo Ponzetto and Steffen Eger},
    booktitle={The Thirty-eighth Annual Conference on Neural Information Processing Systems},
    year={2024},
    url={https://openreview.net/forum?id=bcVLFQCOjc}
}
@inproceedings{belouadi2025tikzero,
    title={{TikZero}: Zero-Shot Text-Guided Graphics Program Synthesis},
    author={Belouadi, Jonas and Ilg, Eddy and Keuper, Margret and Tanaka, Hideki and Utiyama, Masao and Dabre, Raj and Eger, Steffen and Ponzetto, Simone},
    booktitle={Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV)},
    month={October},
    year={2025},
    pages={17793-17806},
    url={https://openaccess.thecvf.com/content/ICCV2025/html/Belouadi_TikZero_Zero-Shot_Text-Guided_Graphics_Program_Synthesis_ICCV_2025_paper.html}
}

Acknowledgments

The implementation of the DeTikZify model architecture is based on LLaVA and AutomaTikZ (v1), and Idefics 3 (v2). Our MCTS implementation is based on VerMCTS. The TikZero architecture draws inspiration from Flamingo and LLaMA 3.2-Vision.

Nearby in the ranking
Similar items