๐ญ๐ฅ;๐๐ซ ๐ฅ๐ฅ๐ฆ๐๐๐ ๐๐จ๐ฆ๐ฉ๐ซ๐๐ฌ๐ฌ๐๐ฌ ๐ข๐ฆ๐๐ ๐๐ฌ ๐ข๐ง๐ญ๐จ ๐ฅ๐๐ง๐ ๐ฎ๐๐ ๐, ๐ง๐จ๐ญ ๐ฉ๐ข๐ฑ๐๐ฅ๐ฌ. ๐ ๐ฏ๐ข๐ฌ๐ข๐จ๐ง ๐ฆ๐จ๐๐๐ฅ ๐ญ๐ฎ๐ซ๐ง๐ฌ ๐ญ๐ก๐ ๐ข๐ฆ๐๐ ๐ ๐ข๐ง๐ญ๐จ ๐ ๐๐จ๐ฆ๐ฉ๐๐๐ญ ๐๐๐๐ ๐๐๐ฌ๐๐ซ๐ข๐ฉ๐ญ๐ข๐จ๐ง.
This week, a meme made the rounds about a young prodigy inventing a new way to compress photos. The idea behind it: derive the content of the image with a multimodal #vision-language model, then store this instead of the image. And when you want to view it, an #image-generation model recreates the content.
Simple. ๐๐ง๐ ๐ญ๐จ๐ญ๐๐ฅ๐ฅ๐ฒ ๐๐๐๐๐.
Running #JPEG with a quality setting 10 looks like archival preservation in comparison.
I saw the meme several times in my stream. Instead of laughing and getting back to work, I did the obvious thing: I built it.
Meet #llmPEG.
You get a tool for compression (driven by #Qwen-VL inside #ollama) and decompression (either #ComfyUI or the image-gen skill from #codex).
After the initial prototype was working, I did some refinement of the prompts with a GAN-ish style of loop: until we had – with the given metric – a sufficiently fitting reproduction.
Please don’t ask about wall-clock performance.
Compression: ~20 seconds.
Decompression: ~30 seconds.
But the compression rate! Always at least 100:1, if not better: check this page with examples: https://marcelpetrick.github.io/llmPEG/expanded.html
๐๐ญ ๐๐ข๐ซ๐ฌ๐ญ ๐ข๐ญ ๐ฐ๐๐ฌ ๐ ๐ฆ๐๐ฆ๐, ๐ง๐จ๐ฐ ๐ข๐ญ ๐ข๐ฌ ๐ ๐ญ๐จ๐จ๐ฅ ๐
Source code, if you want to run it yourself and/or contribute: https://github.com/marcelpetrick/llmPEG/
Video: